MNG
- 1 year ago
- 0
- 0
MNG ( англ. Multiple-image Network Graphics ) — формат графических файлов. Поддерживает все возможности алгоритмов сжатия PNG и JPEG (в том числе полупрозрачность и гамма-коррекцию) для создания анимированных изображений. Поддерживается в браузере Konqueror , поддерживался в браузере Mozilla с 2000 до 2003 года.
MNG близко связан с PNG. Когда в 1995 началась разработка формата PNG, разработчики решили не включать поддержку анимации, так как в то время эта особенность использовалась редко. Тем не менее, началась работа над MNG — версией PNG с поддержкой анимации. Первая версия спецификации MNG вышла 31 января 2001 .
В настоящий момент MNG не поддерживается популярными ПО и браузерами. Также существует формат APNG , который намного проще MNG.
Основные преимущества формата, по сравнению с GIF (поддерживает анимацию), JPEG (обеспечивает наименьший размер файла за счет потерь при сжатии) и PNG (сжатие без искажений).
В целом структура файлов формата MNG такая же, как и у PNG , отличаясь только в метке идентификации (8A 4D 4E 47 0D 0A 1A 0A в шестнадцатеричном формате) и использовании гораздо большего числа разновидностей блоков (chunk). Кадры MNG сохраняются как PNG или JNG .
Формат MNG представляет собой упрощённый растровый аналог Adobe Flash : каждый кадр состоит из большого количества слоёв, которые можно двигать друг относительно друга, масштабировать и обрезать. Из-за этого поддержка формата MNG довольно сложна.
Также определены две упрощённые версии спецификации: MNG-LC (низкая сложность) и MNG-VLC (очень низкая сложность). Они позволяют реализовать частичную поддержку формата MNG, чтобы уменьшить сложность реализации программы. Это важно для устройств с очень ограниченными ресурсами: мобильные телефоны и т. п.
У MNG ещё нет зарегистрированного типа MIME , но можно использовать video/x-mng или image/x-mng .
Каждый из кадров может быть закодирован в MNG как с потерей информации ( JPEG -компрессия), так и без потерь (компрессия LZ77 , применяемая в PNG ).
На данное время главный соперник — GIF , в силу его полной поддержки. Другой альтернативой является APNG . Также может использоваться анимация SVG с внедрёнными PNG- или JPEG -кадрами.
Библиотеку libmng можно портировать при помощи Emscripten . При этом возможен рендеринг через HTML5 ( canvas ). Также возможна поддержка и динамических MNG.