Основы работы с растровыми изображениями

Flash Player 9 и более поздних версий, Adobe AIR 1.0 и более поздних версий

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

Растровые изображения характеризуются шириной и высотой в пикселах и количеством бит на пиксел, указывающим, какое количество цветов может содержаться в одном пикселе. Если растровое изображение использует цветовую модель RGB, каждый пиксел содержит три байта: красный, зеленый и синий. Каждый из этих байтов имеет значение от 0 до 255. При смешении байтов в пикселе они, как на палитре художника, образуют определенный цвет. Например, чтобы пиксел был ярко-оранжевым, нужно присвоить ему следующие значения: красный = 255, зеленый = 102, синий = 0.

Качество растрового изображения определяется разрешением и глубиной цвета. Разрешение означает количество пикселов в изображении. Чем больше пикселов, тем выше разрешение и тем четче изображение. Глубина цвета определяет объем информации, содержащийся в каждом пикселе. Например, изображение с глубиной цвета 16 бит на пиксел не сможет передать то количество цветов, которое передает изображение с глубиной цвета 48 бит. Поэтому изображение с глубиной цвета 48 бит будет более мягко передавать оттенки, чем изображение с глубиной цвета 16 бит.

Так как качество растровых изображений зависит от разрешения, они не очень хорошо масштабируются. Это особенно заметно, если попытаться увеличить картинку в размере. При увеличении размера изображения обычно теряется качество и четкость.

Форматы растровых изображений

Файлы растровых изображений бывают разных форматов. Все они используют разные алгоритмы сжатия для уменьшения размера файла и оптимизации качества изображения в зависимости от конечной цели. Форматы растрового изображения, поддерживаемые приложениями Adobe — BMP, GIF, JPG, PNG и TIFF.

BMP

Формат BMP (точечный рисунок) является графическим форматом по умолчанию в операционной системе Microsoft Windows. Он не использует алгоритмов сжатия, и поэтому файлы этого формата обычно имеют большой размер.

GIF

Формат обмена графическими данными GIF (англ. Graphics Interchange Format) был разработан в 1987 году компанией CompuServe для передачи 256-цветных изображений (с глубиной цвета 8 бит). Файлы в этом формате получаются небольшого размера, поэтому он идеален для публикации изображений на веб-страницах. Из-за ограниченной цветовой палитры формата GIF он не подходит для фотографий, где обычно требуется хорошая передача полутонов и высокая четкость. Формат GIF поддерживает однобитовую прозрачность, что позволяет делать цвет чистым (прозрачным). Благодаря этому фон веб-страницы может проступать через прозрачные области изображения.

JPEG

Формат JPEG (часто записывается как JPG), разработанный Объединенной экспертной группой в области фотографии (англ. Joint Photographic Experts Group), использует алгоритм сжатия с потерей качества, благодаря чему при глубине цвета 24 бита удается сохранить размер файла небольшим. Сжатие с потерей качества означает, что каждый раз при сохранении изображения теряется качество и данные, но в результате получается небольшой размер файла. Формат JPEG идеален для фотографий, потому что он поддерживает передачу миллионов цветов. Возможность выбирать степень сжатия изображения позволяет находить баланс между качеством изображения и размером файла.

PNG

Формат переносимой сетевой графики PNG (англ. Portable Network Graphics) был разработан как формат с открытым исходным кодом, альтернативный запатентованному GIF. Формат PNG поддерживает глубину цвета до 64 бит, что позволяет передавать до 16 миллионов цветов. Так как PNG является относительно новым форматом, некоторые ранние обозреватели его не поддерживают. В отличие от JPG, PNG использует сжатие без потери качества, т.е. при сохранении изображения данные не теряются. PNG-файлы также поддерживают альфа-прозрачность, обеспечивающую до 256 уровней прозрачности.

TIFF

Формат изображения с тегами TIFF (Tagged Image File Format) использовался для работы на разных платформах до появления PNG. Недостатком формата TIFF было наличие его многочисленных вариантов и отсутствие единой программы чтения для обработки всех версий. Кроме того, в настоящее время этот формат не поддерживается ни одним обозревателем. Формат TIFF может использовать сжатие с потерей и без потери качества, а также позволяет обрабатывать пространства цветов устройства (такие как CMYK).

Прозрачные и непрозрачные растровые изображения

В растровых изображениях в форматах GIF и PNG каждый пиксел может иметь дополнительный байт (альфа-канал). Этот дополнительный байт отвечает за прозрачность пиксела.

Изображения в формате GIF поддерживают однобитовую прозрачность, что позволяет делать один из 256 цветов палитры прозрачным. PNG-изображения, в свою очередь, поддерживают до 256 уровней прозрачности. Эта функция особенно полезна, когда требуется, чтобы изображения или текст сливались с фоном.

В ActionScript 3.0 дополнительный пиксел, отвечающий за прозрачность, представлен классом BitmapData. Как и в модели прозрачности PNG, ActionScript обеспечивает до 256 уровней прозрачности.

Важные понятия и термины

Ниже приводится список важных терминов, встречающихся в этой главе при описании растровой графики:

Альфа
Уровень прозрачности (или, точнее, непрозрачности) цвета в изображении. Величину альфа часто называют значением альфа-канала .

Цвет ARGB
Цветовая схема, где каждый пиксел является сочетанием значений красного, зеленого и синего цветов, а его прозрачность задается значением альфа.

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

Глубина цвета
Также называется глубиной в битах . Объем компьютерной памяти, выделяемой на каждый пиксел, что в свою очередь определяет максимально возможное число цветов в изображении.

Пиксел
Наименьшая единица информации в растровом изображении, цветная точка.

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

Цвет RGB
Цветовая схема, в которой цвет каждого пиксела представлен сочетанием красного, зеленого и синего.