清除画布会导致旧内容在下一次绘制时重新出现

时间:2011-02-25 17:53:49

标签: html5 canvas

我有一个清晰的按钮,似乎有用..但实际上并非如此。当我回到画布上时,我可以看到图纸。

1 个答案:

答案 0 :(得分:2)

清除画布的方式没有问题,问题在于你的逻辑。

每当您click或移动鼠标时,都会调用addClick方法,该方法会使用坐标填充数组clickXclickYclickDrag;然后调用redraw方法绘制canvas上的点。

因此,当您清除canvas时,您无法重置这些数组,因此当再次调用redraw方法时(清除画布后),旧点也会被绘制。

当您清除clickX时,请尝试清空数组clickYclickDragcanvas,如下所示;所以当你重新开始时,不会考虑旧点。

clickX = [];
clickY = [];
clickDrag = [];