問題タブ [custom-painting]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
flutter - CustomPaint drawLine は、描画された線に透明度を適用できません
アルファチャンネルを使用して、線CustomPaint
の色に透明度を適用しようとしていましCanvas.drawLine()
た。
問題
ただし、アルファ チャネルの色の微調整は結果に影響しません。たとえば、次のコードでは 100% 不透明な白い線が表示されます。
回避策
drawRect
透明な線を得るには、1 ピクセル幅で描画する必要があります。
質問
これは設計によるものですか?
flutter - flutter: CustomPaint 描画のレイヤーが互いに混ざり合うのではなく、互いに補完し合うようにします
1 つのグラフに 2 つのレイヤーのグラフを描画していますCustomPaint
。1 つ目は、2 つ目のレイヤーの半分以上を塞ぎます。
問題
現在、最初のデータをペイントし、次に 2 つPaint
の を使用して 2 番目のデータをそのblendMode
セットでペイントします。
これにより、2 つのデータのオーバーレイが作成され、ブレンドされます。しかし、ブレンドは必要ありません。違いの領域を 2 番目Paint
の 、つまり補完的な合成ビューを使用してペイントするだけです。
パフォーマンスの面では、遮られた部分の描画を避けるために、ブレンドに内部最適化があるかどうかはわかりません。
参考画像
これらのデータ グラフはすべてブレンドされていることに注意してください。ただし、オーバーラップした部分はパフォーマンスのためにまったく描画されません。
試み
新しいパスを使用して違いを描画することもできますが、これが最も簡単な方法かどうかはわかりません。
確認RepaintBoundary
しましたが、これはまれなデータ変更を処理するウィジェットであり、ここで必要なものではありません。
同様Overlay
にスタンドアロンのウィジェットのように見えるので、 に合わせる方法がわかりませんCustomPaint
。
質問
必要なオクルージョンを実現する標準的な方法はありますか?
flutter - 子 customPaint がクリックできない
キャンバスを使用してじょうごのダイアグラムを描画しますが、クリックできません。混乱しています。