Spec-Zone.ru › Web APIs

CanvasRenderingContext2D: метод createLinearGradient()

Базовый уровень Широко доступен

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

  • Узнать больше
  • Полная совместимость
  • Сообщить об ошибке

Метод CanvasRenderingContext2D.createLinearGradient() API Canvas 2D создает градиент вдоль линии, соединяющей две заданные координаты.

The gradient transitions colors along the gradient line, starting at point x0, y0 and going to x1, y1, even if those points extend the gradient line beyond the edges of the element on which the gradient is drawn.

Этот метод возвращает линейный CanvasGradient. Для применения к фигуре градиент сначала должен быть назначен свойствам fillStyle или strokeStyle.

Примечание: Координаты градиента являются глобальными, то есть относительными к текущему пространству координат. При применении к фигуре координаты НЕ являются относительными к координатам фигуры.

Синтаксис

createLinearGradient(x0, y0, x1, y1)

Метод createLinearGradient() задается четырьмя параметрами, определяющими начальную и конечную точки линии градиента.

Параметры

x0

Координата x начальной точки.

y0

Координата y начальной точки.

x1

Координата x конечной точки.

y1

Координата y конечной точки.

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

Линейный CanvasGradient, инициализированный с указанной линией.

Исключения

NotSupportedError DOMException

Возникает, когда в качестве параметров передаются неконечные значения.

Примеры

Заливка прямоугольника линейным градиентом

В этом примере инициализируется линейный градиент с помощью метода createLinearGradient(). Затем создаются три цветовых перехода между начальной и конечной точками градиента. Наконец, градиент назначается контексту холста и отображается на закрашенном прямоугольнике.

HTML

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

JavaScript

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

// Create a linear gradient
// The start gradient point is at x=20, y=0
// The end gradient point is at x=220, y=0
const gradient = ctx.createLinearGradient(20, 0, 220, 0);

// Add three color stops
gradient.addColorStop(0, "green");
gradient.addColorStop(0.5, "cyan");
gradient.addColorStop(1, "green");

// Set the fill style and draw a rectangle
ctx.fillStyle = gradient;
ctx.fillRect(20, 20, 200, 100);

Результат

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

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

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

Настольные Мобильные
Chrome Edge Firefox Opera Safari Chrome Android Firefox для Android Opera Android Safari на IOS Samsung Internet WebView Android
createLinearGradient 1 12 1.5 ≤12.1 2 18 4 ≤12.1 1 1.0 4.4

См. также

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

© 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/createLinearGradient

Spec-Zone.ru

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