Первая версия графического формата
Gif (Graphics Interchange Format) была разработана в 1987
году специалистами компьютерной сети CompuServe в качестве простого
растрового формата для обмена рисунками в сети. Через некоторое
время у данного формата выявился ряд недостатков, тормозящих его
эффективное использование. В 1989 году была разработанна новая
версия формата Gif (Gif89a).
Формат Gif применяет те же алгоритмы сжатия, что
и обычные программы-архиваторы, поэтому при записи и считывании
Gif-изображения никаких потерь информации не происходит. Однако
в отличии от них Gif-файлы архивируются и разархивируются автоматически.
В формате GIF следует сохранять:
- кнопки и другие элементы навигации;
- тексты, оформленные в виде изображения;
- скриншоты (обратите особое внимание - их ни в коем случае нельзя
сохранять в формате JPEG);
- любые изображения с малым количеством цветов и плавных цветовых
переходов.
Полезное свойство формата GIF- поддержка черезстрочной
развертки (Interlaced). При загрузке черезстрочного GIF-изображения
браузер сначала показывает каждую восьмую строчку, затем каждую
четвертую и т.д. В таком случае посетитель сайта сможет понять,
что изображено на картинке, не дожидаясь ее полной загрузки. В
некоторых ситуациях это бывает удобно, так что при сохранении
GIF-файлов стоит всегда включать поддержку черезстрочной развертки.
При создании изображения, которое в последующем
будет переведено в GIF формат, следует учитывать следующую особенность
алгоритма LZW сжатия. Степень сжатия графической информации в
GIF зависит не только от уровня ее повторяемости и предсказуемости
(однотонное изображение имеет меньший размер, чем беспорядочно
"зашумленное"), но и от направления, т.к. сканирование
рисунка производится построчно. Это хорошо видно на примерах GIF-файлов
с разным направлением полосок . Файл с горизонтальными полосками
имеет размер 369 байт, а с вертикальными полосками 883 байт (в
2,4 раза больше!).
В GIF'e можно назначить один или более цветов прозрачными,
они станут невидимыми в интернетовских браузерах и некоторых других
программах. Прозрачность обеспечивается за счет дополнительного
Alpha-канала, сохраняемого вместе с файлом. Кроме того, файл GIF
может содержать не одну, а несколько растровых картинок, которые
интернетовские браузеры могут подгружать одну за другой с указанной
в файле частотой. Это называется GIF-анимация. Основное ограничение
формата GIF состоит в том, что цветное изображение может быть
записано только в режиме 256 цветов.
Как показывает опыт, для нефотографических изображений
в большинстве случаев 256 являются избыточными. Удаляя информацию
о лишних цветах из изображения, мы тем самым уменьшаем его размер.
Теоретически мы можем использовать любое количество цветов в диапазоне
от 1 до 256, но на практике лучше выбирать данное значение из
следующего ряда: 2, 4, 8, 16, 32, 64, 128, 256. Это связано с
тем, что для хранения цветовой информации всегда используется
целое число бит (от одного до восьми на один). Приведу такой пример:
если Вы используете в рисунке только 50 цветов, для сохранения
одного пикселя все равно будет использовано шесть бит. Размер
конечного файла будет таким же, как и в случае использования палитры
из 64 цветов. Ориентация на приведенный выше ряд позволит Вам
создать более качественные компактные изображения.
При сохранении картинки в формате GIF в Photoshope
можно задать фиксированную или оптимизированную палитру. Фиксированная
палитра представляет собой определенный заранее набор цветов.
В этом случае графический редактор просматривает каждый пиксель
изображения и подбирает наиболее близкий к нему цвет. С точки
зрения качества этот способ дает наихудший результат: дело в том,
что фиксированные палитры создаются без учета особенностей конкретного
изображения. При использовании оптимизированной палитры графический
редактор сначала анализирует изображение и составляет список всех
используемых в нем цветов. Далее на основании частоты появления
тех или иных оттенков формируется палитра из требуемого числа
тонов. После чего рисунок просматривается уже описанным выше способом,
цвет каждого пикселя при этом заменятся на ближайший из палитры.
Фактически оптимизация каждого конкретного изображения
заключается в подборе наиболее подходящего количества цветов.
Здесь стоит упомянуть о так называемом дизеринге (dithering) цветов.
Представим, что у Вас есть палитра, содержащая синие и желтые
цвета, а нам надо получить отсутствующий в ней зеленый. В это
случае мы можем составить его из синих и желтых точек, чередуя
их на рисунке. При взгляде издалека будет казаться, что мы видим
чисто зеленый цвет. использование дизеринга при сохранении изображений
в формате GIF может дать очень хороший результат, но к сожалению
дизеринг крайне отрицательно сказывается на размере конечного
файла. Именно поэтому целесообразность применения дизеринга стоит
определять в каждом конкретном случае. Данный параметр регулируется
движком dither.
|