|
Первая версия графического формата Gif (Graphics Interchange Format) была разработана в 1987 году специалистами компьютерной сети CompuServe в качестве простого растрового формата для обмена рисунками в сети. Через некоторое время у данного формата выявился ряд недостатков, тормозящих его эффективное использование. В 1989 году была разработанна новая версия формата Gif (Gif89a). Формат Gif применяет те же алгоритмы сжатия, что и обычные программы-архиваторы, поэтому при записи и считывании Gif-изображения никаких потерь информации не происходит. Однако в отличии от них Gif-файлы архивируются и разархивируются автоматически. Он использует LZW-компрессию, что позволяет хорошо сжимать файлы, в которых много однородных заливок (логотипы, надписи, схемы). GIF-формат позволяет записывать изображение "через строчку" (Interlaced), благодаря чему, имея только часть файла, можно увидеть изображение целиком, но с меньшим разрешением. Эта возможность широко применяется в Интернете. Сначала вы видите картинку с грубым разрешением, а по мере поступления новых данных ее качество улучшается. В GIF'e можно назначить один или более цветов прозрачными, они станут невидимыми в интернетовских браузерах и некоторых других программах. Прозрачность обеспечивается за счет дополнительного Alpha-канала, сохраняемого вместе с файлом. Кроме того, файл GIF может содержать не одну, а несколько растровых картинок, которые интернетовские браузеры могут подгружать одну за другой с указанной в файле частотой. Это называется GIF-анимация. Основное ограничение формата GIF состоит в том, что цветное изображение может быть записано только в режиме 256 цветов. Несколько настраиваемых параметров GIF формата, позволяют управлять размером получаемого файла. Наибольшее влияние оказывает глубина цветовой палитры. GIF-файл может содержать от 2-х до 256 цветов. Соответственно меньшее содержание цветов в изображении (глубина палитры), при прочих равных условиях, дает меньший размер файла. Другой параметр влияющий на размер GIF-файла - диффузия. Это позволяет создавать плавный переход между различными цветами или отображать цвет отсутствующий в палитре путем смешения пикселов разного цвета. Применение диффузии увеличивает размер файла, но зачастую это единственный способ более менее адекватной передачи исходной палитры рисунка после редуцирования. Другими словами применение диффузии позволяет в большей степени урезать глубину палитры GIF-файла и тем самым способствовать его "облегчению". При создании изображения, которое в последующем будет переведено в GIF формат, следует учитывать следующую особенность алгоритма LZW сжатия. Степень сжатия графической информации в GIF зависит не только от уровня ее повторяемости и предсказуемости (однотонное изображение имеет меньший размер, чем беспорядочно "зашумленное"), но и от направления, т.к. сканирование рисунка производится построчно. Это хорошо видно на примерах GIF-файлов с разным направлением полосок . Файл с горизонтальными полосками имеет размер 369 байт, а с вертикальными полосками 883 байт (в 2,4 раза больше!). |