Что делает инструмент
PNG — формат с непотерями (lossless), популярный для скриншотов, иконок, графики с прозрачностью. Но «без потерь» не означает «маленький размер»: PNG может быть огромным, особенно если он создан с неоптимальными настройками или содержит много полноцветной графики.
Этот инструмент даёт два пути сжатия: lossless (без потерь, экономия 5-30%) и палитра (lossy, экономия 3-10 раз). Через JavaScript-библиотеку UPNG.js — работает в браузере, файлы не уходят на сервер.
Quantization to 256-color palette typically reduces PNG size by 50-80% with imperceptible quality loss for UI graphics, icons, and screenshots.— UPNG.js documentation
Какой режим выбрать
- Lossless. Идентичные пиксели, как у исходника. Используйте для архивов, фотомонтажа, графики где критична точность каждого пикселя. Сжатие 5-30% — UPNG переписывает PNG с оптимальными фильтрами и параметрами zlib.
- Палитра 256 цветов. Универсальный выбор для иконок, UI, инфографики. PNG из 16+ миллионов цветов превращается в PNG из 256 цветов — на глаз почти неотличимо для не-фото. Размер падает в 3-5 раз.
- Палитра 128 цветов. Ещё агрессивнее. Заметно на градиентах, но логотипы и иконки выглядят так же.
- Палитра 64 цвета. Максимум сжатия. Подходит для очень простой графики (значки приложений, символы, логотипы с малым числом цветов).
Когда не помогает
- PNG-фото. Если у вас фотография в PNG, лучше конвертировать в JPG (через «Конвертер изображений»). PNG не предназначен для фото — даже с палитрой будет в 5-10 раз больше JPG.
- Уже оптимизированный PNG. Если PNG прошёл через TinyPNG / pngquant / Squoosh — lossless почти не даст экономии. Палитра всё ещё работает (если она не была применена).
- Очень мелкие PNG (до 5 КБ). Накладные расходы PNG-структуры (chunks, CRC, zlib header) могут превысить экономию. Иногда сжатие даже увеличивает размер на 10-50 байт.
- PNG с большим числом разнообразных цветов. Фотографии природы, лица людей, градиентные иллюстрации — палитра даст видимые артефакты. Используйте JPG.
- UPNG.js — fast PNG decoder/encoder by Photopea. Ivan Kutskir. github.com/photopea/UPNG.js. 2024.
- PNG Specification (RFC 2083). IETF. rfc-editor.org/rfc/rfc2083. 1997.
- pngquant — PNG color quantization tool. Kornel Lesiński. pngquant.org. 2024.
