OpacityMask QML Type
ソース項目を別の項目で覆い隠します。詳細...
| Import Statement: | import Qt5Compat.GraphicalEffects |
| Since: | QtGraphicalEffects 1.0 |
| Inherits: |
プロパティ
- cached : bool
- invert : bool
- maskSource : variant
- source : variant
詳細な説明
注: MultiEffect コンポーネントは 、パフォーマンス面でいくつかの利点を持つマスク効果を提供します。新規のコードでは、QtのGraphical Effects を使用する代わりに、このコンポーネントの利用を検討すべきです。
| ソース | MaskSource | 適用されるエフェクト |
|---|---|---|
|
|
|
例
以下の例は、このエフェクトを適用する方法を示しています。
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
}
Image {
id: mask
source: "images/butterfly.png"
sourceSize: Qt.size(parent.width, parent.height)
smooth: true
visible: false
}
OpacityMask {
anchors.fill: bug
source: bug
maskSource: mask
}
}プロパティのドキュメント
cached : bool
このプロパティを使用すると、エフェクトの出力ピクセルをキャッシュして、レンダリング性能を向上させることができます。
ソースまたはエフェクトのプロパティが変更されるたびに、キャッシュ内のピクセルを更新する必要があります。エフェクトの出力を保存するために追加のメモリバッファが必要となるため、メモリ消費量が増加します。
ソースやエフェクトのプロパティがアニメーション化される場合は、キャッシュを無効にすることをお勧めします。
デフォルトでは、このプロパティは「false 」に設定されています。
注: たとえば、maskSource をエフェクトの親に設定するなど、エフェクトが自分自身を含めるようにすることは サポートされていません。
invert : bool
このプロパティは、sourceMask のアルファ値の挙動を制御します。
このプロパティが「false 」の場合、結果の不透明度は、ソースのアルファ値にマスクのアルファ値を乗じた値、As * Am となります。
このプロパティが `true` の場合、結果の不透明度は、ソースのアルファ値にマスクのアルファ値の逆数を掛けた値になります(As * (1 - Am) )。
デフォルトはfalse です。
maskSource : variant
このプロパティは、マスクとして使用されるアイテムを定義します。マスクアイテムは中間ピクセルバッファにレンダリングされ、その結果から得られるアルファ値に基づいて、ソースアイテムのピクセルが画面上で表示されるかどうかが決定されます。
| オリジナル | マスク | 適用された効果 |
|---|---|---|
|
|
|
source : variant
このプロパティは、マスクの対象となるソース項目を定義します。
注: エフェクトをその親に設定するなどして、エフェクト自体をソースに含めることはサポートされていません。
© 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.


