En esta página

RecursiveBlur QML Type

Desenfoca repetidamente, proporcionando un fuerte efecto de desenfoque. Más...

Import Statement: import Qt5Compat.GraphicalEffects
Since: QtGraphicalEffects 1.0
Inherits:

Item

Propiedades

Descripción detallada

El efecto RecursiveBlur suaviza la imagen desenfocándola con un algoritmo que utiliza un bucle de retroalimentación recursivo para desenfocar la fuente varias veces. El efecto puede dar resultados más borrosos que GaussianBlur o FastBlur, pero el resultado se produce de forma asíncrona y tarda más tiempo.

FuenteEfecto 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
    }

    RecursiveBlur {
        anchors.fill: bug
        source: bug
        radius: 7.5
        loops: 50
    }
}

Documentación de propiedades

cached : bool

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.

loops : int

Esta propiedad define la cantidad de iteraciones de desenfoque que se van a realizar para la fuente. Cuando la propiedad cambia, se inicia el proceso de desenfoque iterativo. Si el valor disminuye o si el valor cambia de cero a distinto de cero, se toma una instantánea de la fuente. La instantánea se utiliza como punto de partida del proceso.

El bucle de iteración intenta ejecutarse lo más rápido posible. La velocidad puede estar limitada por el VSYNC o el tiempo necesario para un paso de desenfoque, o ambos. A veces puede ser deseable realizar el desenfoque con un ritmo más lento. En ese caso, puede ser conveniente controlar la propiedad con Animación que incrementa el valor.

El valor va de 0 a inf. Por defecto, la propiedad está establecida en 0.

Ejemplos de salida con diferentes valores de loops

bucles: 4 bucles: 20 bucles: 70
radius: 7.5radius: 7.5radius: 7.5

progress : real

Esta propiedad contiene el progreso del proceso asíncrono de desenfoque de la fuente, de 0.0 (nada desenfocado) a 1.0 (finalizado).

radius : real

Esta propiedad define la distancia de los píxeles vecinos que influyen en el desenfoque de los píxeles individuales. Un radio mayor proporciona mejor calidad, pero es más lento de renderizar.

Nota: El valor del radio en este efecto no está pensado para ser cambiado o animado frecuentemente. La forma correcta de utilizarlo es establecer el valor correcto y mantenerlo sin cambios durante toda la secuencia de desenfoque iterativo.

El valor oscila entre (sin desenfoque) y 16.0 (paso de desenfoque máximo). Por defecto, la propiedad está establecida en 0.0 (sin desenfoque).

Ejemplos de salida con diferentes valores de radio

radio: 2.5 radio 4.5 radio: 7.5
loops: 20loops: 20loops: 20

source : variant

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.

transparentBorder : bool

Esta propiedad define el comportamiento del desenfoque cerca de los bordes del elemento, donde el desenfoque del píxel se ve afectado por los píxeles fuera de los bordes de la fuente.

Si la propiedad se establece en true, los píxeles fuera de la fuente se interpretan como transparentes, lo que es similar a la extensión de sujeción a los bordes de OpenGL. El desenfoque se expande ligeramente fuera del área del elemento de efecto.

Si la propiedad está definida como false, se interpreta que los píxeles fuera de la fuente contienen el mismo color que los píxeles en el borde del elemento, lo que es similar al comportamiento de sujeción a borde de OpenGL. El desenfoque no se expande fuera del área del elemento de efecto.

Por defecto, la propiedad está establecida en false.

Ejemplos de salida con diferentes valores de transparentBorder

transparentBorder: false transparentBorder: true
loops: 20loops: 20
radius: 7.5radius: 7.5

© 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.