Основы форматов

Что такое APNG: анимированный PNG, который обходит GIF

Вы наверняка тысячу раз видели APNG и даже не догадывались об этом: плавный лоадер на сайте, аккуратный стикер в чате, мигающая иконка в приложении. Это формат, где знакомый PNG научился двигаться — но сохранил миллионы цветов и стеклянную прозрачность. Разбираем с нуля, как он устроен и почему тихо вытесняет GIF.

Яркий многоцветный градиент с плавными сферами — символ миллионов цветов и плавной прозрачности APNG
APNG создан для плавных градиентов и чистой прозрачности — там, где GIF сдаётся. Фото: Pexels

Что такое APNG простыми словами

APNG (Animated PNG) — это анимированная версия привычного формата PNG. Если коротко: берём PNG, который умеет показывать одну неподвижную картинку с прозрачностью, и добавляем ему ещё несколько кадров. Получается мини-видео без звука, которое крутится в браузере по кругу — как GIF, но качественнее.

Главное, что нужно запомнить: APNG не выбрасывает ни одного достоинства PNG. Он сохраняет полный цвет (16,7 миллиона оттенков), плавную прозрачность (когда край объекта мягко растворяется, а не обрезается «лесенкой») и сжатие без потерь (картинка ужимается, но ни одна деталь не теряется). Просто теперь всё это умеет двигаться.

Коротко

APNG = PNG + анимация. Это тот же знакомый формат, только кадров внутри несколько. Картинка остаётся чёткой, цвета — настоящими, прозрачность — мягкой. По сути, это «GIF здорового человека».

Откуда взялся формат

APNG родился в 2004 году в недрах Mozilla — компании, которая делает браузер Firefox. Инженерам нужен был лёгкий способ показывать анимированные интерфейсы (вроде вращающегося индикатора загрузки), и они решили не изобретать тяжёлый формат, а просто аккуратно расширить PNG.

Дальше история сделала забавный крюк. Официальная рабочая группа PNG поначалу отказалась принимать APNG в стандарт — мол, идёт вразрез с философией формата. Но браузеры рассудили иначе: Firefox внедрил APNG ещё в 2008 году, за ним подтянулись Safari, Chrome, Edge и Opera. Формат жил и работал годами без формального «благословения».

Точку поставили только недавно: в 2023 году APNG официально включили в третью редакцию стандарта PNG. То, чем браузеры пользовались полтора десятилетия, наконец стало частью официальной спецификации.

Плавный радужный спектр на тёмном фоне — APNG хранит полный спектр цветов без потерь
Полный спектр и плавные переходы — то, что GIF с его 256 цветами повторить не может. Фото: Pexels

Как PNG научился двигаться

Файл PNG внутри устроен из блоков, которые называют чанками (chunks). Это как пронумерованные кирпичики: один хранит размеры, другой — палитру, ещё один — собственно пиксели. APNG добавляет к этому набору всего три новых кирпичика — и этого достаточно, чтобы картинка ожила:

  • acTL — «паспорт анимации». Стоит в начале файла и сообщает: это анимированный PNG, в нём столько-то кадров, и крутить их нужно столько-то раз (ноль означает «бесконечно»).
  • fcTL — «режиссёр кадра». Перед каждым кадром описывает его: размер, положение, сколько миллисекунд держать на экране, что делать со старым кадром перед показом нового.
  • fdAT — «плёнка кадра». Хранит сами пиксели каждого дополнительного кадра (первый кадр лежит в обычном PNG-блоке).

Красота решения — в его экономности. Не нужен новый движок, новый кодек, новая программа. Любая система, которая уже умеет читать PNG, понимает большую часть файла; нужно лишь научить её трём новым чанкам.

Полное имя
Animated PNG
Расширение
.apng / .png
Цвет
До 16,7 млн (24 бита)
Прозрачность
Плавная (8-бит альфа)
Сжатие
Без потерь
Анимация
Да, по кадрам

Главный трюк: старые программы тоже его откроют

Вот самый изящный приём APNG, ради которого его и стоит полюбить. Первый кадр анимации хранится как абсолютно обычный PNG. Все «двигающиеся» данные спрятаны в дополнительных чанках, которые старая программа имеет полное право пропустить.

Что это значит на практике? Откройте APNG в древнем просмотрщике, который про анимацию слыхом не слыхивал, — и вы увидите аккуратную статичную картинку (первый кадр) вместо ошибки или пустого квадрата. Откройте тот же файл в современном браузере — и он оживёт. Один файл одинаково корректно ведёт себя и в прошлом, и в настоящем.

APNG никогда не «ломается»: в худшем случае вы видите красивую неподвижную картинку вместо анимации. Это формат, который умеет вежливо отступать.

Почему APNG обходит GIF

GIF появился в 1987 году, когда экраны показывали жалкую горстку цветов, и с тех пор почти не менялся. Его ограничения сегодня выглядят как привет из каменного века:

ХарактеристикаAPNGGIF
Количество цветов16,7 млн256
ПрозрачностьПлавная (256 уровней)Резкая (вкл/выкл)
Градиенты и тениЧистоЗернисто, полосами
СжатиеБез потерь, эффективнееУстаревший LZW
СовместимостьВсе браузерыВсе браузеры

Самая заметная разница — прозрачность. GIF умеет назначить ровно один цвет «полностью невидимым»; всё остальное непрозрачно. Поэтому стикер на GIF часто окружён уродливой белой или серой каймой. APNG же делает край мягким: пиксель может быть прозрачным на 30%, на 70% — на любую долю. Объект ложится на любой фон чисто, без «грязного ореола».

Когда APNG особенно выигрывает

Логотипы, иконки, стикеры, микроанимации интерфейса, плавные градиентные эффекты — всё, где важны чистые цвета и аккуратные края. Подробнее об этом — в статье APNG против GIF.

Где вы встречаете APNG

APNG — формат-невидимка: вы пользуетесь им каждый день, не подозревая об этом.

  • Стикеры в мессенджерах. Apple ещё в 2016 году выбрала APNG основным форматом для анимированных стикеров iMessage — именно из-за плавной прозрачности.
  • Интерфейсы сайтов и приложений. Лоадеры, переключатели, мелкие подсказки-анимации, эмодзи-реакции.
  • Промо и баннеры. Короткие зацикленные ролики, где важно качество картинки, а не размер файла.

Если хотите глубже — мы разобрали сценарии применения в отдельном материале про APNG в вебе и стикерах.

Яркий многоцветный вихрь — пример плавной анимации интерфейса в формате APNG
Микроанимации интерфейса — родная стихия APNG: чисто, плавно, без зернистости. Фото: Pexels

Как создать и открыть APNG

Создать APNG проще, чем кажется: нужно подготовить несколько кадров в PNG и «склеить» их в анимацию. А чтобы достать из готового APNG один статичный кадр — наоборот, разобрать его обратно в PNG.

1

Подготовьте кадры

Сохраните каждый кадр анимации как отдельный PNG одинакового размера.

2

Соберите анимацию

Загрузите кадры в конвертер PNG → APNG и задайте задержку между ними.

3

Скачайте результат

Готовый APNG откроется в любом современном браузере и встроится в сайт тегом <img>.

Соберите свой первый APNG прямо сейчас

Загрузите несколько PNG-кадров в наш бесплатный конвертер — он склеит их в плавную анимацию за пару секунд, прямо в браузере, без установки.

Сделать APNG из PNG

Нужно наоборот — вытащить кадр из анимации? Поможет конвертер APNG в PNG: он сохранит первый кадр с прозрачностью. А пошаговую инструкцию со всеми инструментами мы собрали в статье как создать APNG. Полный список преобразований — на странице всех форматов.

APNG — это тот же PNG, но с анимацией. Внутри лежит первый кадр в виде обычного PNG плюс дополнительные кадры в служебных чанках. Поэтому файл с расширением .png или .apng выглядит как статичная картинка в старых программах и оживает там, где формат поддерживается.
GIF умеет только 256 цветов и резкую прозрачность «есть/нет». APNG хранит полные 24 бита цвета (16,7 млн оттенков) и плавную 8-битную прозрачность. Поэтому градиенты, тени и сглаженные края в APNG выглядят чисто, без зернистости и грязной каймы вокруг объекта.
Да, все актуальные: Firefox (с 2008), Safari (с 2014), Chrome и Edge (с 2017), Opera. Их APNG не поддерживал только Internet Explorer, который давно снят с поддержки. Если браузер вдруг не знает формат, он просто покажет первый кадр — картинка не сломается.
APNG придумали в Mozilla в 2004 году как простое расширение PNG для анимации. Группа PNG сначала его не приняла официально, но браузеры всё равно внедрили формат. В 2023 году APNG включили в третью редакцию стандарта PNG — теперь это часть официальной спецификации.
Нужно собрать несколько кадров-PNG в один анимированный файл. Проще всего загрузить кадры в онлайн-конвертер PNG → APNG: он склеит их в анимацию с нужной задержкой между кадрами. Обратно вытащить статичный кадр поможет конвертер APNG → PNG.