Анимированный PNG (.apng)
Отчет СтандартAnimated Portable Network Graphics (APNG) расширяет стандартный PNG поддержкой многокадровой анимации с полным 24-битным полноцветным режимом и 8-битной альфа-прозрачностью, сохраняя полную обратную совместимость со стандартными декодерами PNG.
Конвертировать из 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 уровней плавной полупрозрачности) |
| Потоковая передача и прогрессивная загрузка | Потоковая передача с прогрессивной загрузкой блоков; первый кадр отображается немедленно на устаревших неанимированных парсерах PNG |
Техническая матрица сравнения: 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 в устаревших программах просмотра | Универсальный устаревший GIF | Отсутствует в старых программах просмотра | Отсутствует в старых программах просмотра |
| Эффективность сжатия | Deflate (умеренная) | LZW (низкая) | Ключевые/разностные кадры VP8 (высокая) | Межкадровое AV1 (сверхвысокая) |
Типичные режимы повреждения и руководство по восстановлению в HEX
Анимация воспроизводит только первый кадр и никогда не зацикливается и не переключается дальше.
Первопричина: Отсутствует или поврежден блок 'acTL' (управление анимацией), расположенный перед первым блоком IDAT.
Восстановление: Перепакуйте кадры с помощью apngasm или File2File Animation Converter, чтобы восстановить корректные блоки управления анимацией.
Анализ безопасности и векторы атак на парсер
Анализаторы APNG обрабатывают повторяющиеся блоки управления кадрами, где некорректные размеры могут вызвать переполнение целых чисел или исчерпание кучи.
Известные векторы атак
- Переполнение целых чисел при вычислении смещения кадра (x_offset / y_offset), приводящее к составлению кадров за пределами буфера.
- Несоответствие ширины и высоты кадров, приводящее к чтению за пределами буфера во время смешивания кадров.
- Бесконечные циклы декомпрессии анимации, исчерпывающие ресурсы процессора в бэкенд-службах генерации миниатюр.
Защитные лучшие практики: Проверяйте общие границы анимированного холста и ограничивайте максимально допустимое количество кадров перед растрированием.
Исторические истоки и вехи
Ключевые преимущества и плюсы
- Полный 24-битный цвет RGB плюс 8-битная альфа-прозрачность, полностью исключающая артефакты в виде зубчатых краев у 1-битной прозрачности GIF.
- 100% обратная совместимость со старыми декодерами PNG (которые беспрепятственно отображают основной резервный кадр).
- Универсальное нативное воспроизведение с аппаратным ускорением во всех современных браузерах для настольных ПК, iOS и Android.
Технические ограничения и минусы
- Больший размер файлов по сравнению с современными форматами анимации на основе видео, такими как WebM или MP4.
- Более высокая сложность кодирования и нагрузка на ЦП при создании по сравнению с устаревшим GIF.
- Отсутствие межкадрового предсказания векторов движения, используемого в специализированных видеокодеках.
Интересные технические факты
- Официальная группа разработчиков PNG отвергла APNG в 2007 году, отдав предпочтение отдельному формату MNG, который в конечном итоге не получил распространения.
- Apple использовала APNG для анимированных стикеров в Магазине приложений сообщений iOS 10, что стимулировало массовое внедрение в мобильных устройствах.
- Если вы откроете файл APNG в старинной программе просмотра изображений из 1990-х годов, она просто покажет первый кадр без сбоев и ошибок.
Часто задаваемые технические вопросы
Почему APNG лучше, чем GIF?
APNG поддерживает 16.7 миллионов цветов и 256 уровней плавной альфа-прозрачности, в то время как GIF ограничен 256 цветами и грубой 1-битной прозрачностью.
Поддерживают ли все браузеры APNG?
Да. Каждый современный браузер (Chrome, Safari, Firefox, Edge) поддерживает APNG нативно с 2017 года.
Могу ли я конвертировать APNG в стандартный GIF или MP4?
Да. File2File.app может конвертировать анимацию APNG в легкие файлы GIF, MP4 или WebM прямо в вашим веб-браузере.
Связанные пары конвертации APNG
Конвертация файлов анимированного PNG в анимированный GIF снижает качество изображения до 256 цветов, но гарантирует воспроизведение в старых веб-браузерах и мессенджерах.
Конвертация анимированного GIF-файла в APNG преобразует устаревшую 256-цветную растровую анимацию в современную полноцветную последовательность с плавной прозрачностью.