清除草图仍然在画布上的html5

时间:2012-11-12 22:52:43

标签: javascript html5 canvas drawing clear

我对画布清晰的东西感到困惑 - 草图已经从画布上清除了,但当我点击画布绘制新的东西时,清除的草图再次回到同一位置。看起来草图已保存到某些“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:canvas.width = canvas.width。有关如何彻底清除它的任何想法?谢谢!

2 个答案:

答案 0 :(得分: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);

How to clear the canvas for redrawing

请参阅以下有关重置转换矩阵的教程。

HTML5 Canvas Reset Transform Tutorial

答案 1 :(得分:0)

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