JavaScript. Подробное руководство, 6-е издание, стр. 356
Ниже приводится HTML-страница, которая может служить простым примером использования прикладного интерфейса Canvas. Сценарий в ней рисует красный квадрат и голубой круг в элементе
<b><canvas>,</b><b><body></b><b>Это красный квадрат: <canvas id="square" width=100 height=100></canvas>.</b><b>Это голубой круг: <canvas id="circle" width=100 height=100></canvas>.</b><b><script></b><b>var canvas = document.getElementById("square"); // Найти первый элемент canvas</b><b>var context = canvas.getContext("2d"); // Получить 2-мерный контекст</b><b>context.fillStyle = "#f00"; // Цвет заливки - красный</b><b>context.fillRect(0,0,100,100); // Залить квадрат</b><b>canvas = document.getElementById("circle"); // Второй элемент canvas</b><b>context = canvas.getContext("2d"); // Получить его контекст</b><b>context.beginPath(); // Начать новый "контур"</b><b>context.arc(50, 50, 50, 0, 2*Math.PI, true); // Добавить круг</b><b>context.fillStyle = "#00f"; // Цвет заливки - синий</b><b>context.fill(); // Залить круг</b><b></script></b><b></body></b>Мы видели, что грамматика SVG позволяет описывать сложные фигуры из прямых отрезков и кривых линий, которые могут быть нарисованы или залиты цветом. В прикладном интерфейсе объекта
<b>Canvas</b><b>beginPath()</b><b>агс(),</b><b>fill()</b><b>fillStyle</b>• Как определять фигуры, как рисовать контуры фигур и как выполнять заливку внутренней области фигур.
• Как устанавливать и читать значение графических атрибутов объекта контекста элемента
<b><canvas></b>• О размерах холста, системе координат по умолчанию элемента
<b><canvas></b>• О различных методах рисования кривых объекта
<b>Canvas</b>• О некоторых специализированных вспомогательных методах рисования прямоугольников.
• Как определять цвета, как работать с прозрачностью и как рисовать градиенты и выполнять заливку шаблонными изображениями.
• Об атрибутах, определяющих толщину линий и внешний вид концов линий и вершин многоугольников.
• Как рисовать текст в элементе
<b><canvas>.</b>• Как ограничивать область холста, чтобы рисование не выполнялось за пределами указанной области.
• Как добавлять тени к фигурам.
• Как рисовать (и при необходимости масштабировать) изображения в элементе
<b><canvas></b>• Как управлять созданием составных изображений, когда вновь добавляемые (просвечивающие) пикселы объединяются с существующими пикселами.
• Как получать и записывать красную, зеленую, синюю составляющие цвета и степень прозрачности пикселов в элементе <canvas>.
• Как определить, возникло ли событие мыши, когда ее указатель находился над нарисованным изображением в элементе <canvas>.
В конце этого раздела будет представлен практический пример, в котором элементы <canvas> будут использоваться для отображения небольших внутристрочных диаграмм (sparklines).
Во многих примерах работы с элементом
<b><canvas>,</b><b>CanvasRenderingContext2D</b><b><canvas>,</b><b><canvas></b><b>width</b><b>height</b><b>var canvas = document.getElementById("my_canvas_id"); </b><b>var c = canvas.getContext('2d');</b>Рисунки, которые встретятся вам далее, были созданы сценариями JavaScript, использующими элемент
<b><canvas></b>21.4.1. Рисование линий и заливка многоугольников
Чтобы нарисовать прямые линии в элементе
<b><canvas></b><b>beginPath()</b><b>moveTo().</b><b>moveTo()</b><b>liпеТо()</b>