清除Canvas任意区域像素可以用canvas_context.clearRect(x, y, width, height),但如果只有一个Canvas,不同的方法都调用同一个Canvas时,只调用canvas_context.clearRect(x, y, width, height)之后,再次绘制会出现偏移现象,如图1.
完整代码如下:
function CanvasClear(currCanvas, currCanvas_context) {
currCanvas_context.clearRect(x, y, width, height);
currCanvas.width = currCanvas.width;
currCanvas_context.clearRect(x, y, width, height);
currCanvas.width = currCanvas.width;
}
当使用canvas_context.clearRect()清除Canvas区域后,再次绘制会出现偏移现象。为解决此问题,可以尝试在清除后重置canvas的宽度,如:currCanvas.width = currCanvas.width;这样做能确保下一次绘制时恢复正常位置。
3566

被折叠的 条评论
为什么被折叠?



