Шрифт:
• Как добавлять тени к фигурам.
• Как рисовать (и при необходимости масштабировать) изображения в элементе
• Как управлять созданием составных изображений, когда вновь добавляемые (просвечивающие) пикселы объединяются с существующими пикселами.
• Как получать и записывать красную, зеленую, синюю составляющие цвета и степень прозрачности пикселов в элементе <canvas>.
• Как определить, возникло ли событие мыши, когда ее указатель находился над нарисованным изображением в элементе <canvas>.
В конце этого раздела будет представлен практический пример, в котором элементы <canvas> будут использоваться для отображения небольших внутристрочных диаграмм (sparklines).
Во многих примерах работы с элементом
Рисунки, которые встретятся вам далее, были созданы сценариями JavaScript, использующими элемент
21.4.1. Рисование линий и заливка многоугольников
Чтобы нарисовать прямые линии в элементе
Фрагмент выше просто определяет контур - он ничего не рисует. Чтобы фактически нарисовать две линии, следует вызвать метод
Фрагмент выше (плюс некоторый дополнительный программный код, устанавливающий толщину линий и цвет заливки) воспроизводит рисунок, изображенный на рис. 21.5.
Рис. 21.5. Простой путь, нарисованный и залитый
Обратите внимание, что фрагмент контура, определяемый выше, является «открытым». Он содержит всего две прямые линии, и его конечная точка не совпадает с начальной точкой. То есть он образует незамкнутую область. Метод
Если бы потребовалось нарисовать все три стороны треугольника выше, можно было бы вызвать метод
Следует сделать еще два важных замечания, касающиеся методов