CanvasRenderingContext2D: метод lineTo()
Базовая линия Широко поддерживается
Эта функция хорошо зарекомендовала себя и работает на многих устройствах и версиях браузеров. Она доступна в браузерах с июля 2015 года.
Метод CanvasRenderingContext2D lineTo(), являющийся частью API Canvas 2D, добавляет прямую линию к текущей подтраектории, соединяя последнюю точку подтраектории с заданными координатами (x, y).
Как и другие методы, которые изменяют текущую траекторию, этот метод не отображает ничего напрямую. Для отображения траектории на холсте можно использовать методы fill() или stroke().
Синтаксис
lineTo(x, y)
Параметры
Возвращаемое значение
None (undefined).
Примеры
Рисование прямой линии
В этом примере показано рисование прямой линии с использованием метода lineTo().
HTML
<canvas id="canvas"></canvas>
JavaScript
Линия начинается в точке (30, 50) и заканчивается в точке (150, 100).
const canvas = document.getElementById("canvas");
const ctx = canvas.getContext("2d");
ctx.beginPath(); // Start a new path
ctx.moveTo(30, 50); // Move the pen to (30, 50)
ctx.lineTo(150, 100); // Draw a line to (150, 100)
ctx.stroke(); // Render the path
Результат
Рисование соединенных линий
Каждый вызов метода lineTo() (и аналогичных методов) автоматически добавляется к текущей подтраектории, что означает, что все линии будут нарисованы или заполнены вместе. В этом примере показано рисование буквы «М» одной непрерывной линией.
HTML
<canvas id="canvas"></canvas>
JavaScript
const canvas = document.getElementById("canvas");
const ctx = canvas.getContext("2d");
ctx.moveTo(90, 130);
ctx.lineTo(95, 25);
ctx.lineTo(150, 80);
ctx.lineTo(205, 25);
ctx.lineTo(210, 130);
ctx.lineWidth = 15;
ctx.stroke();
Результат
Спецификации
| Спецификация |
|---|
| HTML # dom-context-2d-lineto-dev |
Совместимость с браузерами
| Рабочие столы | Мобильные устройства | ||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|
| Chrome | Edge | Firefox | Opera | Safari | Chrome Android | Firefox для Android | Opera Android | Safari на iOS | Samsung Internet | WebView Android | |
lineTo |
1 | 12 | 1.5 | 11.6 | 2 | 18 | 4 | 12 | 1 | 1.0 | 4.4 |
См. также
- Интерфейс, определяющий этот метод:
CanvasRenderingContext2D CanvasRenderingContext2D.moveTo()CanvasRenderingContext2D.stroke()
© 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/lineTo