Qt-QML (デスクトップ用) でシノプティック パネルを設計しようとしています。インターフェイスは固定解像度で使用する必要があるため、さまざまなグラフィック要素 (パイプ、パイプ曲線、パイプ T、ポンプ、バルブなど) を作成するために PNG 画像を使用することを好みます。問題は、さまざまなコンポーネントの塗りつぶしの色を変更する方法です: ユーザーが色を選択できるようにしたいのですが (実際のシナリオでは、使用できる液体が異なります)、QML でそれを行う方法が見つかりません。PNG コンポーネントを背景として使用し、SVG マスクでマスクされた Rectangle を描画することを考えました。私の PNG の上に 1 つの色 (黒と透明) の SVG 画像を配置し、QML でこれの色のプロパティを変更する方法がないかどうか疑問に思っています。誰にもアイデアはありますか?本当にありがとう。
( EDITより良い説明)
問題は私が説明できるよりも複雑です。特定のプロパティを持ついくつかの QML コンポーネントを作成しました。各コンポーネントには透明な背景画像 (PNG) があります。今、私が必要としているのは、メインの QML が特定の状態 (Qt アプリケーションによって設定された状態) にあるときに、可変色「x」を使用して PNG 画像の定義された領域を塗りつぶすことです。私の問題は、QML から PNG/SVG の領域を可変色で塗りつぶす方法ですか? 必要なのは、「背景」画像を配置し、この上に「Rectangle」コンポーネント (色「x」) を適用し、最後にこの Rectangle にマスクを配置して、背景を維持しながら表示する必要がある領域を定義することです (前の下の画像)。私は今自分自身をよりよく説明したことを願っています。
(解決策を編集) 何時間も経った後、qt-components MaskedItem を使用する以外の解決策を見つけることができませんでした。以下に、私が使用したソリューションを投稿しました。興味を持っていただきありがとうございます。