--- title: CanvasRenderingContext2D.createLinearGradient() slug: Web/API/CanvasRenderingContext2D/createLinearGradient tags: - API - Градиент - Холст - метод translation_of: Web/API/CanvasRenderingContext2D/createLinearGradient ---
Метод CanvasRenderingContext2D
.createLinearGradient()
, предоставляемый Canvas 2D API, создаёт градиент вдоль линии, соединённой двумя точками с заданными координатами.
Этот метод возвращает линейный {{domxref("CanvasGradient")}}. Для того, чтобы быть добавленным к фигуре, градиент должен быть задан свойством {{domxref("CanvasRenderingContext2D.fillStyle", "fillStyle")}} или {{domxref("CanvasRenderingContext2D.strokeStyle", "strokeStyle")}}.
Примечание: Координаты градиента глобальны, т.е. относятся к текущему пространству координат. При добавлении градиента, его координаты определяются НЕ относительно координат фигур.
CanvasGradient ctx.createLinearGradient(x0, y0, x1, y1);
Метод createLinearGradient()
принимает четыре аргумента для определения начала и конца точек линии градиента.
x0
y0
x1
y1
CanvasGradient
, определённый линией.В примере создаётся и добавляется линейный градиент, используя метод createLinearGradient()
. Градиент имеет три точки остановки цвета между созданными начальной и конечной точками линии.
<canvas id="canvas"></canvas>
var canvas = document.getElementById('canvas'); var ctx = canvas.getContext('2d'); // Создание линейного градиента // Точка начала линии градиента: x=20, y=0 // Точка конца линии градиента: x=220, y=0 var gradient = ctx.createLinearGradient(20,0, 220,0); // Добавление трёх контрольных точек gradient.addColorStop(0, 'green'); gradient.addColorStop(.5, 'cyan'); gradient.addColorStop(1, 'green'); // Установка стиля заливки и отрисовка прямоугольника градиента ctx.fillStyle = gradient; ctx.fillRect(20, 20, 200, 100);
{{ EmbedLiveSample('Заполнение_прямоугольника_с_линейным_градиентом', 700, 180) }}
{{Compat("api.CanvasRenderingContext2D.createLinearGradient")}}
NOT_SUPPORTED_ERR
вместо SYNTAX_ERR
.