HTML5 前端中清除 canvas,可以使用 canvas 上下文的 clearRect() 方法。該方法清除指定的矩形區(qū)域,使其完全透明。
以下是如何使用clearRect()清除整個(gè)畫(huà)布的示例:
const canvas = document.getElementById('myCanvas');
const ctx = canvas.getContext('2d');
ctx.clearRect(0, 0, canvas.width, canvas.height);
在此示例中,我們首先使用 getElementById() 獲取對(duì) canvas 元素的引用。然后,我們使用 getContext(‘2d’) 獲取 canvas 上下文。最后,我們?cè)谏舷挛纳险{(diào)用 clearRect(),傳遞要清除的矩形區(qū)域的坐標(biāo)(在本例中為整個(gè)畫(huà)布)。
請(qǐng)注意,調(diào)用clearRect()不會(huì)重置畫(huà)布狀態(tài),因此在清除操作后,任何應(yīng)用于上下文的轉(zhuǎn)換或樣式仍將生效。如果要完全重置畫(huà)布狀態(tài),可以在清除畫(huà)布之前調(diào)用ctx.save(),在之后調(diào)用ctx.restore():
const canvas = document.getElementById('myCanvas');
const ctx = canvas.getContext('2d');
ctx.save();
ctx.clearRect(0, 0, canvas.width, canvas.height);
ctx.restore();
這將保存當(dāng)前畫(huà)布狀態(tài),清除畫(huà)布,然后恢復(fù)保存的狀態(tài),有效地將畫(huà)布重置為其默認(rèn)狀態(tài)。