1

我只是对画布清晰的东西感到困惑——草图已经从画布上清除了,但是当我单击画布绘制新的东西时,清除的草图又回到了相同的位置。看起来草图已保存到一些“cookies”中,当下次单击画布或将鼠标悬停在画布上时,它们已被重新加载。

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

请尝试以下问题的第二种解决方案。它说在清除画布之前重置转换矩阵。

// 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 重置变换教程

于 2012-11-13T01:18:23.063 回答
0

这是代码的另一部分给出了问题,我已经修复了它。看起来以前的草图已保存在数组中,每次我将当前草图添加到数组中,并在那里绘制所有内容。谢谢!很抱歉打扰了。

于 2012-11-16T19:08:38.313 回答