APNG
![]() | |
Розширення файлу: | .png .apng |
---|---|
MIME-тип: | image/apng[1] і image/png |
Рік випуску: | 4 серпня 2008 |
Тип формату: | растрова графіка |
Розширений з: | PNG |
APNG (Animated Portable Network Graphics) — формат зображень побудований на форматі PNG, передбачує можливість зберігання анімації аналогічно до тієї, котра використовується в форматі GIF, а також кольорів прозорості (прозорість 8 біт на противагу одному прозорому кольору в GIF-зображенні).
Специфікація APNG була розроблена Стюартом Парментером та Владимиром Вукичевичем з Mozilla Corporation для збереження елементів інтерфейсу, таких, як анімація завантаження. Раніше Mozilla відмовилась від MNG (більш потужного формату, який підтримує всі можливості APNG) через немалий розмір MNG-бібліотеки;[2] декодер APNG, побудований безпосередньо на бібліотеці PNG, був набагато меншим.
APNG був погано зустрінутий людьми, які супроводжують специфікації PNG та MNG, вони підкреслювали, що «PNG — це формат для нерухомих зображень».[3] APNG зберігає всі кадри, окрім першого, в додаткових блоках PNG-файлу, отож люди, які працюють з PNG програмами будуть ігнорувати їх. В числі заперечень — неможливо домовитися з сервером про те, що видавати, PNG чи APNG, важко відрізнити один від другого, а стара програма навіть не попередить, що присутні додаткові кадри. Таким чином, в Mozilla повторили ту ж помилку, котру зробили розробники GIF 15 років тому. Гленн Рендерс-Персон запропонував дати APNG новий MIME тип на кшталт video/png
, але Mozilla відмовилась від таких пропозицій на користь повної зворотної сумісності.
20 квітня 2007 року група PNG офіційно відмовилась визнати APNG.[4] Було ще декілька пропозицій простішого анімаційного формату, основаного на PNG, але і вони не пройшли.[5]
В Mozilla Firefox APNG з'явився в версії 3, 23 березня 2007 року.[6] Але, оскільки libpng підтримується все тією ж групою PNG, підтримки формату APNG, швидше за все, в ній ніколи не буде. Браузер Iceweasel в Debian довго не підтримував APNG, але і він в 2011 році перейшов з офіційної бібліотеки на модифікацію Mozilla.[7]
Роль Mozilla в просуванні формату APNG порівнюється з роллю Netscape в просуванні анімаційного GIF.
Також APNG використовується для слайд-шоу в багатьох форматах інтернет-радіо.
APNG — це розширений файл PNG. Перший кадр PNG анімації зберігається як звичайний потік PNG. Декодери, які не підтримують APNG, просто відобразять цей кадр. Всі кадри, крім першого, зберігаються в додаткових блоках (chunks) APNG. Додатковий блок зберігає інформацію про кількість кадрів і повторень анімації.
Щоб зменшити розмір, APNG використовує проміжний буфер (специфікація називає його кадровим буфером). Кожен кадр має свій режим роботи з кадровим буфером:
- None — зберігати кадр в кадровий буфер.
- Background — очищати кадровий буфер.
- Previous — не зберігати кадр в кадровий буфер.
Дата | Програма/версія |
---|---|
14 вересня 2007 | Opera 9.5 (пост-альфа)[8] |
12 червня 2008 | Opera 9.5 (остаточна) та Opera Mobile (не підтримує з 15.0) |
17 червня 2008 | Mozilla Firefox 3.0 (а також інше ПО, ґрунтоване на Gecko, наприклад, SeaMonkey) |
- Internet Explorer та інші браузери на основі браузерного рушія Microsoft Trident (наприклад, Avant Browser, GreenBrowser[ru]).
- Браузери на основі WebKit (наприклад, Safari, Google Chrome, Яндекс браузер, Chromium, Maxthon 3).
- У зв'язку з переходом на браузерний рушій WebKit з Gecko підтримка APNG припинена в браузерах Flock (з версії 3.0 і вище) та Epiphany (з версії 2.28 та вище). З тієї ж причини підтримка APNG припинена в браузері Opera починаючи з версії 15.
- Konqueror
- Для Google Chrome є спеціальне розширення для відображення APNG [Архівовано 9 червня 2012 у Wayback Machine.]. APNG-анімація відображається за допомогою Canvas і JavaScript.
- Для нової (заснованої на WebKit / Blink) версії браузера Opera також існує розширення для відображення APNG.
- Для Mozilla Firefox 3.x були розширення APNG Edit і Animat. Вони дозволяли створювати APNG.
- Існувало розширення svg2apng у Mozilla Firefox 3.x.
- Для Opera є розширення Screenshoter, яке створює APNG зі знімків екрана.
MNG | APNG |
---|---|
Є окремим форматом. | Надбудова формату PNG: якщо декодер не підтримує APNG, він виведе зображення за замовчуванням (наприклад, перший кадр). |
Кожен кадр складається з декількох шарів, що накладаються один на одного; з шарами проводяться складні операції на зразок масштабування та обрізки. | Кожен кадр лише зберігає відмінності від попереднього (як GIF). APNG розроблений з метою зайняти «екологічну нішу» анімаційного GIF і в той же час позбутися деяких його обмежень. |
Складний в реалізації — обсяг специфікації 350 кілобайт. | Простий в реалізації — обсяг специфікації 30 кілобайт. |
Якщо потрібно закодувати чоловічка, що йде, в 4 кадри, MNG може використати той факт, що 1-й і 3-й кадри збігаються. | Не здатний на таку оптимізацію. |
Щоб всі переваги формату проявилися, необхідно використовувати об'єктно-орієнтований редактор анімацій або інтелектуальний кодер. Без цього виграш перед APNG незначний. | Формату APNG байдужа внутрішня структура кадрів і спосіб підготовки анімації. |
Доповнення до Mozilla Firefox:
Розширення Opera:
Програми:
- APNG Anime Maker [Архівовано 9 лютого 2010 у Wayback Machine.]
- JapngEditor [Архівовано 13 жовтня 2014 у Wayback Machine.]
- VirtualDub APNG Mod [Архівовано 1 березня 2014 у Wayback Machine.]
- GIF Movie Gear [Архівовано 25 травня 2014 у Wayback Machine.]
Плагіни APNG:
- APNG Plug-In for GIMP
- APNG Plug-In for Paint.NET [Архівовано 5 червня 2014 у Wayback Machine.]
Інструменти командної строки:
- gif2apng [Архівовано 25 травня 2014 у Wayback Machine.]
- apng2gif [Архівовано 25 травня 2014 у Wayback Machine.]
- apngopt[недоступне посилання з травня 2019]
- apngasm [Архівовано 26 травня 2014 у Wayback Machine.]
- apngdis [Архівовано 26 травня 2014 у Wayback Machine.]
Онлайн створення APNG:
- APNGs.com [Архівовано 28 травня 2014 у Wayback Machine.]
- Animizer.net — створення та редагування APNG і GIF [Архівовано 25 червня 2014 у Wayback Machine.]
- ↑ https://www.w3.org/TR/png/#image-apng — W3C.
- ↑ martin (11 листопада 1999). Bug 18574 - (mng) restore support for MNG animation format and JNG image format. Mozilla. Архів оригіналу за 17 березня 2021. Процитовано 30 березня 2010.
- ↑ PNG (Portable Network Graphics) Specification, Version 1.1#8.4. Multiple-image extension. libpng. Архів оригіналу за 4 червня 2012. Процитовано 30 березня 2010.
- ↑ VOTE FAILED: APNG 20070405a. SourceForge mailing list. 20 квітня 2007. Архів оригіналу за 4 червня 2012. Процитовано 24 травня 2014.
- ↑ Discussion for a simple "animated" PNG format. Архів оригіналу за 26 лютого 2009. Процитовано 12 липня 2011.
- ↑ Gran Paradiso Alpha 3 release notes. Mozilla. 23 березня 2007. Архів оригіналу за 9 травня 2010. Процитовано 30 березня 2010.
- ↑ Debian Bug #486827 Iceweasel cannot render APNG image. Debian. 26 серпня 2011. Архів оригіналу за 4 червня 2012. Процитовано 18 вересня 2011.
- ↑ Opera Desktop Team: Post-Alpha Opera 9.5 Release. Архів оригіналу за 12 березня 2012. Процитовано 24 травня 2014.