Первого-второго в числе прочих дел рисовал пак иконок для одного крупного форума. Это первая моя графическая работа такого масштаба под линухом.
Мутил я всё это дело в 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.