CanvasRenderingContext2D: свойство strokeStyle
Базовая реализация Широко поддерживается
Эта функция хорошо зарекомендовала себя и работает на многих устройствах и версиях браузеров. Она доступна во всех браузерах с июля 2015 года.
Свойство CanvasRenderingContext2D.strokeStyle API Canvas 2D определяет цвет, градиент или узор, используемые для обводки (контура) фигур. По умолчанию используется #000 (чёрный).
Примечание: Более подробные примеры стилей обводки и заливки см. в разделе Применение стилей и цветов в учебнике по Canvas.
Значение
Одно из следующих:
colorgradient-
Объект
CanvasGradient(линейный или радиальный градиент). pattern-
Объект
CanvasPattern(повторяющийся рисунок).
Примеры
Изменение цвета обводки фигуры
В этом примере применяется синий цвет обводки к прямоугольнику.
HTML
<canvas id="canvas"></canvas>
JavaScript
const canvas = document.getElementById("canvas");
const ctx = canvas.getContext("2d");
ctx.strokeStyle = "blue";
ctx.strokeRect(10, 10, 100, 100);
Результат
Создание нескольких цветов обводки с помощью циклов
В этом примере мы используем два for цикла и метод arc() для рисования сетки окружностей, каждая с другим цветом обводки. Для этого мы используем две переменные i и j для генерации уникального цвета RGB для каждой окружности, изменяя только значения зелёного и синего. (Красный канал имеет фиксированное значение.)
const ctx = document.getElementById("canvas").getContext("2d");
for (let i = 0; i < 6; i++) {
for (let j = 0; j < 6; j++) {
ctx.strokeStyle = `rgb(
0
${Math.floor(255 - 42.5 * i)}
${Math.floor(255 - 42.5 * j)})`;
ctx.beginPath();
ctx.arc(12.5 + j * 25, 12.5 + i * 25, 10, 0, Math.PI * 2, true);
ctx.stroke();
}
}
Результат выглядит так:
Спецификации
| Спецификация |
|---|
| HTML # dom-context-2d-strokestyle-dev |
Совместимость с браузерами
| Рабочие столы | Мобильные устройства | ||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|
| Chrome | Edge | Firefox | Opera | Safari | Chrome Android | Firefox для Android | Opera Android | Safari на iOS | Samsung Internet | WebView Android | |
strokeStyle |
1 | 12 | 1.5 | ≤12.1 | 2 | 18 | 4 | ≤12.1 | 1 | 1.0 | 4.4 |
Примечание для WebKit/Blink
В браузерах на основе WebKit и Blink помимо этого свойства реализован нестандартный и устаревший метод ctx.setStrokeColor().
setStrokeColor(color); setStrokeColor(color, alpha); setStrokeColor(grayLevel); setStrokeColor(grayLevel, alpha); setStrokeColor(r, g, b, a); setStrokeColor(c, m, y, k, a);
См. также
- Интерфейс, определяющий это свойство:
CanvasRenderingContext2D CanvasGradientCanvasPattern
© 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/strokeStyle