Анимированный PNG (.apng)
Отчет СтандартAPNG расширяет PNG многокадровой анимацией и статичным изображением; программы без поддержки APNG могут показывать только неподвижное изображение.
Конвертировать из APNG в GIF
Бесплатный конвертер из APNG в GIF прямо в браузере. Конвертируйте файлы мгновенно на Вашем устройстве.
Анализ и метаданные
Операционные системы и анализаторы файлов идентифицируют файлы APNG по начальной двоичной последовательности байтов:
Сигнатура заголовка на уровне байтов (Magic Bytes)
Операционные системы и анализаторы файлов идентифицируют файлы APNG по начальной двоичной последовательности байтов:
HEX-СИГНАТУРА (СМЕЩЕНИЕ 0):
89 50 4E 47 0D 0A 1A 0AПРЕДСТАВЛЕНИЕ ASCII: ‰PNG....
Стандартизация: Отчет группы сообщества W3C (2021) / Расширение Mozilla
Технические спецификации
| Архитектура контейнера | Поток блоков PNG с блоками acTL (управление анимацией), fcTL (управление кадрами) и fdAT (данные кадров) |
| Сжатие | Скользящее окно Deflate (zlib) LZ77 с двумерной адаптивной фильтрацией, применяемой к каждому кадру |
| Порядок байтов (Endianness) | С прямым порядком байтов (сетевой порядок байтов) |
| Цветовые пространства | sRGB, Display P3, Внедренный профиль ICC (iCCP) |
| Каналы и структура | RGBA (8-битный или 16-битный полноцветный канал + 8-битный альфа-канал) |
| Максимальные размеры | 2 147 483 647 x 2 147 483 647 пикселей (ограничение PNG для 31-битного значения) |
| Прозрачность | Полная 8-битная прозрачность альфа-канала (256 уровней плавной полупрозрачности) |
| Потоковая передача и прогрессивная загрузка | Файлы APNG содержат статичное изображение; декодеры, игнорирующие блоки анимации, могут показывать его как неподвижную картинку. |
Техническая матрица сравнения: APNG с конкурентами
| Технический атрибут | APNG (Текущий) | GIF | WEBP | AVIF |
|---|---|---|---|---|
| Глубина цвета | 24-битный RGB (16,7 млн цветов) | 8-бит с индексированной палитрой (256 цветов) | 24-битный RGB (16,7 млн цветов) | 10-бит / 12-бит HDR |
| Прозрачность альфа-канала | 8-битная плавная прозрачность (256 уровней) | 1-битная бинарная маска вкл/выкл | 8-битная плавная прозрачность | 8-битная / 10-битная плавная прозрачность |
| Обратная совместимость | Некоторые программы для PNG могут показывать статичное изображение; для анимации нужна поддержка APNG. | Поддержка зависит от браузера. | Отсутствует в старых программах просмотра | Отсутствует в старых программах просмотра |
| Эффективность сжатия | Deflate (умеренная) | LZW (низкая) | Ключевые/разностные кадры VP8 (высокая) | Межкадровое AV1 (сверхвысокая) |
Распространенные сценарии повреждения и руководство по восстановлению в HEX
Анимация воспроизводит только первый кадр и никогда не зацикливается и не переключается дальше.
Первопричина: Отсутствует или поврежден блок 'acTL' (управление анимацией), расположенный перед первым блоком IDAT.
Восстановление: Перепакуйте кадры с помощью apngasm или File2File.app Animation Converter, чтобы восстановить корректные блоки управления анимацией.
Анализ безопасности и векторы атак на парсер
Анализаторы APNG обрабатывают повторяющиеся блоки управления кадрами, где некорректные размеры могут вызвать переполнение целых чисел или исчерпание кучи.
Известные векторы атак
- Переполнение целых чисел при вычислении смещения кадра (x_offset / y_offset), приводящее к составлению кадров за пределами буфера.
- Несоответствие ширины и высоты кадров, приводящее к чтению за пределами буфера во время смешивания кадров.
- Бесконечные циклы декомпрессии анимации, исчерпывающие ресурсы процессора в бэкенд-службах генерации миниатюр.
Лучшие практики защиты: Проверяйте общие границы анимированного холста и ограничивайте максимально допустимое количество кадров перед растрированием.
История происхождения и ключевые этапы
Ключевые преимущества и плюсы
- Полный 24-битный цвет RGB плюс 8-битная альфа-прозрачность полностью устраняют артефакты в виде зубчатых краёв, характерные для 1-битной прозрачности GIF.
- Файлы APNG содержат статичное изображение; декодеры, игнорирующие блоки анимации, могут показывать его как неподвижную картинку.
- Многие современные браузеры поддерживают воспроизведение APNG; доступность зависит от браузера и версии.
Технические ограничения и минусы
- Больший размер файлов по сравнению с современными форматами анимации на основе видео, такими как WebM или MP4.
- Более высокая сложность кодирования и нагрузка на ЦП при создании по сравнению с устаревшим GIF.
- Отсутствие межкадрового предсказания векторов движения, используемого в специализированных видеокодеках.
Интересные технические факты
- Официальная группа разработчиков PNG отвергла APNG в 2007 году, отдав предпочтение отдельному формату MNG, который в конечном итоге не получил распространения.
- Apple использовала APNG для анимированных стикеров в App Store приложения «Сообщения» для iOS 10, что способствовало массовому распространению формата на мобильных устройствах.
- Если Вы откроете файл APNG в старинной программе просмотра изображений из 1990-х годов, она просто покажет первый кадр без сбоев и ошибок.
Часто задаваемые технические вопросы
Почему APNG лучше, чем GIF?
APNG поддерживает 16,7 млн цветов и 256 уровней плавной прозрачности альфа-канала, тогда как GIF ограничен 256 цветами и грубой 1-битной прозрачностью.
Поддерживают ли все браузеры APNG?
Многие современные браузеры поддерживают воспроизведение APNG; доступность зависит от браузера и версии.
Могу ли я конвертировать APNG в стандартный GIF или MP4?
Да. File2File.app может конвертировать анимацию APNG в легкие файлы GIF, MP4 или WebM прямо в Вашем веб-браузере.
Связанные конвертации для APNG
Преобразование APNG в GIF может помочь, если целевое приложение поддерживает GIF, но не APNG. GIF ограничивает каждый кадр палитрой до 256 цветов, а воспроизведение зависит от браузера или приложения.
Конвертация анимированного GIF-файла в APNG преобразует устаревшую 256-цветную растровую анимацию в современную полноцветную последовательность с плавной прозрачностью.
Поместите первый кадр APNG на одну страницу PDF для спецификации. PDF статичен; последующие кадры и время их показа не включаются.