CanvasRenderingContext2D: clearRect() Methode

Baseline Widely available

This feature is well established and works across many devices and browser versions. It’s been available across browsers since July 2015.

Die Methode CanvasRenderingContext2D.clearRect() der Canvas 2D API löscht die Pixel in einem rechteckigen Bereich, indem sie auf transparentes Schwarz gesetzt werden.

Hinweis: Beachten Sie, dass clearRect() zu unbeabsichtigten Nebeneffekten führen kann, wenn Sie nicht Pfade richtig verwenden. Stellen Sie sicher, dass Sie beginPath() aufrufen, bevor Sie nach dem Aufrufen von clearRect() neue Elemente zeichnen.

Syntax

js
clearRect(x, y, width, height)

Die clearRect() Methode setzt die Pixel in einem rechteckigen Bereich auf transparentes Schwarz (rgb(0 0 0 / 0%)). Die obere linke Ecke des Rechtecks befindet sich bei (x, y), und seine Größe wird durch width und height angegeben.

Parameter

x

Die x-Achsenkoordinate des Startpunkts des Rechtecks.

y

Die y-Achsenkoordinate des Startpunkts des Rechtecks.

width

Die Breite des Rechtecks. Positive Werte sind nach rechts, und negative nach links.

height

Die Höhe des Rechtecks. Positive Werte sind nach unten, und negative nach oben.

Rückgabewert

Keiner (undefined).

Beispiele

Löschen des gesamten Canvas

Dieser Code-Schnipsel löscht das gesamte Canvas. Dies ist häufig am Anfang jedes Frames in einer Animation erforderlich. Die Dimensionen des gelöschten Bereichs sind gleich den width und height Attributen des <canvas> Elements.

js
const canvas = document.getElementById("canvas");
const ctx = canvas.getContext("2d");
ctx.clearRect(0, 0, canvas.width, canvas.height);

Löschen eines Teils eines Canvas

Dieses Beispiel zeichnet ein blaues Dreieck auf einem gelblichen Hintergrund. Die clearRect() Methode löscht dann einen Teil des Canvas.

HTML

html
<canvas id="canvas"></canvas>

JavaScript

Der gelöschte Bereich ist rechteckig mit der oberen linken Ecke bei (10, 10). Der gelöschte Bereich hat eine Breite von 120 und eine Höhe von 100.

js
const canvas = document.getElementById("canvas");
const ctx = canvas.getContext("2d");

// Draw yellow background
ctx.beginPath();
ctx.fillStyle = "#ff6";
ctx.fillRect(0, 0, canvas.width, canvas.height);

// Draw blue triangle
ctx.beginPath();
ctx.fillStyle = "blue";
ctx.moveTo(20, 20);
ctx.lineTo(180, 20);
ctx.lineTo(130, 130);
ctx.closePath();
ctx.fill();

// Clear part of the canvas
ctx.clearRect(10, 10, 120, 100);

Ergebnis

Spezifikationen

Specification
HTML Standard
# dom-context-2d-clearrect-dev

Browser-Kompatibilität

BCD tables only load in the browser

Siehe auch