2010-04-22 4 views
1

Для личного проекта я создаю статический gif-декодер. Все хорошо работает до сих пор, за исключением того, что у меня возникли проблемы с пониманием одной концепции из спецификации:Декодирование вопроса GIF

Этот блок НЕОБХОДИМО для изображения. Точно один дескриптор изображения должен присутствовать на изображение в потоке данных. В потоке данных может присутствовать неограниченное количество изображений . (Spec)

Неограниченные изображения в потоке данных? Может быть больше 1? Я предполагаю, что они не означают анимированный GIF, потому что в той же спецификации они заявляют, что они не рекомендуют использовать gif для анимации.

Я читал много других сайтов, документирующих формат gif, и все они указывают что-то подобное. Heres another link:

В GIF может быть неограниченное количество изображений.

Любые идеи?

+0

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

ответ

1

GIF87a не позволяет анимацию, но позволяет использовать несколько изображений в GIF.
Идея заключалась в том, чтобы разложить (для лучшей общей степени сжатия) большую картинку на несколько прямоугольных субтитров, нарисованных на общем холсте, первоначально заполненном цветом фона. Каждая подкатегория имеет свои собственные x, y, ширину, высоту и палитру. Например, если вы рисуете астрономическую картину: Земля и Луна, эти два объекта могут быть представлены в виде двух небольших субтитров на общем большом черном холсте. Это не анимация: оба субфикса видны одновременно.
Но эта прекрасная идея не поддерживалась программным обеспечением (браузеры, зрители изображений и т. Д.), Возможно, из-за такого нестандартного подхода.

С GIF89a эти субтитры были преобразованы в рамки анимации.

+0

5 лет спустя, но отличный ответ :) –

0

В файле GIF может быть более одного изображения. Да, GIF-файлы могут выполнять грубую анимацию, но обычно это не так.

 Смежные вопросы

  • Нет связанных вопросов^_^