Представлен формат анимированных изображений XNG, совместимый с существующими браузерами
Для решения этих проблем разработан формат XNG, который из коробки уже поддерживается современными web-браузерами (проверено в Firefox и Chrome), при том, что специально поддержку нового формата в браузеры никто не добавлял. Достаточно вставить на страницу тег "img src=myanimation.xng" и анимированное изображение будет показано, как при указании обычного GIF. На первый взгляд в подобной поддержке усматривается подвох. Но если загрузить один из таких файлов и посмотреть его начинку становится всё понятно.
Файл XNG представляет собой HTML-код, сжатый при помощи gzip. При обнаружении gzip-архива браузер автоматически его распаковывает и разбирает содержимое. Внутри файла представлен SVG-блок, состоящий из набора изображений в формате JPEG, каждое из которых соответствует одному кадру в анимации. Данные каждого изображения упакованы "inline" с указанием данных внутри тега image в кодировке base64 (image A:href="data:image/jpeg;base64,...."). По умолчанию все блоки с изображениями указаны с флагом "visibility=hidden", т.е. не показываются. Отображение кадров производится через набор тегов "set" с установкой межкадровой задержки через атрибут "dur" и поочерёдной смены атрибутов "visible" и "hidden".
Таким образом в XNG по сути является эмуляцией через SVG анимированного JPEG (общее упоминание подобного было добавлено в Википедию ещё в 2006 году) и может работать в большинстве браузеров без необходимости установки плагинов или подключения JavaScript-библиотек. Потери из-за использования кодировки base64 хорошо компенсируются благодаря применению сжатия gzip. В частности, потери от base64 составляют в среднем 33%, после сжатия файл уменьшается примерно на 34% за счёт дополнительного сжатия обилия html-тегов (распакованный файл занимает 7536 Кб, а после сжатия gzip - 4986 Кб).
Источник: http://www.opennet.ru/opennews/art.shtml?num=40861
|
0 | Tweet | Нравится |
|