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

Введение



Технологии компьютерной графики опираются на нисколько не менее абстрактные концепции и потому ничуть не проще для освоения, чем только что рассмотренные технологии текстовой разметки. Даже профессионалам в этой области полезно иногда отступить на шаг назад, чтобы окинуть обобщающим взглядом пеструю мешанину форматов, программ и стандартов.

Если верно, что компьютер – инструмент для реализации абстракций, то для успешной работы с ним человек должен сам легко овладевать абстракциями и уметь приводить к ним явления реального мира. С таким целостным и гармоничным (в смысле пушкинской «гармонии», которую нельзя «поверить алгеброй») явлением, как графика, это может показаться еще более трудным, чем со всегда несколько суховатым и склонным к формализму (будь то формализм грамматики или же формализм компьютерного языка разметки) текстом. Однако и награда за соединение несоединимого велика: если текст в компьютере всегда останется текстом, то в работе с изображениями компьютер даст вам такую творческую свободу и откроет перед вами такие возможности, которые в докомпьютерную эпоху трудно было даже вообразить.






Вектор



Все компьютерные изображения, все форматы для их хранения и все программы для их обработки делятся на два больших класса – векторные и растровые, – различающиеся, прежде всего, уровнем абстракции, примененной к изображению. Можно сказать, что если векторная графика пытается имитировать восприятие изображений человеком, то растровый формат хранит графику в том виде, в каком она легче всего переваривается компьютером. Соответственно, векторная графика в большинстве своем создается человеком с нуля прямо в векторном редакторе, а попытки генерировать ее автоматически редко когда приводят к удовлетворительному результату. И наоборот, основной поставщик растровых изображений – фотографии, т.е. в существенной своей части автоматический процесс с легко оцифровываемыми результатами.

Векторное изображение состоит из объектов – геометрических форм, составленных из прямых, дуг окружности и кривых Безье. Во всех векторных форматах объекты могут варьировать толщину и цвет контура, а замкнутые объекты – еще и цвет заливки. Объекты могут накладываться, частично или полностью заслоняя друг друга. В качестве отдельных объектов могут включаться растровые изображения и строки или абзацы текста (буквы которых могут также храниться в виде геометрических форм, но допускают и более высокий уровень абстракции – разделение на собственно текст, который можно редактировать, и параметры его оформления). Именно такой базовый набор возможностей предусмотрен в языке PostScript – одном из первых векторных форматов, появившемся в 1986 г. и до сих пор остающемся lingua franca для векторных изображений.

Фирма Adobe, которой принадлежит язык PostScript, разработала также первый векторный графический редактор Adobe Illustrator, для которого PostScript был стандартным форматом файлов. Однако долгие годы сохранявшееся монопольное положение этого формата сыграло с ним злую шутку: тот факт, что он стал стандартным входным форматом появившихся к тому времени лазерных принтеров и фотонаборных автоматов, практически затормозил его развитие, так как зашитое в принтер программное обеспечение, в отличие от программы, установленной на компьютере, не так-то просто обновить. В результате уже к началу 90-х PostScript стал узким местом и Adobe Illustrator, и векторных редакторов других фирм, – которые могли бы реализовать, к примеру, частичную прозрачность объектов, но не решались сделать это из боязни потерять совместимость с PostScript.

В последнее время, однако, избавившись от гипноза PostScripts, векторные форматы развиваются очень бурно – являясь по самой своей природе «сборниками абстракций», они легко заимствуют подходящие идеи из соседних областей. Некоторые из этих форматов двигаются в направлении поддержки сложных многостраничных документов с элементами логической разметки, а программы для работы с ними все больше походят на системы верстки. Другие вводят элементы анимации, мультимедиа и интерактивности. Все это сопровождается развитием собственно векторной основы графики, изобретением все новых свойств объектов и трансформаций для работы с ними. Конечно, векторные эффекты еще не столь многочисленны, как растровые, но они позволяют иногда добиться в векторной графике, при сохранении всех присущих ей достоинств, таких вещей, которые до недавнего времени казались прерогативой только и исключительно растра.

А достоинств у векторной графики действительно немало. С точки зрения дизайнера главное и решающее ее преимущество – всегда сохраняющаяся независимость объектов и невозможность совершить необратимые действия. Векторную картинку можно править и изменять бесконечно, не боясь «протереть дырку» или ненароком потерять часть исходной информации. Свойство векторной графики настолько важно, что композиции, имеющие хоть какое-то отношение к дизайну, имеет смысл делать только в векторном редакторе, – хотя это может быть и неверным для компьютерного аналога, скажем, живописи. (И в самом деле, наиболее отчетливо преимущества векторных редакторов над растровыми проявляются при работе над композициями, содержащими текст и именно по этому признаку относимыми к жанру дизайна, а не к: графике как таковой.)



Вектор в Интернете



Есть у вектора и важные практические преимущества: небольшой объем файлов (в сравнении с сопоставимыми растровыми изображениями) и независимость от разрешения устройства вывода. Эти два фактора сделали векторную графику вероятным кандидатом на роль одной из ключевых технологий Интернета. Если до сих пор векторные изображения встречаются на веб-страницах довольно редко, то объяснить это можно, лишь обилием конкурирующих технологий и нежеланием их владельцев открывать доступ к техническим спецификациям своих форматов, – что является одним из обязательных условий их стандартизации Консорциумом W3.

Тем не менее, среди реально применяемых в Интернете векторных форматов уже есть свои лидеры. У дизайнеров популярен формат Shockwave Flash фирмы Macromedia, замечательный своими богатыми интерактивными и анимационными возможностями (один из предков Flash – профессиональный пакет компьютерной анимации Macromedia Director). Приспособленный специально для Интернета, формат этот поддерживает гипертекстовые ссылки, а в дополнение к своей врожденной векторной нетребовательности пользуется сжатием информации на манер утилит-архиваторов. Для просмотра этого формата в браузере нужен подключаемый модуль (plug-in), бесплатно распространяемый фирмой Macromedia. Для отдельных анимированных вставок использовать Flash вряд ли целесообразно, однако существуют сайты, целиком построенные на этой технологии (например, www.oiympic.org).

Для статических текстовых документов популярен формат PDF (Portable Document Format, «Переносимый формат документов») фирмы Adobe, разработанный на основе PostScript со сжатием данных, обязательным инкапсулированием растровой графики и шрифтов и с возможностью использования гипертекстовых ссылок и интерактивных форм. Хотя графические возможности PDF ничуть не богаче, чем у PostScript, формат этот удобен для выкладывания в Интернете рекламных брошюр, проспектов, журнальных статей и прочих материалов, либо существовавших ранее в виде бумажных копий, либо предназначенных для распечатывания пользователем. Особенно удобно то, что формат PDF не привязан к какой-то одной графической программе и системе верстки: печатать на PostScript-принтерах и, следовательно, давать на выходе Postscript умеют все программы без исключения, а конвертация из PostScript в PDF – процедура полностью автоматическая. Программа для чтения этого формата под названием Acrobat Reader распространяется бесплатно и существует как в виде подключаемого модуля для браузера, так и в виде самостоятельного приложения. Консорциум W3 готовит стандарт «языка векторной разметки» VML (Vector Markup Language), использующего синтаксис XML и семантику CSS2 для описания векторных объектов. Относительная примитивность этого языка искупается тем, что для реализации его в современных браузерах не потребуется много усилий, так как VML максимально использует набор свойств элементов разметки и механизм абсолютного позиционирования CSS2. Поэтому вполне можно надеяться на то, что язык этот сможет найти свою нишу в современном Интернете.

Особую разновидность векторной графики представляют трехмерные форматы, из которых самый известный и чаще всего встречающийся в Интернете – язык VRML (Virtual Reality Modelling Language, «Язык моделирования виртуальной реальности»). Описываемые трехмерным форматом сцены состоят, как и векторные изображения, из математически описанных объектов, – с той только разницей, что все их точки имеют по три пространственных координаты (а в форматах с поддержкой анимации – еще и четвертую, временную координату). Кроме обычных объектов, сцены могут содержать разноцветные и произвольно размещаемые источники освещения, а программа-интерпретатор покажет вам сцену с любой точки и даже позволит зайти внутрь и «побродить» между объектами. Интерактивная трехмерная графика как метод представления информации грозилась одно время занять место в арсенале приемов профессионального веб-дизайна, однако ничего подобного так и не произошло – трехмерность остается любимой игрушкой непрофессионалов, но для создания в этом жанре вещей, интересных с художественной точки зрения, время, по-видимому, еще не пришло.



Растровое представление графики



Растровое (bitmap) представление графики можно рассматривать как «вырожденную» разновидность векторного, в которой допустим только один вид объектов: расположенные в прямоугольной решетке разноцветные квадратики, называемые пикселами. Однако если на векторном изображении мы видим именно те объекты, из которых оно состоит, то в растре вместо отдельных пикселов мы воспринимаем целостную картину, в которую пикселы складываются уже в нашем сознании. Главное преимущество растра состоит в его абсолютной свободе: пиксел изображения может быть любым – пусть его изменения ограничены только одной координатой (цветом), он не обязан подчиняться каким-то математическим формулам или «помнить» об очертаниях того объекта в изображении, которому он принадлежит. Разница между вектором и растром напоминает отличие студийной записи от «живого» концерта. Студийная мастер-копия сохраняет на отдельных дорожках партию каждого инструмента; как и векторное изображение, ее можно «пересводить», сколько угодно преобразуя, сдвигая, выбрасывая отдельные звуковые слои и добавляя новые. Концертная же запись и растровая картинка если и поддаются обработке и «приглаживанию», то лишь с помощью хитроумных фильтров. За эту негибкость вы получаете взамен в музыке – характерную экспрессию и «живую» фактуру звука, а в компьютерном растре – богатство текстур и некоторые принципиально недостижимые в векторе эффекты.

Интересное следствие этой концептуальной простоты – относительно небольшое количество используемых растровых форматов. Сейчас в этой области уже вряд ли можно придумать что-нибудь принципиально новое. Большинство растровых форматов, которые, как и векторные, начинали свою историю в качестве фирменных форматов той или иной программы, давно уже зажили собственной жизнью и кажутся теперь одинаково «родными» всем существующим растровым редакторам (а следовательно, нет никакой нужды выходить за пределы двух-трех общеупотребительных форматов). Из векторных форматов настолько же «обобществленным» сумел стать разве что PostScript, но и для него не редкость ситуация, когда записанный в одной программе PostScript-файл отказывается считываться в другой, – что невозможно себе представить для формата растрового.

На все четыре стороны. Экзотическая разновидность растровой графики – панорамные форматы, хранящие не двумерную картинку, а полный круговой обзор из некоторой точки, «склеенный» из нескольких снимков широкоугольным фотоаппаратом. Для просмотра такой панорамы нужно либо распечатать и свернуть ее в кольцо, либо (что, конечно, гораздо удобнее) «прокручивать» специальной программой, компенсирующей искажения, возникающие при проецировании кругового изображения на плоский экран. Некоторые из этих форматов дают не только панорамный, но и сферический обзор, включающий вид «в зенит» и «под ноги». Такими панорамами пользуется, к примеру, фирма Toyota для показа потенциальным клиентам интерьера своих автомобилей.


Плоская растровая графика



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

Microsoft Photo Editor – этот редактор предназначен в основном для работы с фотографиями. Часто он поставляется с пакетом Microsoft Office, поэтому распространен довольно широко.

Microsoft Image Composer – наиболее развитое средство обработки графики из всех программ фирмы Microsoft. Похоже, что по замыслу разработчиков он должен составить конкуренцию редактору Adobe Photoshop в части разработки графики для Интернета. Главное достоинство продукции Microsoft – простота и удобство интерфейса. Этот редактор занимает немного места на диске и очень быстро загружается. Однако для изображений, которые будут использованы в полиграфии, он практически непригоден.

Microsoft Paint – простейший графический редактор, поставляемый вместе с операционной системой Windows, заслуживает упоминания, хотя он обладает минимумом возможностей и вряд ли может быть применен для решения сколько-нибудь серьезной задачи. Этот редактор благодаря своему почтенному возрасту и широкому распространению можно назвать самым известным графическим редактором.

Paintbrush – предшественник Microsoft Paint, известный еще во времена Windows 3.x.

Corel Painter. Очень интересный и мощный растровый инструмент для художественной обработки изображений. Это один из немногих редакторов, в состав которого входят инструменты фрактальной графики.

Paint Shop Pro – одна из лучших shareware-программ, которая, к тому же, поддерживает фильтры от Adobe PhotoShop и очень быстро работает с объемными (>20Мб или Мв) фотографиями. Может импортировать и экспортировать изображения в 40 – 50 разных форматов.

GIMP – свободно распространяемая программа с открытым исходным кодом. Первоначально получила распространение среди любителей ОС Linux. Сейчас доступна и для Windows. По возможностям приближается к Adobe Photoshop. Обладает исключительной наращиваемостью и расширяемостью.

Выше приведен небольшой перечень самых известных и распространенных растровых редакторов. В соответствии с существующей государственной политикой в области авторского права, в рамках действующих образовательных стандартов и учебных программ, а также в соответствии с сегодняшними требованиями рынка труда, в дальнейших вопросах этой темы мы будем подробно рассматривать только лучший профессиональный редактор Adobe Photoshop. Однако по некоторым оценкам, программа Photoshop установлена на компьютерах, общее количество которых в России порядка 10 млн. штук. Для законного пользования этой программой нам (всем вместе) необходимо выплатить фирме Adobe где то около 8 млрд. долларов. Это только за одну, пусть хорошую программу.

А ведь России, с ее интеллектуальным и экономическим потенциалом, вполне по силам выступать на безграничном мировом рынке не импортером, а экспортером программного обеспечения!




Плоская векторная графика



Практически все современные графические программы по своему внутреннему устройству во многом имеют векторную природу. Например, даже примитивнейшая программа – растровый редактор MS Paint – имеет в своем арсенале векторные инструменты, такие как «Прямоугольное выделение». С другой стороны, любая «самая векторная» программа выпускает конечный продукт в виде растровой картинки, выводимой на экран или принтер. Надеюсь, что читатель вскоре свыкнется с этим парадоксом в классификации графических программ.

Перечислим наиболее популярные «чисто векторные» программы:

М5 Office Art – графическая подпрограмма, предназначенная для создания геометрических фигур, блок-схем и т.п. Обладает очень слабыми возможностями, но благодаря тому, что она встроена во все приложения Microsoft Office, это, пожалуй, самый распространенный в мире векторный редактор. Это не совсем обычная программа. Из-за «встроенности» в другие приложения программы типа Office Art называют апплетами.

Несмотря на примитивность Office Art, с его помощью можно очень быстро создать достаточно сложную и симпатичную картинку.

Corel Draw – самый мощный и сложный «плоский» векторный редактор. Спектр решаемых задач необычайно широк.

Corel Kara – упрощенная или «облегченная» версия программы Corel Draw. Она менее требовательна к ресурсам компьютера, так как не перегружена возможностями.

Adobe Illustrator – основной конкурент Corel Draw на рынке мощных двумерных векторных редакторов.

Macromedia Flash – самый известный, хороший и распространенный в мире двумерный векторный редактор для анимированной графики. Основная сфера применения – картинки для Интернета и компактные компьютерные игры.

AutoCad – мировой флагман трехмерной векторной графики. Относится к классу программ САПР (Системы Автоматизированного Проектирования).

Curious Labs Poser – интересная программа для трехмерной анимации.

ABBYY Fine Reader – самая известная и широко применяемая система распознавания текста. Эту программу мы с уверенностью поместили в разряд векторных редакторов, так как основное ее назначение – преобразовывать растровые картинки в текстовые символы (векторной природы). Только после распознавания отсканированные тексты можно редактировать с помощью клавиатуры в обычных текстовых редакторах.

RX Spotlight – один из известнейших векторизаторов. В отличие от системы распознавания текста, основное назначение векторизаторов – преобразовывать растровые картинки в геометрические фигуры для их дальнейшей обработки в плоских или трехмерных векторных редакторах.






Заключение



Есть две основные категории изображений: растровые (bitmap) и векторные (vector).

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

Программы, работающие с растровыми изображениями, в том числе Photoshop, иногда называют (не совсем точно) программами для рисования (painting program).

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

Программы, работающие с векторной графикой, иногда называют чертежными программами (drawing programs).

В программу Photoshop включены инструменты для работы с обоими типами графики. Вы можете использовать программы, предназначенные для определенного типа изображений, например Adobe Illustrator и Freehand фирмы Macromedia, для работы с векторной графикой. Программа Macromedia Flash также содержит в своем составе набор инструментов для работы с векторной графикой. Для новичков в области Web-дизайна в программе Photoshop представлены основные инструменты для создания и редактирования обоих типов изображений.




Литература



	Гурский Ю. Компьютерная графика. Трюки и Эффекты, – СПб.: Питер, 2005.

	Залогова Л.А. Компьютерная графика: Практикум. – М.: ЛБЗ, 2005.

	Инженерная и компьютерная графика. – М.: Высшая школа, 2004.

	Мельниченко В.В. Настоящий самоучитель компьютерной графики. – Киев: Век, 2004.

	Миронов Д. Компьютерная графика в дизайне. – СПб.: Питер, 2005.

	Музыченко. Самоучитель компьютерной графики. – М.: Тех-нолоджи 3000, 2005.

	Петров М.Н., Молочков В.П. Компьютерная графика: Учебник для вузов. 2-е изд. – СПб. Питер, 2005.

	Рэйнбоу В. Компьютерная графика: Энциклопедия. – СПб.: Питер, 2004.

	Хандадашева Л.Н., Истомина И.Г. Информатика. Техническая Графика. Издательство МАРТ, 2005.

	Хейфец А.Л. Инженерная и компьютерная графика. Autocad. BHV, 2004.