Векторная графика

(Продолжение, начало в №13)

Основным логическим элементом графики в векторной форме является геометрический объект. В качестве объекта принимаются простые геометрические фигуры (так называемые примитивы - прямоугольник, окружность, эллипс, линия), составные фигуры или фигуры, построенные из примитивов, цветовые заливки, в том числе градиенты. Преимущество векторной графики заключается в том, что форму, цвет и пространственное положение таких объектов можно описывать с помощью математических формул. На практике это означает сравнительно небольшие размеры файлов, содержащих векторные изображения, независимость от разрешения печатающего устройства или монитора и корректность трансформаций объектов. Например, для того, чтобы воспроизвести изображение окружности на мониторе или принтере, программе векторной обработки нужно знать только координаты центра окружности и радиус. Все точки, определяющие границу окружности, рассчитываются непосредственно перед выводом по известной математической формуле окружности. Для отрисовки окружности в растровой форме соответствующей программе понадобится знать количество растровых точек для воспроизведения контура, координаты и цвет их всех и, кроме того, обеспечить сглаживание ступенек по краям (поскольку растр, как правило, имеет прямоугольную форму). В настоящее время лидерами среди программных пакетов обработки векторной графики можно назвать CorelDraw (версии 7 и 8) корпорации Corel; Adobe Illustrator 7; FreeHand. Все пакеты имеют версии для платформ PC и Macintosh, достаточно развиты по своим возможностям, чтобы считаться профессиональными инструментами, и имеют больше сходных черт, чем отличных. При всех преимуществах векторной графики необходимо заметить, что создание фотореалистичных изображений является очень трудоемким процессом и требует своеобразной техники. Прочувствовать ситуацию можно при помощи следующего мысленного эксперимента. Представьте себе фотографию бегущего ягуара. А теперь попробуйте хотя бы мысленно воспроизвести силуэт ягуара с помощью простых геометрических форм - треугольников, эллипсов, прямоугольников... Получается? А теперь попробуйте воспроизвести цвет и текстуру шкуры цветовыми заливками. Задача абсолютно кошмарная. Несмотря на это, есть впечатляющие образчики рисования в такой манере, достаточно посмотреть на изображения в сборниках "Corel ArtShow". Кстати, рисунок в начале статьи взят именно оттуда, является полностью векторным и создан, что называется, "руками" (да-да, нарисован). Такая техника создания векторных фотореалистичных изображений основывается на виртуозном умении использовать кривые, создавать и модифицировать смеси форм (в данном случае под "формой" понимается замкнутая кривая-контур + заливка), задавать оконтуривание существующих объектов и др. Работа кропотливая, требующая несомненных художественных способностей и огромного терпения. На эту тему существует ряд интересных публикаций, и, возможно, в будущем мы подробно рассмотрим эту технику (при наличии интереса читателей, разумеется).

Более традиционной областью применения векторной графики является создание шрифтов и логотипов (фирменных знаков). Создание приличного шрифта далеко не ограничивается только использованием векторной графики, но мы можем использовать его как наиболее наглядный пример для демонстрации еще одного немаловажного преимущества векторных форм - способ вывода на печать. Вы никогда не задавались вопросом, почему напечатанный на лазерном принтере с хорошим (300 dpi и выше) разрешением текст не имеет ступенек на краях? Дело в том, что, в отличие от растровой графики, где изображение при печати воспроизводится полиграфическим растром, контуры векторных объектов создаются непосредственно при помощи точек, печатаемых принтером, и при этом располагаются относительно друг друга таким образом, чтобы создать по возможности полную иллюзию плавности границ. (Вспомним, что при прочих равных условиях размер полиграфического растра для разрешения 150 lpi составляет 0,169х0.169 мм, а диаметр точки принтера с разрешением 600 dpi равен 0,042 мм, то есть в 4 раза меньше). Таким образом, помимо плавности границ, мы имеем еще и очень хорошую четкость изображения. Попробуйте импортировать тот же текст в растровый формат и вывести его на печать - четкость изображения значительно ухудшится из-за необходимости сглаживания ступенек по краям. То же справедливо не только для шрифтов, но и для любых векторных объектов.

Итак, малый размер файла, простота и корректность трансформаций, независимость от разрешения при выводе, эффектная печать - это актив. А в пассиве что? К сожалению, недостатки у векторной формы тоже есть и достаточно неприятные. Что касается шрифтов - это проблема переносимости. Как правило, изображения печатаются совсем не там, где они создавались. В типографии или сервисном бюро может просто не оказаться тех шрифтов, которые используются в изображении. Приходится либо преобразовывать шрифт в кривые, либо вместе с файлом изображения посылать и файлы, содержащие используемые шрифты. Вторая проблема связана с градиентными заливками и цветовыми переходами - при печати можно получить вместо плавных перетеканий цветов набор дискретных полос. Третья проблема - треппинг. Суть заключается в определении способа печати (печатать цвета поверх друг друга или печатать "встык") и точной подгонке границ соприкасающихся областей при печати встык. Пример. Допустим, необходимо на буклете напечатать желтые буквы на синем фоне. При печати красок поверх друг друга цвет букв может получиться, грубо говоря, зеленого оттенка вместо первоначального желтого (синий и желтый при смешивании дают зеленый). Выход - печатать "встык". На синей подложке вырезается область по контуру текста и теперь желтый текст ляжет на пустую (белую) область, так что мы вправе надеяться, что они останутся желтыми. Но тут же возникает другая проблема - при печати может получиться нежелательный зазор между контуром текста и синей подложкой. Избежать этого можно заданием правильных параметров треппинга. В общем, можно сказать, что эти и другие проблемы при печати векторной графики не имеют фатального характера. Их можно и нужно решать. Наиболее универсальный и простой способ - импорт векторной гафики в растровый формат. Процедура стандартная и реализована в любом векторном пакете. Важно только правильно выбрать разрешение и формат растрового файла. Правда, теперь вы знаете, что при этом теряете... Существуют и другие решения, в каждом конкретном случае свои, но они требуют углубленного изучения проблемы и их детальное обсуждение выходит за рамки данной статьи. (Так, проблема градиентов решается правильным подбором количества оттенков, размеров области и учетом разрешения печати.)

В последнее время все большее распространение получают программы 3-мерного моделирования, также имеющие векторную природу. Обладая изощренными методами отрисовки (метод трассировки лучей, метод излучательности), эти программы позволяют создавать фотореалистичные растровые изображения с произвольным разрешением из векторных объектов при умеренных затратах сил и времени.

 

В любом случае, если Вы работаете с графикой, то неизбежно будете иметь дело с обеими ее формами - векторной и растровой. Понимание их сильных и слабых сторон позволит Вам выполнить свою работу максимально эффективно и с минимальными потерями для собственного здоровья.

Игорь СИВАКОВ

Версия для печатиВерсия для печати

Номер: 

15 за 1998 год

Рубрика: 

Графика
Заметили ошибку? Выделите ее мышкой и нажмите Ctrl+Enter!