InnerShadow QML Type
Erzeugt einen farbigen und unscharfen Schatten innerhalb der Quelle. Mehr...
| Import Statement: | import Qt5Compat.GraphicalEffects |
| Since: | QtGraphicalEffects 1.0 |
| Inherits: |
Eigenschaften
- cached : bool
- color : color
- fast : bool
- horizontalOffset : real
- radius : real
- samples : int
- source : variant
- spread : real
- verticalOffset : real
Ausführliche Beschreibung
Standardmäßig erzeugt der Effekt ein hochwertiges Schattenbild, wodurch die Darstellungsgeschwindigkeit des Schattens möglicherweise nicht die höchstmögliche ist. Die Darstellungsgeschwindigkeit wird insbesondere dann verringert, wenn die Schattenkanten stark weichgezeichnet sind. Für Anwendungsfälle, die eine schnellere Darstellungsgeschwindigkeit erfordern und bei denen die höchstmögliche visuelle Qualität nicht erforderlich ist, kann die Eigenschaft „ fast “ auf „true“ gesetzt werden.
| Quelle | Effekt angewendet |
|---|---|
|
|
Hinweis: Dieser Effekt ist bei Ausführung mit OpenGL verfügbar.
Beispiel
Das folgende Beispiel zeigt, wie der Effekt angewendet wird.
import QtQuick
import Qt5Compat.GraphicalEffects
Item {
width: 300
height: 300
Rectangle {
anchors.fill: parent
}
Image {
id: butterfly
source: "images/butterfly.png"
sourceSize: Qt.size(parent.width, parent.height)
smooth: true
visible: false
}
InnerShadow {
anchors.fill: butterfly
radius: 8.0
samples: 16
horizontalOffset: -3
verticalOffset: 3
color: "#b0000000"
source: butterfly
}
}Dokumentation der Eigenschaften
cached : bool
Mit dieser Eigenschaft können die Ausgangspixel 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 Quell- oder Effekteigenschaften animiert werden.
Standardmäßig ist die Eigenschaft auf „ false “ gesetzt.
color : color
Diese Eigenschaft legt den RGBA-Farbwert fest, der für den Schatten verwendet wird.
Standardmäßig ist die Eigenschaft auf „ "black" “ gesetzt.
| Beispiele für die Ausgabe mit unterschiedlichen Farbwerten | ||
|---|---|---|
|
|
|
| color: #000000 | color: #ffffff | Farbe: #ff0000 |
| radius: 16 | radius: 16 | radius: 16 |
| samples: 24 | samples: 24 | samples: 24 |
| horizontalOffset: 0 | horizontalOffset: 0 | horizontalOffset: 0 |
| verticalOffset: 0 | verticalOffset: 0 | verticalOffset: 0 |
| spread: 0,2 | spread: 0,2 | spread: 0,2 |
fast : bool
Diese Eigenschaft legt den Weichzeichnungsalgorithmus fest, der zur Erzeugung der Weichheit des Effekts verwendet wird. Wenn dieser Wert auf „true“ gesetzt wird, wird der schnelle Algorithmus aktiviert; bei „false“ wird ein Ergebnis höherer Qualität erzielt.
Standardmäßig ist die Eigenschaft auf „ false “ eingestellt.
| Beispiele für die Ausgabe mit unterschiedlichen „fast“-Werten | ||
|---|---|---|
|
| |
| „fast“: „false“ | „fast“: „true“ | |
| radius: 16 | radius: 16 | |
| samples: 24 | samples: 24 | |
| color: #000000 | color: #000000 | |
| horizontalOffset: 0 | horizontalOffset: 0 | |
| verticalOffset: 0 | verticalOffset: 0 | |
| spread: 0,2 | spread: 0,2 |
horizontalOffset : real
Die Eigenschaften „HorizontalOffset“ und „ verticalOffset “ legen den Versatz des gerenderten Schattens im Verhältnis zur Position des „ InnerShadow “-Elements fest. Häufig wird das „ InnerShadow “-Element so verankert, dass es das Quellelement ausfüllt. Sind in diesem Fall die Eigenschaften „HorizontalOffset“ und „ verticalOffset “ auf 0 gesetzt, wird der Schatten vollständig innerhalb des Quellelements gerendert. Durch Ändern der Versatzeigenschaften kann der Schatten relativ zum Quellelement positioniert werden.
Die Werte reichen von -inf bis inf. Standardmäßig sind die Eigenschaften auf „ 0 “ gesetzt.
| Ausgabebeispiele mit unterschiedlichen „horizontalOffset“-Werten | ||
|---|---|---|
|
|
|
| horizontalOffset: -20 | horizontalOffset: 0 | horizontalOffset: 20 |
| radius: 16 | radius: 16 | radius: 16 |
| samples: 24 | samples: 24 | samples: 24 |
| color: #000000 | color: #000000 | color: #000000 |
| verticalOffset: 0 | verticalOffset: 0 | verticalOffset: 0 |
| spread: 0 | spread: 0 | spread: 0 |
radius : real
Der Radius bestimmt die Weichheit des Schattens. Ein größerer Radius führt dazu, dass die Kanten des Schattens unschärfer erscheinen.
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 | ||
|---|---|---|
|
|
|
| radius: 0 | radius: 6 | radius: 12 |
| samples: 24 | samples: 24 | samples: 24 |
| color: #000000 | color: #000000 | color: #000000 |
| horizontalOffset: 0 | horizontalOffset: 0 | horizontalOffset: 0 |
| verticalOffset: 0 | verticalOffset: 0 | verticalOffset: 0 |
| spread: 0 | spread: 0 | spread: 0 |
samples : int
Diese Eigenschaft legt fest, wie viele Abtastwerte pro Pixel bei der Berechnung der Kantenweichzeichnung 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. Wenn der Radius beispielsweise zwischen 0,0 und 4,0 animiert wird, sollte die Anzahl der Abtastwerte auf 8 gesetzt werden.
Der Wert reicht von 0 bis 32. Standardmäßig ist die Eigenschaft auf „ 0 “ gesetzt.
Diese Eigenschaft ist nicht für die Animation vorgesehen. Eine Änderung dieser Eigenschaft kann dazu führen, dass die zugrunde liegenden OpenGL-Shader neu kompiliert werden.
Wenn die Eigenschaft „ fast “ auf „true“ gesetzt ist, hat diese Eigenschaft keine Auswirkung.
source : variant
Diese Eigenschaft definiert das Quellelement, das als Quelle für den generierten Schatten verwendet werden soll.
Hinweis: Es wird nicht unterstützt, dass der Effekt sich selbst einbezieht, beispielsweise durch Setzen der Quelle auf das übergeordnete Element des Effekts.
spread : real
Diese Eigenschaft legt fest, wie stark die Schattenfarbe an den Rändern der Lichtquelle verstärkt wird.
Der Wert liegt zwischen 0,0 und 1,0. Standardmäßig ist die Eigenschaft auf „ 0.5 “ eingestellt.
| Ausgabebeispiele mit unterschiedlichen Ausbreitungswerten | ||
|---|---|---|
|
|
|
| spread: 0,0 | spread: 0,3 | spread: 0,5 |
| radius: 16 | radius: 16 | radius: 16 |
| samples: 24 | samples: 24 | samples: 24 |
| color: #000000 | color: #000000 | color: #000000 |
| horizontalOffset: 0 | horizontalOffset: 0 | horizontalOffset: 0 |
| verticalOffset: 0 | verticalOffset: 0 | verticalOffset: 0 |
verticalOffset : real
Die Eigenschaften „HorizontalOffset“ und „VerticalOffset“ legen den Versatz des gerenderten Schattens gegenüber der Position des „ InnerShadow “-Elements fest. Häufig wird das „ InnerShadow “-Element so verankert, dass es das Quellelement ausfüllt. Sind in diesem Fall die Eigenschaften „HorizontalOffset“ und „verticalOffset“ auf 0 gesetzt, wird der Schatten vollständig innerhalb des Quellelements gerendert. Durch Ändern der Versatzeigenschaften kann der Schatten relativ zum Quellelement positioniert werden.
Die Werte reichen von -inf bis inf. Standardmäßig sind die Eigenschaften auf „ 0 “ gesetzt.
| Ausgabebeispiele mit unterschiedlichen „ horizontalOffset “-Werten | ||
|---|---|---|
|
|
|
| horizontalOffset: -20 | horizontalOffset: 0 | horizontalOffset: 20 |
| radius: 16 | radius: 16 | radius: 16 |
| samples: 24 | samples: 24 | samples: 24 |
| color: #000000 | color: #000000 | color: #000000 |
| vertikaler Versatz: 0 | vertikalerVersatz: 0 | vertikaler Versatz: 0 |
| spread: 0 | spread: 0 | spread: 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.















