1

キャンバスのクリアについて混乱しています-スケッチはキャンバスからクリアされましたが、キャンバスをクリックして新しいものを描くと、クリアされたスケッチが再び同じ位置に戻ります。スケッチはいくつかの「Cookie」に保存されているようで、次回キャンバスをクリックするかキャンバス上にマウスを置いたときに再読み込みされます。

clear.click(function()){
var canvas = document,getElementById('mycanvas');
var context = canvas.getContext('2d');
context.clearRect(0,0,width,height);
});

私は描画に sketch.js を使用しています: http://intridea.github.com/sketch.js/ 実際、sketch.js のコードはキャンバスもきれいにしました: canvas.width = canvas.width. それを完全にクリアする方法について何か考えはありますか?ありがとう!

4

2 に答える 2

0

それはコードの他の部分が問題を引き起こしているものであり、私はすでにそれを修正しています。以前のスケッチが配列に保存されているようで、現在のスケッチを配列に追加するたびに、そこにすべてを描画します。ありがとう!そしてお騒がせしてすみません。

于 2012-11-16T19:08:38.313 に答える
0

次の質問の 2 番目の解決策を試してください。キャンバスをクリアする前に、変換マトリックスをリセットするように指示されています。

// Use the identity matrix while clearing the canvas
ctx.setTransform(1, 0, 0, 1, 0, 0);
ctx.clearRect(0, 0, canvas.width, canvas.height);

再描画のためにキャンバスをクリアする方法

変換行列のリセットについては、次のチュートリアルを参照してください。

HTML5 Canvas Reset Transform チュートリアル

于 2012-11-13T01:18:23.063 に答える