Sur cette page

ThresholdMask QML Type

Masque l'élément source avec un autre élément et applique une valeur seuil. Plus d'informations...

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

Item

Propriétés

Description détaillée

Note : Le composant MultiEffect fournit un effet de masque avec quelques avantages en termes de performances. Pour les nouveaux codes, il devrait être considéré comme une alternative à l'utilisation de Qt Graphical Effects.

Le comportement du masque peut être contrôlé par la valeur threshold pour les pixels du masque.

SourceMaskSourceEffet appliqué

Exemple

L'exemple suivant montre comment appliquer l'effet.

import QtQuick
import Qt5Compat.GraphicalEffects

Item {
    width: 300
    height: 300

    Image {
        id: background
        anchors.fill: parent
        source: "images/checker.png"
        smooth: true
        fillMode: Image.Tile
    }

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

    Image {
        id: mask
        source: "images/fog.png"
        sourceSize: Qt.size(parent.width, parent.height)
        smooth: true
        visible: false
    }

    ThresholdMask {
        anchors.fill: bug
        source: bug
        maskSource: mask
        threshold: 0.4
        spread: 0.2
    }
}

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 une mémoire tampon 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, la propriété est définie sur false.

maskSource : variant

Cette propriété définit l'élément qui sera utilisé comme masque. L'élément du masque est rendu dans un tampon de pixels intermédiaire et les valeurs alpha du résultat sont utilisées pour déterminer la visibilité des pixels de l'élément source dans l'affichage.

OriginalMasqueEffet appliqué

Remarque : il n'est pas possible de laisser l'effet s'inclure lui-même, par exemple en définissant maskSource sur le parent de l'effet.

source : variant

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

Remarque : il n'est pas possible de laisser l'effet s'inclure lui-même, par exemple en définissant la source sur le parent de l'effet.

spread : real

Cette propriété définit la douceur des bords du masque à proximité de la valeur alpha threshold. La valeur 0,0 utilise normalement le masque avec le seuil spécifié. Des valeurs d'étalement plus élevées adoucissent la transition entre les pixels transparents du masque et les pixels opaques du masque en ajoutant des valeurs interpolées entre eux.

La valeur est comprise entre 0,0 (bord de masque net) et 1,0 (bord de masque lisse). Par défaut, la propriété est définie sur 0.0.

Exemples de sortie avec différentes valeurs d'étalement

écart : 0,0 étalement : 0.2 étalement : 0.8
threshold: 0.4threshold: 0.4threshold: 0.4

threshold : real

Cette propriété définit une valeur seuil pour les pixels du masque. Les pixels de masque dont la valeur alpha est inférieure à cette propriété sont utilisés pour masquer complètement les pixels correspondants de l'élément source. Les pixels du masque qui ont une valeur alpha supérieure sont utilisés pour afficher l'élément source à l'écran.

La valeur est comprise entre 0,0 (valeur alpha 0) et 1,0 (valeur alpha 255). Par défaut, la propriété est définie sur 0.0.

Exemples de sortie avec différentes valeurs de seuil

seuil : 0.0 seuil : 0.5 seuil : 0.7
spread: 0.2spread: 0.2spread: 0.2

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