0

キャンバスを使った描画アプリケーションを開発しています。消去機能を実装したいのですが、本物のゴムである単純な白いペンである単純な消去ではありません。

実際、アプリケーションの上に透明なキャンバスを追加しました。描画するときに、描画したものを消去できます。つまり、不透明度を0にします。

私はすでにGoogleとstackoverflowで検索し、それを見つけました:

コード:JavaScript-Sélectionner

context.globalCompositeOperation = "destination-out"; 
context.strokeStyle = "rgba(0,0,0,0)";

しかし、それは機能しません...あまりにも、私はMDNglobalCompositeOperationに表示されるさまざまなモードを試しますが、違いはありません。助けてください。

4

1 に答える 1

2

消去しようとしているものの上に透明な線を引くため、機能しません...したがって、何もしません。

背景が白の場合は、上に白を描くだけで簡単に消去できます。しかし、それはあなたが望むものではありません。

ここでの秘訣は、他の形状の上に描画する代わりに、キャンバス上にあるものを削除するclearRectを使用することです。

context.clearRect(cursorX, cursorY, brushWidth, brushHeight);

小さな正方形として表示されますが、ピクセル操作を除いて、別の方法はわかりません。

于 2012-04-19T10:59:42.053 に答える