Градиенты Canvas HTML

Canvas - Градиенты

Градиенты могут использоваться для заливки прямоугольников, кругов, линий, текста и т.д. Формы на канвасе не ограничиваются одним цветом.

Есть два типа градиентов:

  • createLinearGradient(x,y,x1,y1) - Создание линейного градиента
  • createRadialGradient(x,y,r,x1,y1,r1) - Создание радиального/кругового градиента

Как только у нас есть объект градиента, нам нужно добавить два или более цветовых маркеров.

Метод addColorStop() определяет точку остановки цвета и его положение в градиенте. Положение градиента может быть любым значением между 0 и 1.

Чтобы использовать градиент, установите атрибут fillStyle или strokeStyle в градиент и нарисуйте форму (прямоугольник, текст или линия).

Canvas - Градиенты

Использование createLinearGradient()

Пример

Создание линейного градиента. Заливка прямоугольника градиентом:

Ваш браузер не поддерживает тег HTML5 canvas.

JavaScript:

const c = document.getElementById("myCanvas");
const ctx = c.getContext("2d");
// Создание градиента
const grd = ctx.createLinearGradient(0, 0, 200, 0);
grd.addColorStop(0, "red");
grd.addColorStop(1, "white");
// Использование градиента для заливки
ctx.fillStyle = grd;
ctx.fillRect(10, 10, 150, 80);

亲自试一试

Использование createRadialGradient():

Пример

Создание радиального/кругового градиента. Заливка прямоугольника градиентом:

Ваш браузер не поддерживает тег HTML5 canvas.

JavaScript:

const c = document.getElementById("myCanvas");
const ctx = c.getContext("2d");
// Создание градиента
const grd = ctx.createRadialGradient(75, 50, 5, 90, 60, 100);
grd.addColorStop(0, "red");
grd.addColorStop(1, "white");
// Использование градиента для заливки
ctx.fillStyle = grd;
ctx.fillRect(10, 10, 150, 80);

亲自试一试

另请参阅:

Попробуйте сами