Sur cette page

ZoomBlur QML Type

Applique un effet de flou directionnel vers le centre des éléments source. En savoir plus…

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

Item

Propriétés

Description détaillée

Cet effet donne l'impression que l'élément source se déplace vers le point central dans la direction Z ou que la caméra effectue un zoom rapide. D'autres effets de flou de mouvement sont disponibles : DirectionalBlur et RadialBlur.

SourceEffet appliqué

Coléoptère noir sur une feuille

Coléoptère avec effet de flou de zoom

Remarque : cet effet est disponible lors de l'exécution avec OpenGL.

Exemple

L'exemple suivant montre comment appliquer l'effet.

import QtQuick
import Qt5Compat.GraphicalEffects

Item {
    width: 300
    height: 300

    Image {
        id: butterfly
        source: "images/bug.jpg"
        sourceSize: Qt.size(parent.width, parent.height)
        smooth: true
        visible: false
    }

    ZoomBlur {
        anchors.fill: butterfly
        source: butterfly
        samples: 24
        length: 48
    }
}

Documentation sur les propriétés

cached : bool

Cette propriété permet de mettre en cache les pixels de sortie de l'effet afin d'améliorer les performances de rendu.

Chaque fois que les propriétés de la source ou de l'effet sont modifiées, les pixels contenus dans le cache doivent être mis à jour. La consommation de mémoire augmente, car un tampon de mémoire supplémentaire est nécessaire pour stocker la sortie de l'effet.

Il est recommandé de désactiver le cache lorsque les propriétés de la source ou de l’effet sont animées.

Par défaut, cette propriété est définie sur « false ».

horizontalOffset : real

Ces propriétés définissent un décalage en pixels du point central de la direction du flou.

Les valeurs vont de -inf à inf. Par défaut, ces propriétés sont définies sur 0.

Exemples de résultats avec différentes valeurs de `horizontalOffset`

Décalage central du flou vers la droite

Faire un flou centré sur l'origine

Décalage du centre du flou vers la gauche

horizontalOffset : 100,0 horizontalOffset : 0,0 horizontalOffset : -100,0
samples: 24samples: 24samples: 24
length: 32length: 32length: 32
verticalOffset: 0verticalOffset: 0verticalOffset: 0

length : real

Cette propriété définit l'amplitude maximale de mouvement perçue pour chaque pixel. Cette amplitude est plus faible près du centre et atteint la valeur spécifiée au niveau des bords.

La qualité du flou dépend de la propriété « samples ». Si la valeur de « length » est élevée, davantage d’échantillons sont nécessaires pour maintenir une qualité visuelle élevée.

La valeur est comprise entre 0,0 et inf. Par défaut, la propriété est définie sur « 0.0 » (pas de flou).

Exemples de résultats avec différentes valeurs de longueur

Pas de flou dû au zoom

Flou modéré dû au zoom

Flou important dû au zoom

longueur : 0,0 longueur : 32,0 length : 48,0
samples: 24samples: 24samples: 24
horizontalOffset: 0horizontalOffset: 0horizontalOffset: 0
verticalOffset: 0verticalOffset: 0verticalOffset: 0

samples : int

Cette propriété définit le nombre d'échantillons prélevés par pixel lors du calcul du flou. Une valeur plus élevée offre une meilleure qualité, mais ralentit le rendu.

Cette propriété n'est pas destinée à être animée. La modification de cette propriété peut entraîner la recompilation des shaders OpenGL sous-jacents.

Les valeurs autorisées sont comprises entre 0 et inf (le maximum pratique dépend du GPU). Par défaut, la propriété est définie sur « 0 » (aucun échantillon).

source : variant

Cette propriété définit l'élément source qui va être flouté.

Remarque : il n'est pas possible de faire en sorte que l'effet s'applique à lui-même, par exemple en définissant la source comme étant le parent de l'effet.

transparentBorder : bool

Cette propriété définit le comportement du flou à proximité des bords de l'élément, où le flou des pixels est influencé par les pixels situés à l'extérieur des bords de la source.

Si la propriété est définie sur « true », les pixels situés en dehors de la source sont considérés comme transparents, ce qui est similaire à l'extension « clamp-to-border » d'OpenGL. Le flou s'étend légèrement au-delà de la zone de l'élément concerné.

Si la propriété est définie sur « false », les pixels situés en dehors de la source sont interprétés comme contenant la même couleur que les pixels situés au bord de l’élément, ce qui est similaire au comportement « clamp-to-edge » d’OpenGL. Le flou ne s’étend pas en dehors de la zone de l’élément d’effet.

Par défaut, la propriété est définie sur « false ».

verticalOffset : real

Ces propriétés définissent un décalage en pixels pour le point central de la direction du flou.

Les valeurs vont de -inf à inf. Par défaut, ces propriétés sont définies sur 0.

Exemples de résultats avec différentes valeurs d'horizontalOffset

Décalage central du flou vers la droite

Faire un flou centré sur l'origine

Décalage du centre du flou vers la gauche

horizontalOffset: 100,0 horizontalOffset: 0,0 horizontalOffset: -100,0
samples: 24samples: 24samples: 24
length: 32length: 32length: 32
décalage vertical : 0décalage vertical : 0décalage vertical : 0

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