Книга: HTML 5, CSS 3 и Web 2.0. Разработка современных Web-сайтов
Создание маски
Создание маски
О масках мы уже знаем из главы 21. В терминологии канвы так называется особая фигура, задающая своего рода "окно", сквозь которое будет видна часть графики, нарисованной на канве. Вся графика, не попадающая в это "окно", будет скрыта. При этом сама маска на канву не выводится.
Маской может быть только сложный контур, рисование которого описано ранее. И создается она примерно так же.
Вот последовательность действий.
1. Рисуем сложный контур, который станет маской.
2. Обязательно делаем его закрытым.
3. Вместо вызова методов stroke или fill вызываем метод clip, который не принимает параметров и не возвращает результата.
4. Рисуем графику, которая будет находиться под маской.
В результате нарисованная нами на шаге 4 графика будет частично видна сквозь маску. Требуемый результат достигнут.
Листинг 22.16 иллюстрирует пример.
Листинг 22.16
ctxCanvas.beginPath();
ctxCanvas.moveTo(100, 150);
ctxCanvas.lineTo(200, 0);
ctxCanvas.lineTo(200, 300);
ctxCanvas.closePath();
ctxCanvas.clip();
ctxCanvas.fillRect(0, 100, 400, 100);
Web-сценарий из листинга 22.16 сначала рисует маску в виде треугольника, а потом — прямоугольник, часть которого будет видна сквозь маску.
- Канва
- Контекст рисования
- Рисование простейших фигур
- Задание цвета, уровня прозрачности и толщины линий
- Рисование сложных фигур
- Вывод текста
- Использование сложных цветов
- Вывод внешних изображений
- Создание тени у рисуемой графики
- Преобразования системы координат
- Управление наложением графики
- Создание маски
- Создание графического логотипа Web-сайта
- Создание свободно позиционируемых элементов
- Маскировка «боевого» блога
- Создание файлов с блокировкой
- 12. Лекция: Создание приложений с графическим интерфейсом пользователя.
- Создание объектов Collection
- 7.4.2.4. Создание своего первого LiveCD
- 4.2. Создание трехмерной модели и построение горизонтальной проекции детали
- 7.4.2. Создание собственного LiveCD
- Создание пользователя и группы на рабочей станции
- Создание корня документа:
- Создание многофайловой базы данных
- Создание форм с несколькими вкладками