Glow QML Type
Genera una imagen borrosa y coloreada de la fuente y la coloca detrás del original, dando la impresión de que la fuente brilla. Más...
| Import Statement: | import Qt5Compat.GraphicalEffects |
| Since: | QtGraphicalEffects 1.0 |
| Inherits: |
Propiedades
- cached : alias
- color : alias
- radius : alias
- samples : alias
- source : alias
- spread : alias
- transparentBorder : alias
Descripción detallada
| Fuente | Efecto aplicado |
|---|---|
|
|
Ejemplo
El siguiente ejemplo muestra cómo aplicar el efecto.
import QtQuick import Qt5Compat.GraphicalEffects Item { width: 300 height: 300 Rectangle { anchors.fill: parent color: "black" } Image { id: butterfly source: "images/butterfly.png" sourceSize: Qt.size(parent.width, parent.height) smooth: true visible: false } Glow { anchors.fill: butterfly radius: 8 color: "white" source: butterfly } }
Documentación de propiedades
cached : alias
Esta propiedad permite almacenar en caché los píxeles de salida del efecto para mejorar el rendimiento del renderizado.
Cada vez que se cambian las propiedades de la fuente o del efecto, los píxeles de la caché deben actualizarse. El consumo de memoria se incrementa, ya que se requiere un buffer extra de memoria para almacenar la salida del efecto.
Se recomienda desactivar la caché cuando se animen la fuente o las propiedades del efecto.
Por defecto, la propiedad está establecida en false.
color : alias
Esta propiedad define el valor de color RGBA que se utiliza para el resplandor.
Por defecto, la propiedad se establece en "white".
| Ejemplos de salida con diferentes valores de color | ||
|---|---|---|
|
|
|
| color: #ffffff | color: #00ff00 | color: #aa00ff00 #aa00ff00 |
| radius: 8 | radius: 8 | radius: 8 |
| samples: 17 | samples: 17 | samples: 17 |
| spread: 0.5 | spread: 0.5 | spread: 0.5 |
radius : alias
El radio define la suavidad del resplandor. Un radio mayor hace que los bordes del resplandor parezcan más borrosos.
Dependiendo del valor del radio, el valor de samples debe ser lo suficientemente grande para garantizar la calidad visual.
El desenfoque ideal se consigue seleccionando samples y radius de forma que samples = 1 + radius * 2, como:
| Radio | Muestras |
|---|---|
| 0 (sin desenfoque) | 1 |
| 1 | 3 |
| 2 | 5 |
| 3 | 7 |
Por defecto, la propiedad está establecida en floor(samples/2).
| Ejemplos de salida con diferentes valores de radio | ||
|---|---|---|
|
|
|
| radio: 0 | radio: 6 | radio: 12 |
| samples: 25 | samples: 25 | samples: 25 |
| color: #ffffff | color: #ffffff | color: #ffffff |
| spread: 0 | spread: 0 | spread: 0 |
samples : alias
Esta propiedad define cuántas muestras se toman por píxel cuando se realiza el cálculo del desenfoque de suavizado de bordes. Un valor mayor produce mejor calidad, pero es más lento de renderizar.
Idealmente, este valor debería ser dos veces mayor que el valor más alto de radio requerido más uno, como:
| Radio | Muestras |
|---|---|
| 0 (sin desenfoque) | 1 |
| 1 | 3 |
| 2 | 5 |
| 3 | 7 |
Por defecto, la propiedad se establece en 9.
Esta propiedad no está pensada para ser animada. Cambiar esta propiedad hará que se recompilen los sombreadores OpenGL subyacentes.
source : alias
Esta propiedad define el elemento fuente que se va a utilizar como fuente para el resplandor generado.
Nota: No se admite que el efecto se incluya a sí mismo, por ejemplo, estableciendo la fuente como el padre del efecto.
spread : alias
Esta propiedad define cómo de grande es la parte del color del resplandor que se refuerza cerca de los bordes de la fuente.
Los valores van de 0.0 a 1.0. Por defecto, la propiedad está establecida en 0.5.
Nota: La implementación está optimizada para valores de dispersión medios y bajos. Dependiendo de la fuente, los valores de dispersión cercanos a 1,0 pueden producir resultados visualmente asimétricos.
| Ejemplos de salida con diferentes valores de dispersión | ||
|---|---|---|
|
|
|
| dispersión: 0,0 | dispersión: 0,5 | dispersión: 1,0 |
| radius: 8 | radius: 8 | radius: 8 |
| samples: 17 | samples: 17 | samples: 17 |
| color: #ffffff | color: #ffffff | color: #ffffff |
transparentBorder : alias
Esta propiedad determina si el efecto tiene o no un borde transparente.
Cuando se establece en true, el exterior del elemento se rellena con un borde transparente, haciendo que el muestreo fuera de la textura de origen utilice la transparencia en lugar de los píxeles del borde. Sin esta propiedad, una imagen que tenga bordes opacos no obtendrá un borde difuminado.
Por defecto, la propiedad está establecida en true. Establézcala en false si la fuente ya tiene un borde transparente para que el desenfoque sea un poco más rápido.
En el siguiente fragmento, el rectángulo de la izquierda tiene bordes transparentes y bordes difuminados, mientras que el rectángulo de la derecha no los tiene.
import QtQuick import Qt5Compat.GraphicalEffects Rectangle { width: 180 height: 100 Row { anchors.centerIn: parent spacing: 16 Rectangle { id: normalRect width: 60 height: 60 color: "black" radius: 10 layer.enabled: true layer.effect: Glow { samples: 15 color: "blue" transparentBorder: false } } Rectangle { id: transparentBorderRect width: 60 height: 60 color: "black" radius: 10 layer.enabled: true layer.effect: Glow { samples: 15 color: "blue" transparentBorder: true } } } }

© 2026 The Qt Company Ltd. Documentation contributions included herein are the copyrights of their respective owners. The documentation provided herein is licensed under the terms of the GNU Free Documentation License version 1.3 as published by the Free Software Foundation. Qt and respective logos are trademarks of The Qt Company Ltd. in Finland and/or other countries worldwide. All other trademarks are property of their respective owners.










