--- title: CanvasRenderingContext2D.clearRect() slug: Web/API/CanvasRenderingContext2D/clearRect tags: - API - Canvas - CanvasRendering2D - Méthode - Reference translation_of: Web/API/CanvasRenderingContext2D/clearRect ---
La méthode CanvasRenderingContext2D
.clearRect()
de l'API 2D des Canvas met en noir transparent tous les pixels dans le rectangle défini par le point de départ de coordonnées (x, y) et par les tailles (largeur, hauteur), supprimant tout contenu précédemment dessiné.
void ctx.clearRect(x, y, largeur, hauteur);
x
y
largeur
hauteur
Un problème classique avec clearRect
est qu'il peut apparaître comme ne fonctionnant pas si l'on n'utilise pas les trajets de façon appropriée. N'oubliez pas d'appeler {{domxref("CanvasRenderingContext2D.beginPath", "beginPath()")}} avant de commencer à dessiner une nouvelle image après avoir appelé clearRect
.
clearRect
Ceci est seulement un fragment de code simple qui utilise la méthode clearRect
.
<canvas id="canvas"></canvas>
var canevas = document.getElementById("canvas"); var ctx = canevas.getContext("2d"); ctx.beginPath(); ctx.moveTo(20,20); ctx.lineTo(200,20); ctx.lineTo(120,120); ctx.closePath(); // dessine la dernière ligne du triangle ctx.stroke(); ctx.clearRect(10, 10, 100, 100); // effacer le canevas entièrement // ctx.clearRect(0, 0, canvas.width, canvas.height);
Modifiez le code suivant et voyez vos changements en direct dans le canevas :
<canvas id="canvas" width="400" height="200" class="playable-canvas"></canvas> <div class="playable-buttons"> <input id="edit" type="button" value="Edit" /> <input id="reset" type="button" value="Reset" /> </div> <textarea id="code" class="playable-code" style="height:140px;"> ctx.beginPath(); ctx.moveTo(20,20); ctx.lineTo(200,20); ctx.lineTo(120,120); ctx.closePath(); // dessine la dernière ligne du triangle ctx.stroke(); ctx.clearRect(10, 10, 100, 100);</textarea>
var canvas = document.getElementById("canvas"); var ctx = canvas.getContext("2d"); var textarea = document.getElementById("code"); var reset = document.getElementById("reset"); var edit = document.getElementById("edit"); var code = textarea.value; function drawCanvas() { ctx.clearRect(0, 0, canvas.width, canvas.height); eval(textarea.value); } reset.addEventListener("click", function() { textarea.value = code; drawCanvas(); }); edit.addEventListener("click", function() { textarea.focus(); }) textarea.addEventListener("input", drawCanvas); window.addEventListener("load", drawCanvas);
{{ EmbedLiveSample('Playable_code', 700, 400) }}
Spécification | Statut | Commentaire |
---|---|---|
{{SpecName('HTML WHATWG', "scripting.html#dom-context-2d-clearrect", "CanvasRenderingContext2D.clearRect")}} | {{Spec2('HTML WHATWG')}} |
{{Compat("api.CanvasRenderingContext2D.clearRect")}}