netlib.narod.ru< Назад | Оглавление | Далее >

Глава 11. Изображения и растры

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

Термин растр (raster) связан с технологией производства видеодисплеев и относится к использованию для формирования изображения набора строк развертки. В растровой графике изображения описываются прямоугольными массивами пикселов, которые называют растровыми изображениями или битовыми картами (bitmap).

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

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

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

Как уже говорилось, размер и ориентацию векторных изображений можно изменять без потери качества. Так, благодаря масштабированию векторных контуров, шрифт размером 10 пунктов при десятикратном увеличении не будет иметь неровностей. В то же время растровые изображения обычно аппаратно-зависимы, и это нельзя игнорировать. В битовых картах определены конкретные размеры пикселов. При увеличении битовой карты могут возникать неровности, а при уменьшении — потеря информации (в GDI+ для решения этих проблем применяются алгоритмы сглаживания). Растровые изображения также содержат специфическую информацию о цвете, которую не всегда можно представить на конкретном устройстве вывода.

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

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

В World Wide Web практически вся графика является растровой; для большинства пользователей Web синонимами термина «компьютерная графика» являются JPEG- и GIF-файлы. Нельзя сказать, что это хорошо во всех отношениях. Гораздо эффективнее было бы хранить и передавать основную массу Web-графики в виде векторных изображений, учитывая, что зачастую исходное представление рисунков в программах подготовки изображений — это линии, кривые и заполненные области. И все же последние попытки распространения стандартов векторной графики для Web не слишком удались 1.



1 Подробнее о предлагавшемся стандарте Scalable Vector Graphics (SVG, масштабируемая векторная графика) см. на Web-узле World Wide Web Consortium no адресу www.w3.org/Grapbics/SVG. О языке Vector Markup Language (VML, язык векторной разметки), поддерживаемом последними версиями Internet Explorer — на Web-узле Microsoft по адресу msdn.microsoft.com/worksbop/author/vml. Обе технологии основаны на языке XML. Найти Web-узлы, использующие графику SVG или VML, довольно трудно.


netlib.narod.ru< Назад | Оглавление | Далее >

Сайт управляется системой uCoz