Это сайт — моя персональная записная книжка. Интересна мне, по большей части, история, своя жизнь и немного программирование.

GIF plain text extension

В формате GIF89 есть забавное поле — «plain text extension», заброшенное и никем не используемое. Настолько заброшенное, что для него делали специальное соответствующее поле в формате PNG, для совместимости, но потом объявили его «deprecated».

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

Насилу нашёл редактор, который умеет создавать GIF с таким полем, но, увы, ни один из браузеров не умеет правильно показывать содержимое такого GIF. Некоторые браузеры не умеют показывать его даже неправильно — выводят пиктограмму ошибочно загруженной картинки (например, IE, Opera 8.xx/9.xx, Safari и другие).

Понятно, что extension совершенно бесполезный, но всё-таки мне было любопытно на его посмотреть.

P.S. Для тестирования браузеров я использовал сервис BrowserShots.

Добавлено 6 октября 2009 14:40: почти все браузеры показывают изображение в котором есть ещё хоть что-то, кроме такого текста. Если же изображение содержит только текст, то многие браузеры (как сказано выше) покажут ошибку загрузки.

7 комментариев
masterspammer.livejournal.com 2009

Да, есть такое дело. Писал библиотеку для GIFок, в том числе для анимированных (на голом perlе), так было нечем протестировать её работу.

http://masterspammer.narod.ru/4lj/captcha.gif  — пример картинки, в которой есть текст. Вроде бы по спецификации.

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

Евгений Степанищев (bolknote.ru) 2009

Комментарий для masterspammer.livejournal.com:

Из браузеров этот блок не показывает ни один. Посмотреть как это может выглядеть можно в редакторе «GIF Construction Set Pro» (он платный, но есть trial-период). В нём можно загрузить изображение и нажать на кнопку с биноклем.

masterspammer.livejournal.com 2009

Комментарий для Евгения Степанищева:

Запинал под CrossoverOffice, занятно. Похоже, что анимация таки возможна. Буду экспериментировать.

Вот ещё что нарыл — http://netghost.narod.ru/gff/graphics/software/msdos/gds.htm  — видел историю версий (ссылку уже потерял), там сначало было, что мол есть фича, но не поддерживается, а потом — что поддерживается.

P.S. В порядке бреда — а что если патч написать для какого-нибудь браузера. Даже 7bit ASCII позволяет поверх картинки написать URL, а значит фича уже полезна хотя бы этим.

Евгений Степанищев (bolknote.ru) 2009

Комментарий для masterspammer.livejournal.com:

Ну, исходники WebKit и FF открыты, можно попробовать. Но я сомневаюсь, что патч примут :) Кстати, там наверняка используется какая-то готовая библиотека, надо просмотреть какая и делать патч к ней.

masterspammer.livejournal.com 2009

GDS (Graphics Display System) тоже скачал, но экспериментировать позже буду.

    * http://bihon.tistory.com/150  — куча картинок — как GDS выглядит
    * Сама программа — http://ftp://garbo.uwasa.fi/pc/graphics/gds31d.zip
    * Много вообще старого для DOSа http://garbo.uwasa.fi/pc/graphics.html

Если эти две программы (считая GIF Construction Set Pro) показывают одинаково, то сочту эталоном (например, набор символов) и сделаю конвертор в обычный GIF.

anonymous 2011

Добавлено 6 октября 2009 14:40: почти все браузеры показывают изображение в котором есть ещё хоть что-то, кроме >такого текста. Если же изображение содержит только текст, то многие браузеры (как сказано выше) покажут ошибку >загрузки.

цитирую спецификацию GIF 89a

  1. Image Descriptor.
    .....
    This block is REQUIRED for an image. Exactly one Image Descriptor must
          be present per image in the Data Stream.
Евгений Степанищев (bolknote.ru) 2011

Комментарий для anonymous:

Ага, спасибо!