How To Clear An HTML5 Canvas
JavaScript
05/06/2021
How do you clear an entire canvas of its drawings? For that, there's a context method called clearRect. Let me show you:
JAVASCRIPT
const context = canvas.getContext('2d')context.clearRect(0, 0, canvas.width, canvas.height)clearRect takes in 4 arguments:
- The 1st two are the x and y coordinates, respectively. Above, we specified the origin of the canvas, i.e. the top-left corner.
- The last 2 are width and height, respectively, which start from said coordinates. Here,
canvasrepresents the canvas element.
Given those 4 parameters, anything inside those dimensions are removed from the canvas.
Trigger with button
Most drawing apps will implement this exact functionality using some sort of reset button. To mimic this, start off by wrapping clearRect in a function.
JAVASCRIPT
const resetCanvas = () => context.clearRect(0, 0, canvas.width, canvas.height)Then simply attach it to a button's onclick event.
HTML
<button onclick='resetCanvas()'>Reset</button>A working version of this can be found in my Codepen.
