О пользе SVG

Первого-второго в числе прочих дел рисовал пак иконок для одного крупного форума. Это первая моя графическая работа такого масштаба под линухом.

Мутил я всё это дело в SVG — масштабируемом векторном формате графики, впечатления как всегда от SVG прекрасные. Это отличный формат для создания и рисования графических объектов, кнопок, значков, иконок, карт. Его поддержка появляется во всём большем количестве ПО.

Наверное, самое нетривиальное (для меня, во всяком случае) — идеально освоить рисование кривых Безье, но это дело тренировки.

И самое важное — SVG базируется на XML, то есть каждый рисунок представляется собой строго структурированный XML-файл с описанием всех данных рисунка — градиентов, цветов, графических примитивов, путей, что делает SVG высокопортируемым и вообще чрезвычайно удобным для разбора.

Шутка ли, править изображение можно даже не запуская графический редактор. Это очень удобно при однообразном процессинге большого количества картинок — после разработки иконок я решил поправить их прозрачность, не вручную же 48 штук править?

Я написал простейший скриптик, который при помощи sed(1) заменяет в каждом файле строку opacity:0.85; на opacity:0.8 (тем самым изменяя прозрачность элемента), и он выполнил всю работу менее чем за 15 секунд — правда эффективно?

Используя XSLT и сложные XML-парсеры можно творить ещё более сложные вещи.

Использование регулярных выражений при “ручной правке” SVG позволяет творить ещё более сложные вещи с минимальными затратами ресурсов.

В общем, рекомендую ознакомиться с SVG, особенно тем, кто интересуется векторной графикой.

Из редакторов советую Inkscape, он под win, lin и mac. Представление о возможностях SVG даёт спецификация SVG 1.1 от W3C.

git