DVD-заставка
Опубликовано 3 ноября, 2025 - 15:54 пользователем Аблялимов Бари
Демонстрация обработки и отрисовки изображения в SVG-файле
Чтобы получить иконку DVD, нужно было:
- Отпарсить svg файл, в котором хранится векторное изображение логотипа DVD. В частности, из svg файла (это xml файл) для отрисовки нужен тэг <path> , а именно его аттрибут 'd', в котором закодирована последовательность пермещений и кривых, которые дадут внешний контур фигуры для последующей заливки. За парсинг в предоставленной реализации отвечает
class SVGPathParser - Далее после парсинга, последовательность команд отрисовки внейшней границы нужно конвертировать в последовательность функций, которые доступны канвасу. Ответственный за этот этап -
class PathToCtxHandle - после конвертаций, для фигуры сохраняется последовательность действий, которые надо сделать, чтобы нарисовать границу, чтобы потом запустить заливку. Все вызовы функции для построения линейных и нелинейных границ, были абстрагированы классом:
class Renderer
Исходники:
