RecursiveBlur QML Type
Applique un flou à plusieurs reprises, créant ainsi un effet de flou prononcé. En savoir plus…
| Import Statement: | import Qt5Compat.GraphicalEffects |
| Since: | QtGraphicalEffects 1.0 |
| Inherits: |
Propriétés
Description détaillée
L'effet RecursiveBlur adoucit l'image en la rendant floue grâce à un algorithme qui utilise une boucle de rétroaction récursive pour flouter la source plusieurs fois. Cet effet peut donner des résultats plus flous que GaussianBlur ou FastBlur, mais le résultat est produit de manière asynchrone et prend plus de temps.
| Source | Effet appliqué |
|---|---|
|
|
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: 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
}
}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 du 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 la mise en cache lorsque les propriétés de la source ou de l’effet sont animées.
Par défaut, la propriété est définie sur « false ».
loops : int
Cette propriété définit le nombre d’itérations de flou qui seront effectuées sur la source. Lorsque la propriété est modifiée, le processus de flou itératif démarre. Si la valeur est diminuée ou si elle passe de zéro à une valeur non nulle, un instantané de la source est pris. Cet instantané sert de point de départ au processus.
La boucle d’itération tente de s’exécuter aussi rapidement que possible. La vitesse peut être limitée par le VSYNC, par le temps nécessaire à une étape de flou, ou par les deux. Il peut parfois être souhaitable d’effectuer le flou à un rythme plus lent. Dans ce cas, il peut être pratique de contrôler la propriété à l’aide d’une animation qui augmente la valeur.
La valeur est comprise entre 0 et inf. Par défaut, la propriété est définie sur 0.
| Exemples de résultats avec différentes valeurs de boucles | ||
|---|---|---|
|
|
|
| loops : 4 | loops : 20 | loops : 70 |
| radius: 7,5 | radius: 7,5 | radius: 7,5 |
progress : real
Cette propriété indique la progression du processus asynchrone de floutage de la source, de 0,0 (aucun floutage) à 1,0 (terminé).
radius : real
Cette propriété définit la distance entre les pixels voisins qui influencent le flou appliqué à chaque pixel. Un rayon plus grand offre une meilleure qualité, mais ralentit le rendu.
Remarque: la valeur du rayon dans cet effet n'est pas destinée à être modifiée ou animée fréquemment. La bonne façon de l'utiliser consiste à définir la valeur appropriée et à la conserver inchangée pendant toute la durée de la séquence de flou itérative.
La valeur varie de (aucun flou) à 16,0 (niveau de flou maximal). Par défaut, la propriété est définie sur « 0.0 » (aucun flou).
| Exemples de résultats avec différentes valeurs de rayon | ||
|---|---|---|
|
|
|
| rayon : 2,5 | rayon : 4,5 | rayon : 7,5 |
| loops: 20 | loops: 20 | loops: 20 |
Remarque : la propriété « radius » sert à calculer la taille du tampon hors écran de l'effet. Des valeurs plus élevées entraîneront des allocations de mémoire plus importantes.
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 près des bords de l'élément, là où le flou des pixels est influencé par les pixels situés en dehors 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é par l'effet.
Si la propriété est définie sur « false », les pixels situés à l’extérieur de la source sont interprétés comme ayant 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 au-delà de la zone de l’élément d’effet.
Par défaut, la propriété est définie sur « false ».
© 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.









