this.context.drawImage(myimage, 0, 0);
将图像放在画布上可以很好地覆盖整个网络。 但是如何在它出现之后将其删除?
答案 0 :(得分:10)
Canvas是一个直接的绘图表面。这意味着你在它上面执行一个命令(drawImage或fillRect)并且它执行了该命令,并且它没有给出刚刚完成的任何操作。没有任何东西可以撤消。
你很难找到它,因为Canvas没有“删除”这样的东西。它只知道它有一些来自某处颜色的像素。它不知道在哪里。
为了简化一下,通常有两种方法:
答案 1 :(得分:4)
选项1:
在其上面绘制一个与背景颜色相同的矩形。
选项2(适用于非平凡的背景,但速度较慢):
在绘制图像之前从画布Get the pixel data,然后重绘该像素数据以删除图像。
答案 2 :(得分:2)
所以我提出了一种快速简便的方法来清理画布。我只是将<canvas>
标记放在<p>
标记之间,然后每次我需要清除画布,我只需通过更改<p>
重新呈现innerHTML
标记,即可喜欢魅力。