Auf dieser Seite

MaskedBlur QML Type

Wendet einen Unschärfeeffekt mit variierender Intensität an. Mehr...

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

Item

Eigenschaften

Ausführliche Beschreibung

Der „MaskedBlur“-Effekt macht das Bild weicher, indem er es verwischt. Die Intensität der Unschärfe lässt sich für jedes Pixel mithilfe von „ maskSource “ steuern, sodass einige Bereiche des Ausgangsbildes stärker verwischt werden als andere.

Das Ausführen von Unschärfeeffekten in Echtzeit ist rechenintensiv. Eine gaussische Vollbildunschärfe mit selbst einer moderaten Anzahl von Samples läuft nur auf High-End-Grafikhardware mit 60 fps.

QuelleMaskSourceAngewandter Effekt

Schwarzer Käfer auf einem Blatt

Unschärfeintensitätsmaske mit Farbverlauf

Käfer mit variabler Unschärfeintensität

Hinweis: Dieser Effekt ist bei Verwendung von OpenGL verfügbar.

Beispiel

Das folgende Beispiel zeigt, wie der Effekt angewendet wird.

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

Dokumentation zu den Eigenschaften

cached : alias

Mit dieser Eigenschaft können die Ausgabepixel des Effekts zwischengespeichert werden, um die Rendering-Leistung zu verbessern. Bei jeder Änderung der Quell- oder Effekteigenschaften müssen die Pixel im Cache aktualisiert werden. Der Speicherverbrauch steigt, da für die Speicherung der Effekt-Ausgabe ein zusätzlicher Speicherpuffer benötigt wird.

Es wird empfohlen, den Cache zu deaktivieren, wenn die Eigenschaften der Quelle oder des Effekts animiert werden.

Standardmäßig ist die Eigenschaft auf „ false “ gesetzt.

maskSource : alias

Diese Eigenschaft legt das Element fest, das die endgültige Intensität der Unschärfe steuert. Der Wert des Alpha-Kanals der „maskSource“ bestimmt den tatsächlichen Unschärferadius, der zum Weichzeichnen des entsprechenden Quellpixels verwendet wird.

Undurchsichtige „maskSource“-Pixel erzeugen eine Unschärfe mit dem in „ radius “ angegebenen Wert, während transparente Pixel die Unschärfe vollständig unterdrücken. Halbtransparente „maskSource“-Pixel erzeugen eine Unschärfe mit einem Radius, der entsprechend dem Transparenzgrad des Pixels interpoliert wird.

radius : alias

Diese Eigenschaft legt den Abstand der benachbarten Pixel fest, die die Unschärfe eines einzelnen Pixels beeinflussen. Ein größerer Radius verstärkt den Unschärfeeffekt.

Je nach Radiuswert sollte der Wert von „ samples “ ausreichend groß gewählt werden, um die Bildqualität zu gewährleisten.

Der Wert reicht von 0,0 (keine Unschärfe) bis unendlich. Standardmäßig ist die Eigenschaft auf „ 0.0 “ (keine Unschärfe) eingestellt.

Ausgabebeispiele mit unterschiedlichen Radiuswerten

Keine Unschärfe angewendet

Leichte Unschärfe durch die Maske

Starke, maskierte Unschärfe

radius: 0 Radius: 8 radius: 16
samples: 25samples: 25samples: 25

Hinweis: Die Eigenschaft „ radius “ dient zur Berechnung der Größe des Offscreen-Puffers des Effekts. Höhere Werte führen zu größeren Speicherzuweisungen.

samples : alias

Diese Eigenschaft legt fest, wie viele Abtastwerte pro Pixel bei der Berechnung der Unschärfe verwendet werden. Ein höherer Wert führt zu einer besseren Qualität, verlangsamt jedoch die Darstellung.

Idealerweise sollte dieser Wert doppelt so groß sein wie der höchste erforderliche Radiuswert plus 1. Wenn der Radius beispielsweise zwischen 0,0 und 4,0 animiert wird, sollte der Wert für „Samples“ auf 9 gesetzt werden.

Standardmäßig ist die Eigenschaft auf „ 9 “ gesetzt.

Diese Eigenschaft ist nicht für Animationen vorgesehen. Eine Änderung dieser Eigenschaft kann dazu führen, dass die zugrunde liegenden OpenGL-Shader neu kompiliert werden.

source : alias

Diese Eigenschaft definiert das Quellelement, das unscharf gestellt werden soll.

Hinweis: Es wird nicht unterstützt, den Effekt auf sich selbst anzuwenden, beispielsweise durch Festlegen von „source“ auf das übergeordnete Element des Effekts.

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