Spec-Zone.ru › Web APIs

CanvasRenderingContext2D: метод clearRect()

Базовая поддержка Широко доступен

Эта функция хорошо отработана и работает на многих устройствах и версиях браузеров. Она доступна в браузерах с июля 2015 года.

  • Подробнее
  • Полная совместимость
  • Отправить отзыв

Метод CanvasRenderingContext2D.clearRect() API холста 2D стирает пиксели в прямоугольной области, устанавливая их в прозрачный чёрный цвет.

Примечание: Обратите внимание, что clearRect() может привести к непредвиденным последствиям, если вы не правильно используете пути. Убедитесь, что вы вызываете beginPath() перед началом рисования новых элементов после вызова clearRect().

Синтаксис

clearRect(x, y, width, height)

Метод clearRect() устанавливает пиксели в прямоугольной области в прозрачный чёрный цвет (rgb(0 0 0 / 0%)). Верхний левый угол прямоугольника находится в (x, y), а его размеры задаются width и height.

Параметры

x

Координата x начальной точки прямоугольника.

y

Координата y начальной точки прямоугольника.

width

Ширина прямоугольника. Положительные значения — вправо, отрицательные — влево.

height

Высота прямоугольника. Положительные значения — вниз, отрицательные — вверх.

Возвращаемое значение

Ничего (undefined).

Примеры

Очистка всего холста

Этот фрагмент кода очищает весь холст. Это часто требуется в начале каждого кадра анимации. Размеры очищаемой области задаются равными атрибутам <canvas> элемента width и height.

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

Очистка части холста

В этом примере рисуется синий треугольник поверх жёлтого фона. Затем метод clearRect() очищает часть холста.

HTML

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

JavaScript

Очищаемая область имеет прямоугольную форму, с верхним левым углом в (10, 10). Очищаемая область имеет ширину 120 и высоту 100.

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);

Результат

Спецификации

Спецификация
HTML
# dom-context-2d-clearrect-dev

Совместимость с браузерами

Рабочие столы Мобильные устройства
Chrome Edge Firefox Opera Safari Chrome Android Firefox для Android Opera Android Safari на iOS Samsung Internet WebView Android
clearRect 1 12 1.5 ≤12.1 2 18 4 ≤12.1 1 1.0 4.4

См. также

  • Интерфейс, определяющий этот метод: CanvasRenderingContext2D
  • CanvasRenderingContext2D.fillRect()
  • CanvasRenderingContext2D.strokeRect()

© 2005–2024 MDN contributors.
Licensed under the Creative Commons Attribution-ShareAlike License v2.5 or later.
https://developer.mozilla.org/en-US/docs/Web/API/CanvasRenderingContext2D/clearRect

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API