APNG

Animated Portable Network Graphics
Розширення файлу: .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 використовує проміжний буфер (специфікація називає його кадровим буфером). Кожен кадр має свій режим роботи з кадровим буфером:

  1. None — зберігати кадр в кадровий буфер.
  2. Background — очищати кадровий буфер.
  3. Previous — не зберігати кадр в кадровий буфер.

Підтримка браузерами

Підтримують

Дата Програма/версія
14 вересня 2007 Opera 9.5 (пост-альфа)[8]
12 червня 2008 Opera 9.5 (остаточна) та Opera Mobile (не підтримує з 15.0)
17 червня 2008 Mozilla Firefox 3.0 (а також інше ПО, ґрунтоване на Gecko, наприклад, SeaMonkey)

Не підтримують

Модулі

  • Для 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 зі знімків екрана.

Порівняння APNG і MNG

MNG APNG
Є окремим форматом. Надбудова формату PNG: якщо декодер не підтримує APNG, він виведе зображення за замовчуванням (наприклад, перший кадр).
Кожен кадр складається з декількох шарів, що накладаються один на одного; з шарами проводяться складні операції на зразок масштабування та обрізки. Кожен кадр лише зберігає відмінності від попереднього (як GIF). APNG розроблений з метою зайняти «екологічну нішу» анімаційного GIF і в той же час позбутися деяких його обмежень.
Складний в реалізації — обсяг специфікації 350 кілобайт. Простий в реалізації — обсяг специфікації 30 кілобайт.
Якщо потрібно закодувати чоловічка, що йде, в 4 кадри, MNG може використати той факт, що 1-й і 3-й кадри збігаються. Не здатний на таку оптимізацію.
Щоб всі переваги формату проявилися, необхідно використовувати об'єктно-орієнтований редактор анімацій або інтелектуальний кодер. Без цього виграш перед APNG незначний. Формату APNG байдужа внутрішня структура кадрів і спосіб підготовки анімації.

Як створити APNG

Доповнення до Mozilla Firefox:

  • APNG Edit
  • Animat

Розширення Opera:

  • Screenshoter

Програми:

  • 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.]

Див. також

Примітки

  1. https://www.w3.org/TR/png/#image-apngW3C.
    d:Track:Q37033
  2. martin (11 листопада 1999). Bug 18574 - (mng) restore support for MNG animation format and JNG image format. Mozilla. Архів оригіналу за 17 березня 2021. Процитовано 30 березня 2010.
  3. PNG (Portable Network Graphics) Specification, Version 1.1#8.4. Multiple-image extension. libpng. Архів оригіналу за 4 червня 2012. Процитовано 30 березня 2010.
  4. VOTE FAILED: APNG 20070405a. SourceForge mailing list. 20 квітня 2007. Архів оригіналу за 4 червня 2012. Процитовано 24 травня 2014.
  5. Discussion for a simple "animated" PNG format. Архів оригіналу за 26 лютого 2009. Процитовано 12 липня 2011.
  6. Gran Paradiso Alpha 3 release notes. Mozilla. 23 березня 2007. Архів оригіналу за 9 травня 2010. Процитовано 30 березня 2010.
  7. Debian Bug #486827 Iceweasel cannot render APNG image. Debian. 26 серпня 2011. Архів оригіналу за 4 червня 2012. Процитовано 18 вересня 2011.
  8. Opera Desktop Team: Post-Alpha Opera 9.5 Release. Архів оригіналу за 12 березня 2012. Процитовано 24 травня 2014.
  • п
  • о
  • р
Растрові формати
Raw
  • CIFF[en]
  • DNG
  • ORF[en]
Векторні формати
Комплексні формати
Пов'язані формати
  • Категорія Категорія:Графічні формати
  • Не-стаття Порівняння
    • п
    • о
    • р
    Стиснення відео
    ISO/IEC
    ITU-T
    SMPTE[en]
    • VC-1[en]
    • VC-2[en]
    • VC-3[en]
    • VC-5[en]
    AOMedia[en]
    IETF
    SAC
    • AVS[en]
    Інші
    • Apple Video[en]
    • Bink[en]
    • Cinepak[en]
    • Daala
    • DVI
    • FFV1[en]
    • HuffYUV
    • Indeo[en]
    • Lagarith[en]
    • Microsoft Video 1[en]
    • MSU Lossless[en]
    • OMS Video[en]
    • Pixlet[en]
    • ProRes 422[en]
    • ProRes 4444[en]
    • QuickTime
      • Animation[en]
      • Graphics[en]
    • RealVideo
    • RTVideo[en]
    • SheerVideo[en]
    • Smacker[en]
    • Sorenson Video, Spark[en]
    • Theora
    • Thor[en]
    • VP3[en]
    • VP6[en]
    • VP7[en]
    • VP9
    • WMV
    • XEB[en]
    • YULS[en]
    Стиснення аудіо
    ISO/IEC
    ITU-T
    IETF
    • Opus
    • iLBC[en]
    • Speex[en]
    • Vorbis
    3GPP
    • AMR
    • AMR-WB[en]
    • AMR-WB+[en]
    • EVRC[en]
    • EVRC-B[en]
    • EVS[en]
    • GSM-HR
    • GSM-FR
    • GSM-EFR
    ETSI
    SAC
    • AVS[en]
    • DRA[en]
    Інші
    Стиснення зображень
    IEC, ISO,
    ITU-T, W3C, IETF
    Інші
    Контейнери
    ISO/IEC
    • MPEG-ES[en]
      • MPEG-PES
    • MPEG-PS[en]
    • MPEG-TS
    • ISO base media file format[en]
    • MPEG-4 Part 14 (MP4)
    • Motion JPEG 2000[en]
    • MPEG-21 Part 9[en]
    • MPEG media transport[en]
    ITU-T
    IETF
    SMPTE[en]
    3GPP
    Інші
    Співробітництво
    • NETVC[en]
    • MPEG-LA[en]