AdvanceCOMP Compression Utilities — это набор компактных консольных утилит для рекомпрессии файлов без изменения их основного содержимого. В пакет входят advpng, advzip, advmng и advdef: каждая команда отвечает за свой тип данных и решает конкретную задачу — уменьшить размер PNG, ZIP, MNG, GZ, TGZ или SVGZ за счет повторного сжатия Deflate-потока и связанных с ним структур. В отличие от обычного архиватора, программа не делает упор на удобную упаковку файлов через графическое окно. Ее сильная сторона — точечная оптимизация уже существующих файлов, работа в терминале, запуск из скриптов и предсказуемое поведение в автоматизированных сборках.
Выбор редакции
Скачать AdvanceCOMP бесплатно
ФотоМАСТЕР
- Простой интерфейс
- Ретушь и замена фона
- Фильтры и автокоррекция
- Быстрая обработка фото
AdvanceCOMP
- Узкая задача
- Мало инструментов ретуши
- Нет замены фона
- Слабее для обработки
Это не редактор изображений, не универсальный компрессор медиафайлов и не программа с кнопками Открыть, Сжать и Сохранить. Интерфейс AdvanceCOMP — командная строка. Пользователь вводит команду, выбирает режим, указывает уровень сжатия и передает путь к файлу. Такой формат выглядит сухо, но именно он делает программу удобной для разработчиков, системных администраторов, авторов игровых сборок, веб-разработчиков и тех, кто регулярно оптимизирует ассеты пакетно.

AdvanceCOMP особенно полезна там, где важен каждый килобайт: ZIP-архивы для публикации, PNG-графика в веб-проекте, SVGZ-иконки, GZIP-файлы, ROM-коллекции, MNG-захваты из эмуляторов, небольшие игровые проекты и демосценические сборки. Программа не обещает магического сжатия всего подряд. Она делает более узкую работу: берет уже сжатый файл и пытается пересобрать его плотнее.
Что такое AdvanceCOMP
AdvanceCOMP — это коллекция рекомпрессоров. Слово recompression здесь ключевое: программа обычно не создает новый формат и не меняет смысл файла, а повторно сжимает данные внутри поддерживаемого контейнера. Для PNG это означает работу с PNG-структурой и Deflate-данными изображения; для ZIP — повторное сжатие элементов архива; для GZ, TGZ и SVGZ — рекомпрессию Deflate-потока; для MNG — оптимизацию анимационных клипов, связанных с PNG-семейством.
В состав пакета входят четыре основные утилиты:
| Утилита | Полное назначение | Что делает на практике |
|---|---|---|
advpng | AdvanceCOMP PNG Compression Utility | Рекомпрессирует PNG-файлы, выводит информацию о PNG, применяет уровни -1, -2, -3, -4 |
advzip | AdvanceCOMP ZIP Compression Utility | Создает, распаковывает, проверяет, просматривает и рекомпрессирует ZIP-архивы |
advmng | AdvanceCOMP MNG Compression Utility | Рекомпрессирует MNG-клипы, извлекает PNG-кадры, создает MNG из PNG-последовательности |
advdef | AdvanceCOMP Deflate Compression Utility | Рекомпрессирует Deflate-данные внутри PNG, MNG, GZ, TGZ и SVGZ |
Такое разделение важно. У AdvanceCOMP нет главного режима, который сам догадывается, что пользователь хотел сделать. Для PNG используется advpng, для ZIP — advzip, для MNG — advmng, для общего Deflate-потока — advdef. Это не недостаток, а архитектура программы: каждая команда короче, проще и точнее.
Назначение программы
Главная задача AdvanceCOMP — уменьшить размер файлов без потери основного содержимого. В случае PNG программа не меняет пиксели изображения, как это делают lossy-компрессоры. В случае ZIP она не меняет распакованные файлы внутри архива. В случае GZ, TGZ и SVGZ она работает с уже сжатым потоком и пытается записать его компактнее.
Типичные сценарии выглядят так:
- PNG-иконки в проекте стали меньше, но визуально остались теми же;
- ZIP-архив после финальной сборки прошел дополнительную рекомпрессию;
- SVGZ-файл с векторной графикой стал компактнее;
- MNG-захват из эмулятора был разобран на PNG-кадры;
- GZIP-файл был пересжат на более сильном уровне;
- пакетная обработка PNG встроена в Makefile, shell-скрипт или CI/CD.
AdvanceCOMP подходит не для интерактивного редактирования, а для финальной полировки файлов. Это утилита последнего прохода: сначала проект собирается обычными инструментами, потом файлы прогоняются через advpng, advzip или advdef.
Что программа делает хорошо
AdvanceCOMP хороша в задачах, где нужно не открыть файл и посмотреть, а быстро применить одну операцию к одному или множеству файлов. Особенно сильны следующие сценарии:
- Lossless compression PNG
advpngуменьшает PNG за счет рекомпрессии и оптимизации структуры файла. Программа удаляет вспомогательные PNG-блоки, объединяет IDAT-блоки и использует Deflate-сжатие. - ZIP recompression
advzipполезен для финальной обработки ZIP-архивов. Он умеет добавлять файлы в архив, извлекать содержимое, показывать список файлов, тестировать архив и выполнять рекомпрессию через-z. - Работа с Deflate-потоками
advdefудобен для.gz,.tgz,.svgz, а также для некоторых PNG и MNG-сценариев. Он не перестраивает весь файл как редактор, а меняет именно сжатые данные внутри поддерживаемого формата. - MNG-оптимизация и извлечение кадров
advmngполезен для старых эмуляторных и MAME-сценариев: MNG-клип можно рекомпрессировать или извлечь из него PNG-последовательность. - Автоматизация
Утилиты легко запускать из скриптов. Команда вродеadvpng -z -4 *.pngобрабатывает набор файлов без графического интерфейса, без ручного выбора каждого изображения и без лишних диалогов.
Что AdvanceCOMP не делает
AdvanceCOMP нельзя оценивать как обычный графический оптимизатор изображений. У программы другая роль.
Она не делает следующие вещи:
- не редактирует изображения;
- не кадрирует PNG;
- не меняет разрешение;
- не конвертирует JPEG в PNG;
- не работает как полноценный графический архиватор с деревом файлов;
- не показывает предпросмотр до и после;
- не сравнивает визуальное качество;
- не сжимает JPEG, WebP, AVIF;
- не заменяет ImageMagick, Photoshop, GIMP или 7-Zip;
- не дает современного drag-and-drop интерфейса.
Это важно понимать заранее. Пользователь, который ожидает окно с кнопками и предпросмотром, быстро разочаруется. Пользователь, которому нужна CLI-утилита для рекомпрессии PNG, ZIP, GZ, SVGZ и MNG, получит именно то, что нужно.
Состав пакета AdvanceCOMP
advpng
advpng — утилита для работы с PNG. Ее основная задача — рекомпрессия PNG-файлов с целью уменьшения размера. В команде используются режимы --list и --recompress, уровни сжатия от --shrink-fast до --shrink-insane, а также дополнительные параметры вроде --iter, --force, --quiet, --help и --version.
Базовая команда:
advpng -z image.png Максимальный режим:
advpng -z -4 image.png Пакетная обработка:
advpng -z -4 *.png advpng особенно уместен для PNG-ассетов: иконок, спрайтов, UI-графики, скриншотов, небольших веб-изображений и игровых ресурсов. Он не должен использоваться как универсальный PNG-валидатор для любых экзотических PNG-файлов. На практике это означает простое правило: перед массовой обработкой нужно проверить результат на копии файлов.
advzip
advzip — утилита для ZIP-архивов. Она умеет:
-a,--add— создать архив с указанными файлами;-x,--extract— извлечь содержимое архива;-l,--list— показать список файлов в архиве;-t,--test— проверить архив;-z,--recompress— рекомпрессировать архив;-p,--pedantic— выполнить более строгие проверки;-k,--keep-file-time— сохранить время ZIP-файла при рекомпрессии;-i,--iter N— задать дополнительные итерации для сильных режимов.
Базовый просмотр:
advzip -l archive.zip Проверка:
advzip -t archive.zip Рекомпрессия:
advzip -z archive.zip Максимальная рекомпрессия:
advzip -z -4 archive.zip advzip хорошо подходит для готовых ZIP-дистрибутивов, мини-игр, архивов с ассетами, конкурсных сборок и ситуаций, где нельзя менять содержимое, но можно попытаться уменьшить сам ZIP.
advmng
advmng работает с MNG. Формат MNG сейчас встречается редко, но в контексте AdvanceCOMP он важен из-за связи с эмуляторными сценариями и видеозахватом из старых MAME-процессов. Утилита умеет рекомпрессировать MNG, извлекать PNG-кадры и собирать MNG из PNG-последовательности.
Основные команды:
advmng -l clip.mng advmng -z clip.mng advmng --extract clip.mng Создание MNG из PNG-последовательности:
advmng -a 60 output.mng frame0001.png frame0002.png frame0003.png advmng также поддерживает опции, связанные с MNG-спецификой: scroll-оптимизацию, уменьшение глубины цвета, удаление альфа-канала и режимы LC/VLC. Это делает утилиту узкоспециализированной: обычному веб-разработчику она может не понадобиться, но для старых MNG-процессов она закрывает задачу напрямую.
advdef
advdef — самый низкоуровневый инструмент пакета. Он работает с Deflate-данными в .png, .mng, .gz, .tgz и .svgz. Важная особенность: структура файла не перестраивается целиком, изменяются именно сжатые данные.
Базовая команда:
advdef -z file.gz Максимальный режим:
advdef -z -4 file.svgz С итерациями:
advdef -z -4 -i 50 file.svgz advdef удобно использовать для SVGZ-иконок, gzip-ресурсов и TGZ-архивов, когда нужна именно Deflate-рекомпрессия, а не полноценное архивное управление.
Интерфейс программы
Интерфейс AdvanceCOMP — это терминал. У программы нет панелей, меню, вкладок и кнопок. Вместо них есть структура команды:
утилита режим уровень файл Пример:
advpng -z -4 image.png Расшифровка:
| Часть команды | Значение |
advpng | Запускается PNG-утилита из пакета |
-z | Включается режим рекомпрессии |
-4 | Выбирается максимальный уровень |
image.png | Указывается файл для обработки |
С точки зрения пользователя, элементы интерфейса AdvanceCOMP — это не кнопки, а команды и флаги:
| Элемент CLI | Для чего нужен |
--help | Показать справку |
--version | Показать версию утилиты |
--list / -l | Просмотреть содержимое файла или архива |
--recompress / -z | Выполнить рекомпрессию |
--extract / -x | Извлечь данные |
--test / -t | Проверить ZIP |
--quiet / -q | Сократить вывод |
--force / -f | Принудительно принять результат даже при увеличении размера |
--iter / -i | Задать дополнительные итерации для сильных режимов |

CLI-интерфейс требует аккуратности. Ошибка в пути, запуск не из той папки или отсутствие прав на запись сразу приводят к ошибке. Но этот же интерфейс дает преимущество: команды легко повторить, вставить в документацию проекта, добавить в скрипт или выполнить для сотен файлов.
Работа с advpng: оптимизация PNG
advpng — самый понятный инструмент в пакете, если задача связана с изображениями. Он не меняет картинку как редактор. Он берет PNG-файл и пытается записать его компактнее.
Просмотр справки
Первое действие после установки и проверки доступности утилиты:
advpng --help Справка показывает доступные режимы: --list, --recompress, уровни --shrink-store, --shrink-fast, --shrink-normal, --shrink-extra, --shrink-insane, а также параметры --force, --quiet, --help, --version.
Просмотр информации о PNG
Команда:
advpng -l image.png Режим -l не сжимает файл, а показывает содержимое. Это полезно перед обработкой: можно убедиться, что утилита читает файл, путь указан верно, а сам PNG не поврежден.
Базовая рекомпрессия PNG
Команда:
advpng -z image.png -z — основной режим. Он означает recompress. Утилита анализирует файл, пробует записать сжатые данные компактнее и сохраняет результат.
Перед применением к рабочей папке лучше создать копию:
cp image.png image.backup.png
advpng -z image.png В Windows:
Copy-Item image.png image.backup.png
advpng -z image.png Причина простая: AdvanceCOMP работает с исходным файлом. Если результат нужно сравнить, резервная копия обязательна.
Уровни сжатия PNG
У advpng есть несколько уровней:
advpng -z -1 image.png
advpng -z -2 image.png
advpng -z -3 image.png
advpng -z -4 image.png Таблица уровней:
| Опция | Название | Практический смысл |
-0 | --shrink-store | Записать без сжатия, обычно не нужно для оптимизации PNG |
-1 | --shrink-fast | Быстрое сжатие |
-2 | --shrink-normal | Нормальный баланс скорости и размера |
-3 | --shrink-extra | Более сильный режим |
-4 | --shrink-insane | Максимальный режим, медленнее остальных |
Для обычной работы чаще всего используют -2 или -4. Режим -2 удобен для регулярной обработки, -4 — для финального прохода перед публикацией. В сильных режимах можно использовать -i, чтобы задать дополнительные итерации; больше итераций иногда дает меньший файл, но обработка занимает больше времени.
Пример:
advpng -z -4 -i 20 image.png Пакетная обработка PNG
В Linux и macOS:
advpng -z -4 *.png Для подпапок через find:
find assets -name "*.png" -exec advpng -z -4 {} ; В Windows PowerShell:
Get-ChildItem -Path . -Filter *.png | ForEach-Object {
advpng -z -4 $_.FullName
} Для рекурсивной обработки:
Get-ChildItem -Path . -Filter *.png -Recurse | ForEach-Object {
advpng -z -4 $_.FullName
} Такие команды хорошо подходят для папок assets, images, icons, sprites, ui, textures. Главное — заранее исключить файлы, которые не должны терять вспомогательные PNG-метаданные.
Что происходит с PNG внутри
PNG содержит разные блоки. Критические блоки нужны для изображения, вспомогательные могут хранить метаданные, текстовые поля, цветовую информацию, гамму, DPI и другие сведения. advpng применяет несколько стратегий: удаляет ancillary chunks, объединяет IDAT chunks и использует Deflate-сжатие.
На практике это означает:
- пиксели обычно остаются теми же;
- размер может уменьшиться;
- часть метаданных может исчезнуть;
- файл может стать удобнее для веб-публикации;
- если метаданные важны, результат надо проверять отдельно.
Для иконок, спрайтов и веб-графики это обычно приемлемо. Для архивных изображений, цветокоррекционных файлов, PNG с важными текстовыми chunk-данными или специализированной графики — нет, пока не проверено.
Работа с advzip: рекомпрессия ZIP-архивов
advzip — не просто маленький архиватор. Его главная ценность — рекомпрессия уже готовых ZIP-архивов. Он может создать архив, распаковать его, показать список файлов, протестировать целостность и пересжать содержимое.
Просмотр содержимого ZIP
advzip -l archive.zip Команда выводит список файлов внутри архива. Это первый безопасный шаг: файл не меняется, пользователь просто проверяет, что архив читается.
Проверка архива
advzip -t archive.zip Режим -t проверяет архив. Перед рекомпрессией это полезно: если исходный ZIP уже поврежден, оптимизация не должна быть первым действием.
Более строгая проверка:
advzip -t -p archive.zip -p, или --pedantic, включает более детальные проверки ZIP-целостности. Этот режим полезен, когда архив должен быть максимально совместимым и надежным.
Рекомпрессия ZIP
Базовая команда:
advzip -z archive.zip С максимальным уровнем:
advzip -z -4 archive.zip С сохранением времени ZIP-файла:
advzip -z -4 -k archive.zip С итерациями:
advzip -z -4 -i 100 archive.zip Параметр -i особенно интересен для сильных режимов -3 и -4: он задает дополнительные итерации компрессора. Больше итераций обычно означает больше времени и иногда меньший размер. Это не линейная зависимость: переход с 10 до 20 итераций может дать эффект, а переход со 100 до 1000 — уже почти ничего, кроме долгого ожидания.
Создание ZIP через advzip
advzip -a archive.zip file1.txt file2.txt image.png advzip может создать архив, но в повседневной работе чаще используют обычный архиватор или системную команду, а потом прогоняют результат через advzip -z -4.
Извлечение ZIP
advzip -x archive.zip Этот режим полезен для простых случаев, но не делает advzip полноценной заменой 7-Zip, WinRAR или системным ZIP-инструментам. Утилита рассчитана прежде всего на рекомпрессию и тестирование.
Когда advzip особенно полезен
advzip имеет смысл использовать:
- перед отправкой ZIP-дистрибутива;
- перед загрузкой конкурсной сборки;
- при ограничении размера файла;
- для финальной упаковки web/game assets;
- для ZIP-архивов, которые уже собраны другим инструментом;
- когда нужно автоматизировать оптимизацию в скрипте.
Пример финального шага сборки:
zip -r build.zip dist
advzip -z -4 build.zip
advzip -t build.zip Работа с advdef: рекомпрессия Deflate-данных
advdef — инструмент для случаев, когда нужно обработать Deflate-поток внутри поддерживаемого файла. Он работает с .png, .mng, .gz, .tgz и .svgz. Его особенность в том, что он не меняет внутреннюю структуру файла, а модифицирует только сжатые данные.
Базовая команда
advdef -z file.gz Максимальное сжатие
advdef -z -4 file.gz SVGZ
advdef -z -4 icon.svgz SVGZ — это SVG, сжатый GZIP. Поэтому advdef подходит для рекомпрессии SVGZ-иконок, если проект использует такой формат.
TGZ
advdef -z -4 archive.tgz TGZ — это tar-архив, сжатый gzip. advdef не управляет файлами внутри tar-архива, не добавляет и не удаляет их. Он работает с gzip-слоем.
Когда использовать advdef вместо advpng
Для PNG чаще логичнее начинать с advpng, потому что это специализированная PNG-утилита. advdef стоит использовать, когда нужна именно Deflate-рекомпрессия или когда файл относится к .gz, .tgz, .svgz.
Упрощенное правило:
| Задача | Лучше использовать |
| Оптимизировать PNG-ассеты | advpng |
| Рекомпрессировать ZIP | advzip |
| Рекомпрессировать SVGZ | advdef |
| Рекомпрессировать GZ/TGZ | advdef |
| Извлечь PNG-кадры из MNG | advmng |
| Рекомпрессировать MNG | advmng |
Ограничение advdef
advdef требует памяти для обработки полного сжатого и несжатого содержимого. Поэтому огромные файлы могут стать проблемой. Для больших архивов и ресурсов нужно тестировать обработку отдельно, а не запускать ее вслепую на единственной копии данных.
Работа с advmng: MNG, кадры и эмуляторные сценарии
advmng — самый нишевый инструмент в пакете. MNG сейчас не является массовым веб-форматом, но в истории AdvanceCOMP он занимает важное место: программа создавалась с учетом ROM, snapshot и clip-коллекций эмулируемых игр.

Просмотр MNG
advmng -l clip.mng Команда выводит информацию о файле. Это безопасный режим перед дальнейшей обработкой.
Рекомпрессия MNG
advmng -z clip.mng С максимальным уровнем:
advmng -z -4 clip.mng Режим -4 для advmng очень медленный, поэтому его стоит использовать для финальной обработки, а не для каждого промежуточного теста.
Извлечение PNG-кадров
advmng --extract clip.mng Или коротко:
advmng -x clip.mng Эта команда извлекает PNG-кадры из MNG-клипа. Для длинных клипов количество файлов может быть большим: каждый кадр становится отдельным PNG.

Создание MNG из PNG-последовательности
advmng -a 60 output.mng frame0001.png frame0002.png frame0003.png В этой команде 60 — частота кадров. PNG-файлы должны иметь одинаковый размер и одинаковую битовую глубину.
Scroll и Move-оптимизация
advmng умеет использовать MNG Delta и MNG Move для клипов, где между кадрами меняется не все изображение, а только часть сцены. Это особенно характерно для игровых записей со скроллящимся фоном. Опция -s HxV задает размер шаблона для поиска скроллящегося фона.
Пример:
advmng -z -s 8x8 clip.mng Если фон движется только вертикально:
advmng -z -s 0x16 clip.mng Если только горизонтально:
advmng -z -s 16x0 clip.mng Это не повседневная веб-оптимизация, а специализированная обработка MNG-клипов.
Уровни сжатия AdvanceCOMP
AdvanceCOMP использует понятную шкалу уровней:
| Опция | Длинное имя | Значение | Практический сценарий |
-0 | --shrink-store | Не сжимать | Технические тесты, хранение без сжатия |
-1 | --shrink-fast | Быстрое сжатие | Быстрый проход по большому числу файлов |
-2 | --shrink-normal | Нормальный режим | Повседневная обработка |
-3 | --shrink-extra | Более сильное сжатие | Финальная оптимизация |
-4 | --shrink-insane | Максимальный режим | Когда размер важнее времени |
В advpng, advzip и advdef сильные режимы связаны с более затратными компрессорами и дополнительными итерациями. Для advzip и advdef режим -2 использует libdeflate, -3 — 7z, -4 — zopfli; итерации задаются через -i.
Практический подход:
- для черновой обработки —
-1или-2; - для регулярной сборки —
-2; - для релизной сборки —
-4; - для жесткого лимита размера —
-4 -i N; - для огромных файлов — сначала тест на копии.
Практическая инструкция: первый запуск
Шаг 1. Открыть терминал в папке с утилитами
В Windows это может быть cmd.exe или PowerShell. В Linux и macOS — обычный терминал. После перехода в папку с программой можно проверить, что рядом находятся исполняемые файлы advpng, advzip, advmng, advdef или их Windows-варианты с .exe.
Пример Windows-проверки:
dir Ожидаемые файлы:
advdef.exe
advmng.exe
advpng.exe
advzip.exe Шаг 2. Проверить запуск
advpng --version
advzip --version
advdef --version
advmng --version Если терминал пишет, что команда не найдена, проблема не в PNG или ZIP, а в пути запуска: программа не находится в текущей папке или не добавлена в PATH.
Шаг 3. Скопировать тестовый PNG
cp image.png image-test.png В Windows PowerShell:
Copy-Item image.png image-test.png Шаг 4. Выполнить оптимизацию PNG
advpng -z -4 image-test.png После выполнения нужно сравнить размер исходного и обработанного файла. Если результат устраивает, команду можно применять к группе PNG.
Шаг 5. Создать тестовый ZIP
zip -r test.zip assets Если ZIP уже есть, этот шаг не нужен.
Шаг 6. Проверить ZIP
advzip -t test.zip Шаг 7. Рекомпрессировать ZIP
advzip -z -4 test.zip Шаг 8. Проверить архив после обработки
advzip -t test.zip Проверка после рекомпрессии обязательна для важных архивов. Особенно если ZIP должен открываться разными программами и использоваться не только на машине разработчика.
Рекомендованные команды для разных задач
| Сценарий | Команда |
| Быстро оптимизировать PNG | advpng -z -2 image.png |
| Максимально оптимизировать PNG | advpng -z -4 image.png |
| Обработать все PNG в папке | advpng -z -4 *.png |
| Просмотреть ZIP | advzip -l archive.zip |
| Проверить ZIP | advzip -t archive.zip |
| Максимально рекомпрессировать ZIP | advzip -z -4 archive.zip |
| Рекомпрессировать ZIP с итерациями | advzip -z -4 -i 100 archive.zip |
| Оптимизировать SVGZ | advdef -z -4 icon.svgz |
| Оптимизировать GZ | advdef -z -4 file.gz |
| Извлечь кадры из MNG | advmng --extract clip.mng |
| Рекомпрессировать MNG | advmng -z -4 clip.mng |
Примеры реального использования
Оптимизация PNG-ассетов сайта
find public/images -name "*.png" -exec advpng -z -4 {} ; Такой запуск подходит для статического сайта, где PNG используются как иконки, скриншоты интерфейса, элементы UI или декоративная графика. После обработки нужно проверить страницы в браузере, особенно если PNG содержали нестандартные метаданные.
Оптимизация PNG в игровом проекте
advpng -z -4 assets/ui/*.png
advpng -z -4 assets/sprites/*.png
advpng -z -4 assets/tiles/*.png Для 2D-игр это типичный сценарий: множество небольших PNG, где суммарная экономия может быть заметной.
Финальная рекомпрессия ZIP-сборки
zip -r release.zip build
advzip -z -4 release.zip
advzip -t release.zip Команда не меняет файлы внутри сборки, а пытается сделать ZIP компактнее.
Рекомпрессия с большим числом итераций
advzip -z -4 -i 200 release.zip Подходит для финального файла, который сжимается один раз и долго хранится или публикуется. Для ежедневной сборки такой режим обычно слишком медленный.
SVGZ-иконки
advdef -z -4 icons/logo.svgz Если проект хранит SVGZ, advdef позволяет уменьшить размер без ручной распаковки и повторной упаковки SVG.
MNG-захват
advmng --extract gameplay.mng После этого в папке появится последовательность PNG-кадров. Ее можно обрабатывать дальше: собирать видео, анализировать кадры, архивировать, конвертировать или использовать в другом pipeline.
Безопасность обработки файлов
AdvanceCOMP часто перезаписывает файл результатом обработки. Это удобно для автоматизации, но рискованно при неаккуратном запуске.
Перед массовой обработкой нужно соблюдать несколько правил:
- не запускать команду на единственной копии проекта;
- сначала проверять 2–3 файла вручную;
- сравнивать размер до и после;
- открывать обработанный PNG в целевом просмотрщике;
- проверять ZIP через
advzip -t; - хранить исходники в системе контроля версий;
- не использовать
-f, если нет ясной причины.
Опция -f, или --force, принудительно принимает новый файл даже в случае, если он больше старого. В обычной оптимизации это почти никогда не нужно. Она полезна только для специальных тестов, где важно переписать файл независимо от результата.
Производительность
Скорость AdvanceCOMP зависит от пяти факторов:
- Тип файла
PNG, ZIP, GZ, TGZ, SVGZ и MNG обрабатываются по-разному. - Размер файла
Маленькие иконки обрабатываются быстро, большие архивы и длинные MNG-клипы — дольше. - Уровень сжатия
-1быстрее,-4медленнее. - Количество итераций
-i 10,-i 50,-i 100и выше увеличивают время обработки. - Содержимое файла
Уже хорошо оптимизированный PNG может почти не уменьшиться, а плохо сохраненный PNG — уменьшиться заметнее.
Главное правило: максимальный режим не должен быть режимом по умолчанию для всех задач. Для разработки удобнее -2, для финального релиза — -4. Если включать -4 -i 1000 в каждую сборку, программа начнет тормозить процесс сильнее, чем приносить пользы.
Качество сжатия
AdvanceCOMP ориентирован на lossless-рекомпрессию. Для PNG это означает сохранение изображения без визуальной потери качества. Но без потери картинки не всегда означает без потери всех данных файла. PNG может содержать вспомогательные блоки, и advpng удаляет ancillary chunks при оптимизации.
Что обычно сохраняется:
- видимое изображение;
- размеры;
- пиксельное содержимое;
- возможность открыть файл как PNG.
Что может измениться:
- метаданные;
- текстовые блоки;
- служебная информация;
- часть цветовых или вспомогательных данных, если они были записаны как ancillary chunks.
Поэтому для веб-иконок и игровых спрайтов advpng обычно подходит хорошо. Для PNG, где метаданные важны сами по себе, нужно использовать более осторожный инструмент или хранить исходный файл отдельно.
История версий программы
История AdvanceCOMP хорошо показывает, что программа развивалась не как модный GUI-компрессор, а как инженерный набор утилит вокруг ZIP, PNG, MNG и Deflate.
| Период / версия | Что изменилось |
| AdvanceSCAN 0.6-beta, 2002/05 | Появилась AdvanceZIP utility |
| AdvanceSCAN 1.0, 2002/05 | Первый публичный релиз, добавлен --pedantic для advzip |
| AdvanceSCAN 1.2, 2002/08 | Добавлены advpng, advmng и Windows-версия |
| AdvanceCOMP 1.5, 2003/01 | Пакет отделен от AdvanceSCAN, добавлена advdef |
| AdvanceCOMP 1.6, 2003/05 | advmng получил экспорт PNG из MNG через -x |
| AdvanceCOMP 1.8, 2003/10 | advdef получил поддержку .gz, исправлена работа с PNG со split IDAT |
| AdvanceCOMP 1.9, 2003/11 | Добавлена поддержка .tgz в advdef, advmng -a начал создавать MNG из PNG-последовательности |
| AdvanceCOMP 1.10, 2004/04 | Добавлена поддержка alpha channel и опция -n в advmng |
| AdvanceCOMP 1.13, 2004/11 | Добавлена поддержка .svgz в advdef |
| AdvanceCOMP 1.15, 2005/10 | advdef начал определять тип файла по заголовку, а не только по расширению |
| AdvanceCOMP 1.17, 2013/03 | Лицензия изменена на GPL3, добавлена поддержка zopfli через -4 --shrink-insane, появился -i --iter |
| AdvanceCOMP 1.19, 2014/03 | Добавлена опция -k --keep-file-time для advzip |
| AdvanceCOMP 1.20, 2015/08 | Исправлена рекомпрессия больших .gz, обновлен zopfli, сохранение EFS-флага в ZIP |
| AdvanceCOMP 2.0, 2017/06 | Добавлено чтение MNG с глубиной 1, 2 и 4 бита, добавлен 64-битный Windows-бинарник |
| AdvanceCOMP 2.1, 2018/02 | Добавлена поддержка ZIP с data descriptor signature, исправлено аварийное завершение на некорректных ZIP-данных |
Эта история объясняет характер программы. AdvanceCOMP развивалась вокруг практических задач: ZIP-совместимость, поддержка новых контейнеров для advdef, MNG-особенности, zopfli, итерации, исправления больших GZIP-файлов и аккуратность при работе с архивами.
Плюсы AdvanceCOMP
Компактный набор инструментов
AdvanceCOMP не перегружен функциями. В пакете четыре утилиты, и каждая отвечает за конкретную область. Это удобно: не нужно разбираться в большом интерфейсе, выбирать профиль экспорта или искать скрытую настройку.
Удобство автоматизации
CLI-формат — главное преимущество. Команды легко встроить в:
- shell-скрипт;
- PowerShell-сценарий;
- Makefile;
- npm scripts;
- GitHub Actions;
- Dockerfile;
- локальный build pipeline;
- финальный release script.
Поддержка нескольких форматов
Пакет работает не только с PNG. В одном наборе есть инструменты для ZIP, MNG, GZ, TGZ и SVGZ. Это отличает его от узких PNG-оптимизаторов.
Сильные режимы сжатия
-4 --shrink-insane и -i --iter полезны в сценариях, где размер важнее времени. Это особенно актуально для маленьких ZIP-сборок, конкурсных проектов, веб-ассетов и архивов, которые публикуются один раз.
Предсказуемость
Команды простые и повторяемые. Если в документации проекта написано:
advpng -z -4 assets/*.png
advzip -z -4 release.zip любой разработчик может повторить обработку без ручных настроек.
Минусы AdvanceCOMP
Нет графического интерфейса
Для многих пользователей это главный барьер. Нет окна, предпросмотра, drag-and-drop, прогресс-бара в привычном виде, списка файлов с галочками и визуального сравнения.
Нужно понимать командную строку
Ошибки в путях, пробелы в именах файлов, текущая директория, права на запись — все это становится ответственностью пользователя.
Не универсальный оптимизатор изображений
AdvanceCOMP не работает с JPEG, WebP, AVIF и другими популярными форматами изображений. Для современной веб-графики его часто нужно использовать вместе с другими инструментами.
Не всегда дает лучший PNG-результат
Современные PNG-оптимизаторы вроде oxipng, OptiPNG, pngcrush и ZopfliPNG могут быть удобнее или эффективнее в отдельных PNG-сценариях. AdvanceCOMP силен как набор рекомпрессоров, а не как единственный лучший PNG-инструмент для всех случаев.
MNG-сценарии устарели
advmng полезен, но сам MNG сегодня встречается редко. Для большинства пользователей это будет не ежедневная функция, а нишевая возможность.
Возможна потеря вспомогательных метаданных
advpng удаляет ancillary chunks. Для веба это часто плюс, но для архивных и профессиональных файлов может быть проблемой.
Сравнение с аналогами
| Программа | Форматы | Интерфейс | Сильная сторона | Ограничения |
| OptiPNG | PNG, также конвертация BMP/GIF/PNM/TIFF в PNG | CLI | Хорошая lossless-оптимизация PNG, проверки и исправления PNG | Не работает с ZIP, GZ, TGZ, SVGZ как набор рекомпрессоров |
| pngcrush | PNG | CLI | Подбор PNG-фильтров и уровней сжатия, работа с ancillary chunks | Узкая ориентация на PNG |
| oxipng | PNG/APNG | CLI | Быстрый многопоточный PNG-оптимизатор, современные уровни -o | Не закрывает ZIP/GZ/MNG-задачи |
| ZopfliPNG | PNG | CLI | Сильное Deflate-сжатие PNG, подбор фильтров | Очень высокая нагрузка на CPU, узкая PNG-специализация |
| 7-Zip | ZIP, 7z и другие архивы | GUI/CLI | Универсальный архиватор, удобная работа с архивами | Не специализируется на PNG/MNG-рекомпрессии |
| gzip / zopfli | GZ и Deflate-сценарии | CLI | Хороши для GZIP-потоков | Не являются набором утилит для PNG, ZIP и MNG одновременно |
OptiPNG оптимизирует PNG без потери информации и умеет выполнять дополнительные операции вроде проверки целостности и конвертации некоторых внешних форматов в PNG. pngcrush подбирает комбинации compression levels и PNG filter methods, работает с IDAT datastream и ancillary chunks. oxipng — современный CLI-оптимизатор PNG с уровнями -o 0…-o 6, поддержкой удаления метаданных и альфа-оптимизации. ZopfliPNG использует Zopfli compression для Deflate, сравнивает стратегии фильтрации scanline и может удалять ненужные для веба chunks.
Главное отличие AdvanceCOMP от этих программ — ширина набора. Он не только про PNG. В одном пакете есть advpng, advzip, advmng и advdef, поэтому программа закрывает сразу несколько рекомпрессионных задач.
AdvanceCOMP для веб-разработчика
Для веб-разработчика AdvanceCOMP полезен прежде всего в трех местах:
- PNG-ассеты;
- ZIP-дистрибутивы;
- SVGZ-ресурсы.
Пример структуры проекта:
project/
public/
images/
icons/
dist/
release.zip Команды:
advpng -z -4 public/images/*.png
advpng -z -4 public/icons/*.png
advdef -z -4 public/icons/*.svgz
advzip -z -4 release.zip В npm scripts это может выглядеть так:
{
"scripts": {
"optimize:png": "advpng -z -4 public/images/*.png",
"optimize:zip": "advzip -z -4 release.zip"
}
} Для веб-проекта важно не только уменьшить файл, но и проверить результат:
- открыть страницы в браузере;
- проверить PNG с прозрачностью;
- убедиться, что SVGZ корректно отдается сервером;
- не удалились ли важные метаданные;
- сравнить размер до и после.
AdvanceCOMP не заменяет весь pipeline оптимизации, но хорошо вписывается в финальный этап.
AdvanceCOMP для геймдева
В 2D-геймдеве программа полезна для спрайтов, тайлов, UI, иконок и ZIP-сборок. Особенно если игра публикуется в формате архива или участвует в конкурсе с лимитом размера.
Пример:
advpng -z -4 assets/sprites/*.png
advpng -z -4 assets/ui/*.png
zip -r game.zip index.html src assets
advzip -z -4 -i 100 game.zip
advzip -t game.zip Такой pipeline сохраняет рабочие файлы проекта отдельно, а оптимизацию применяет к финальной сборке. Это правильный подход: исходники остаются удобными для разработки, релизная версия становится компактнее.
AdvanceCOMP для демосцены и game jam
В демосцене и game jam-среде часто есть жесткие ограничения: 13 KB, 64 KB, 1 MB, конкретный размер архива или лимит загрузки. В таких условиях advzip -z -4 -i N может быть полезнее, чем обычная ZIP-компрессия.
Пример:
advzip -z -4 -i 500 entry.zip Но здесь важно не переоценивать итерации. Если архив уже хорошо сжат, дополнительная тысяча итераций может дать крошечную экономию. Сначала нужно оптимизировать содержимое: убрать лишние файлы, минифицировать код, сократить ассеты, проверить PNG. И только после этого применять сильную рекомпрессию ZIP.
AdvanceCOMP для ретро-эмуляции
Исторически AdvanceCOMP тесно связан с задачами вокруг эмулируемых игр: ROM, snapshots, clips, MNG. Поэтому advmng выглядит устаревшим только для массового веба, но не для старых эмуляторных рабочих процессов.
Типичный MNG-сценарий:
advmng --extract capture.mng После этого пользователь получает PNG-последовательность кадров. Ее можно обрабатывать дальше: собирать видео, анализировать кадры, архивировать, конвертировать или использовать в другом pipeline.
Частые ошибки и решения
Команда не найдена
Ошибка:
advpng: command not found или в Windows:
'advpng' is not recognized as an internal or external command Причина: терминал не видит исполняемый файл.
Решения:
./advpng --version В Windows:
advpng.exe --version Или перейти в папку с программой:
cd C:toolsadvancecomp
advpng.exe --version Путь содержит пробелы
Ошибка часто возникает при путях вроде:
C:My Projectassetsimage.png Правильно:
advpng -z -4 "C:My Projectassetsimage.png" В PowerShell:
advpng -z -4 "C:My Projectassetsimage.png" Файл не уменьшился
Это нормальная ситуация. Возможные причины:
- файл уже хорошо сжат;
- PNG создан оптимизатором;
- выбран слабый уровень;
- содержимое плохо поддается дополнительной рекомпрессии;
- программа решила оставить прежний вариант, потому что новый не меньше.
Для проверки можно попробовать:
advpng -z -4 -i 20 image.png Но если результат не меняется, насильно дожимать файл бессмысленно.
Файл стал больше
Обычно AdvanceCOMP выбирает меньший вариант, но при -f можно заставить программу принять файл даже если он больше. Поэтому -f не стоит использовать в обычной оптимизации.
ZIP не открывается в другой программе
Проверить архив:
advzip -t archive.zip Более строгая проверка:
advzip -t -p archive.zip Не использовать экспериментальные режимы, которые создают нестандартные ZIP, если архив должен открываться обычными программами. В старых сборках advzip встречался режим -N, создающий ZIP, непригодные для чтения другими приложениями.
Перепутаны advpng и advdef
Для обычного PNG сначала используется:
advpng -z -4 image.png Для SVGZ:
advdef -z -4 icon.svgz Для GZ:
advdef -z -4 file.gz Нет прав на запись
Если файл находится в защищенной папке, программа не сможет заменить его. Решение — обработать копию в пользовательской директории или запустить терминал с нужными правами.
Обработка идет слишком долго
Причина почти всегда в -4 или большом -i.
Быстрее:
advpng -z -2 image.png Медленнее, но сильнее:
advpng -z -4 -i 50 image.png Для ежедневной работы не нужно включать максимальные параметры на все файлы.
Практические настройки для проектов
Быстрый профиль
Для частой локальной обработки:
advpng -z -2 assets/*.png
advzip -z -2 build.zip Плюсы:
- быстро;
- удобно в разработке;
- не блокирует сборку надолго.
Минусы:
- не максимальный размер.
Релизный профиль
Для финальной публикации:
advpng -z -4 assets/*.png
advdef -z -4 public/*.svgz
advzip -z -4 release.zip
advzip -t release.zip Плюсы:
- сильное сжатие;
- хорош для релиза;
- подходит для ручного финального шага.
Минусы:
- медленнее;
- требует проверки.
Агрессивный профиль
Для ограничений по размеру:
advpng -z -4 -i 100 assets/*.png
advzip -z -4 -i 500 release.zip Плюсы:
- максимум попыток уменьшить файл;
- полезно при жестком лимите.
Минусы:
- может быть очень медленно;
- прирост после определенного числа итераций становится минимальным.
Как встроить AdvanceCOMP в рабочий процесс
Makefile
optimize-png:
advpng -z -4 assets/*.png
optimize-zip:
advzip -z -4 release.zip
check-zip:
advzip -t release.zip Bash-скрипт
#!/usr/bin/env bash
set -e
echo "Optimizing PNG files..."
find assets -name "*.png" -exec advpng -z -4 {} ;
echo "Recompressing ZIP..."
advzip -z -4 release.zip
echo "Testing ZIP..."
advzip -t release.zip PowerShell
$pngFiles = Get-ChildItem -Path "assets" -Filter *.png -Recurse
foreach ($file in $pngFiles) {
advpng -z -4 $file.FullName
}
advzip -z -4 release.zip
advzip -t release.zip CI/CD
В CI/CD AdvanceCOMP лучше запускать на финальных артефактах, а не на исходной папке репозитория. Это снижает риск случайного изменения файлов разработки.
Правильная логика:
- собрать проект;
- скопировать ассеты в
dist; - оптимизировать PNG в
dist; - создать ZIP;
- рекомпрессировать ZIP;
- проверить ZIP;
- опубликовать артефакт.
Советы по аккуратной работе
Не обрабатывайте исходники без контроля версий
Если PNG лежат в Git, изменение можно откатить. Если они лежат в единственной папке без резервной копии, риск выше.
Проверяйте прозрачность
PNG с альфа-каналом нужно открывать после обработки. Особенно если это UI-элементы, иконки, спрайты и полупрозрачные слои.
Не используйте один инструмент для всех форматов
AdvanceCOMP не должен обрабатывать JPEG или WebP. Для каждого формата нужен свой инструмент.
Не гонитесь за -i 1000 без причины
Большие итерации имеют смысл только тогда, когда размер действительно критичен. В обычном проекте это чаще потеря времени.
Проверяйте ZIP после рекомпрессии
Минимальный безопасный набор:
advzip -z -4 archive.zip
advzip -t archive.zip Для строгой проверки:
advzip -t -p archive.zip Кому стоит использовать AdvanceCOMP
Программа подходит:
- разработчикам;
- веб-разработчикам;
- авторам CLI-скриптов;
- системным администраторам;
- участникам game jam;
- авторам небольших ZIP-сборок;
- тем, кто работает с PNG-ассетами;
- пользователям, которым нужна рекомпрессия SVGZ/GZ/TGZ;
- энтузиастам ретро-эмуляции и MNG-сценариев;
- тем, кто предпочитает точные команды вместо графического интерфейса.
AdvanceCOMP особенно удобен для людей, которые понимают, что такое терминал, файл, путь, аргумент командной строки и пакетная обработка.
Кому лучше выбрать другую программу
Программа не подходит:
- пользователям, которым нужен GUI;
- дизайнерам, не работающим с терминалом;
- тем, кто хочет перетаскивать файлы мышью;
- тем, кто оптимизирует JPEG/WebP/AVIF;
- тем, кому нужен визуальный предпросмотр;
- тем, кто боится перезаписи файлов;
- пользователям, которым нужен универсальный архиватор;
- тем, кому важна сохранность всех PNG-метаданных без отдельной проверки.
Для PNG-only задач часто удобнее рассмотреть OptiPNG, pngcrush, oxipng или ZopfliPNG. Для архивов общего назначения — 7-Zip. Для изображений разных форматов — специализированные графические оптимизаторы.
Итоговая оценка
AdvanceCOMP Compression Utilities — это практичный, строгий и узконаправленный набор консольных инструментов. Его не нужно воспринимать как современную программу для сжатия картинок в бытовом смысле. Это CLI-набор для рекомпрессии PNG, ZIP, MNG, GZ, TGZ и SVGZ, где каждая утилита выполняет свою задачу.
Сильные стороны программы:
- точная рекомпрессия;
- удобство автоматизации;
- работа с несколькими форматами;
- сильные режимы
-3и-4; - поддержка итераций;
- полезность для финальных сборок;
- компактность;
- предсказуемое CLI-поведение.
Слабые стороны:
- отсутствие GUI;
- необходимость понимать терминал;
- ограниченность по форматам;
- риск потери вспомогательных PNG-метаданных;
- устаревшая MNG-специализация;
- не всегда лучший результат по сравнению с современными PNG-оптимизаторами.
Лучший сценарий использования — финальная рекомпрессия ассетов и архивов: advpng для PNG, advzip для ZIP, advdef для GZ/TGZ/SVGZ, advmng для MNG. В этой роли AdvanceCOMP остается полезным инструментом: не универсальным, не дружелюбным к новичку, но точным и эффективным.
FAQ
AdvanceCOMP сжимает без потери качества?
Да, программа ориентирована на lossless-рекомпрессию. Для PNG видимое изображение сохраняется, но вспомогательные PNG-метаданные могут быть удалены.
Есть ли у AdvanceCOMP графический интерфейс?
Нет. Программа работает через командную строку.
Можно ли сжимать JPEG?
Нет. JPEG не входит в задачи AdvanceCOMP.
Чем advpng отличается от advdef?
advpng — специализированная PNG-утилита. advdef — инструмент для рекомпрессии Deflate-данных в PNG, MNG, GZ, TGZ и SVGZ.
Почему PNG не уменьшился?
Файл уже мог быть хорошо оптимизирован. Еще одна причина — новая версия после сжатия не стала меньше старой, и программа оставила более выгодный вариант.
Безопасен ли режим -4?
Да, но он медленнее. Перед массовой обработкой нужно тестировать результат на копии файлов.
Что делает -i?
-i задает дополнительные итерации для сильных режимов. Больше итераций может дать лучший размер, но требует больше времени.
Что делать после advzip -z -4?
Проверить архив:
advzip -t archive.zip Можно ли использовать AdvanceCOMP в CI/CD?
Да. Программа хорошо подходит для автоматизированной обработки финальных артефактов.
Нужно ли хранить резервные копии?
Да. AdvanceCOMP часто работает с исходным файлом напрямую, поэтому резервная копия или Git-контроль обязательны для безопасной работы.

