MaskedBlur QML Type
Aplica un efecto de desenfoque con una intensidad variable. Más...
| Import Statement: | import Qt5Compat.GraphicalEffects |
| Since: | QtGraphicalEffects 1.0 |
| Inherits: |
Propiedades
- cached : alias
- maskSource : alias
- radius : alias
- samples : alias
- source : alias
Descripción detallada
El efecto MaskedBlur suaviza la imagen desenfocándola. La intensidad del desenfoque puede controlarse para cada píxel mediante maskSource, de modo que algunas partes de la fuente se desenfocan más que otras.
Realizar el desenfoque en directo es una operación costosa. El desenfoque gaussiano a pantalla completa, incluso con un número moderado de muestras, sólo funcionará a 60 fps en hardware gráfico de gama alta.
| Fuente | MáscaraFuente | Efecto aplicado |
|---|---|---|
|
|
|
Nota: Este efecto está disponible cuando se ejecuta con OpenGL.
Ejemplo
El siguiente ejemplo muestra cómo aplicar el efecto.
import QtQuick import Qt5Compat.GraphicalEffects Item { width: 300 height: 300 Image { id: bug source: "images/bug.jpg" sourceSize: Qt.size(parent.width, parent.height) smooth: true visible: false } LinearGradient { id: mask anchors.fill: bug gradient: Gradient { GradientStop { position: 0.2; color: "#ffffffff" } GradientStop { position: 0.5; color: "#00ffffff" } } start: Qt.point(0, 0) end: Qt.point(300, 0) visible: false } MaskedBlur { anchors.fill: bug source: bug maskSource: mask radius: 16 samples: 24 } }
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.
maskSource : alias
Esta propiedad define el elemento que controla la intensidad final del desenfoque. El valor del canal alfa del píxel de maskSource define el radio de desenfoque real que se va a utilizar para desenfocar el píxel de origen correspondiente.
Los píxeles opacos de maskSource producen un desenfoque con el valor especificado radius, mientras que los píxeles transparentes suprimen el desenfoque por completo. Los píxeles semitransparentes de maskSource producen desenfoque con un radio que se interpola según el nivel de transparencia del píxel.
radius : alias
Esta propiedad define la distancia de los píxeles vecinos que afectan al desenfoque de un píxel individual. Un radio mayor aumenta el efecto de desenfoque.
Dependiendo del valor del radio, el valor de samples debe ser lo suficientemente grande como para garantizar la calidad visual.
El valor oscila entre 0,0 (sin desenfoque) e inf. Por defecto, la propiedad está ajustada a 0.0 (sin desenfoque).
| Ejemplos de salida con diferentes valores de radio | ||
|---|---|---|
|
|
|
| radio: 0 | radio: 8 | radio: 16 |
| samples: 25 | samples: 25 | samples: 25 |
samples : alias
Esta propiedad define cuántas muestras se toman por píxel cuando se realiza el cálculo del desenfoque. Un valor mayor produce mejor calidad, pero es más lento de renderizar.
Idealmente, este valor debería ser el doble del valor más alto del radio requerido más 1, por ejemplo, si el radio se anima entre 0.0 y 4.0, las muestras deberían establecerse en 9.
Por defecto, la propiedad se establece en 9.
Esta propiedad no está pensada para ser animada. Cambiar esta propiedad puede hacer que se recompilen los shaders OpenGL subyacentes.
source : alias
Esta propiedad define el elemento fuente que va a ser desenfocado.
Nota: No se admite que el efecto se incluya a sí mismo, por ejemplo estableciendo source como el padre del efecto.
© 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.





