Анімований PNG (.apng)
Звіт СтандартAPNG розширює PNG багатокадровою анімацією та статичним зображенням; програми без підтримки APNG можуть показати лише нерухоме зображення.
Конвертувати з APNG у GIF
Безкоштовний конвертер з APNG у GIF у браузері. Миттєво конвертуйте файли на своєму пристрої.
Аналіз та метадані
Операційні системи та аналізатори файлів ідентифікують файли APNG, перевіряючи початкову послідовність бінарних байтів:
Сигнатура заголовка на байтовому рівні (Magic Bytes)
Операційні системи та аналізатори файлів ідентифікують файли APNG, перевіряючи початкову послідовність бінарних байтів:
ШІСТНАДЦЯТКОВА СИГНАТУРА (ЗСУВ 0):
89 50 4E 47 0D 0A 1A 0AПОДАННЯ В ASCII: ‰PNG....
Стандартизація: Звіт групи спільноти W3C (2021) / Розширення Mozilla
Технічні характеристики
| Архітектура контейнера | Потік блоків PNG, зокрема блоків acTL (керування анімацією), fcTL (керування кадрами) і fdAT (дані кадрів) |
| Стиснення | Алгоритм стиснення Deflate (zlib) з ковзним вікном LZ77 та застосуванням двовимірної адаптивної фільтрації для кожного кадру |
| Порядок байтів (Endianness) | Порядок байтів від старшого до молодшого (Big-Endian; мережевий порядок байтів) |
| Колірні простори | sRGB, Display P3, Вбудований профіль ICC (iCCP) |
| Канали та структура | RGBA (8 або 16 біт на канал, Truecolor + 8-бітний альфа-канал) |
| Максимальні розміри | 2 147 483 647 x 2 147 483 647 пікселів (31-бітне обмеження PNG) |
| Прозорість | Повна прозорість із 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 (дуже висока ефективність) |
Типові режими пошкодження та посібник з відновлення в шістнадцятковому форматі
Анімація відтворює лише перший кадр і ніколи не зациклюється та не просувається далі.
Першопричина: Відсутній або пошкоджений блок 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 для iMessage в 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 є статичним; наступні кадри та час їх відтворення не включаються.