描画アプリケーション用のペイント バケツ ツールに取り組んでいます。
context.getImageData
キャンバス内のすべてのピクセルの色の値を調べるために使用しています。
ただし、キャンバスはデフォルトで白ですが、デフォルトではすべての rgba 値が 0 になっているようです。0,0,0
キャンバスが白であっても、黒にはRGBがあり、デフォルトのキャンバス画像データも同様であるため、ペイントバケツツールは黒で輪郭が描かれた形状では機能しません。
だから私の質問は、キャンバスの実際のデフォルトの色(白、または、255,255,255
)を反映するようにデフォルトの画像データを変更できるかどうか、またはキャンバスをその色にすばやくクリアする方法です。可能ではあるが非常に非効率的な解決策は、キャンバスをクリアするときに、すべてのピクセルの値を 255 に設定することです。ただし、キャンバスのサイズが原因で、実行時に数秒の遅延が発生します。
私が見落としている他の選択肢はありますか?ありがとう。