Лучшее программное обеспечение для сжатия PNG? [закрыто]


22

Я просто пытался сжать изображение в формате PNG и получал разные результаты в разных приложениях. Для справки: изображение, которое я пытаюсь сжать, - это скриншот этого сайта . Вот загрузка оригинального изображения .

Вот некоторые результаты, которые у меня пока есть в порядке от лучшего к худшему (исходное изображение размером 239 КБ):

PNGGauntlet (Xtreme! / None filter) ...................... 141KB
FastStone Capture v5.3 (16M / MAX/ No filter) ............ 166KB
Paint.NET 3.36 (Autodetect) .............................. 185KB
PNGGauntlet (Xtreme! / Auto filter) ...................... 208KB
IrfanView (PNGOUT 2 passes w/default) .................... 211KB
XnView (Export / 9 / Sub filter) ......................... 228KB
Photoshop CS1 (Save for Web / PNG24) ..................... 232KB
IrfanView (Standard save / 9) ............................ 240KB
XnView (Standard save / 9) ............................... 240KB
IrfanView (Save for Web / Best) .......................... 242KB

FastStone Capture v5.3 (16M / MAX/ Paeth filter) ......... 248KB
IrfanView (Save for Web / Optimal 256 / Xiaolin / Best) ..  81KB

Немного возни с PNGGauntlet привели к лучшему результату, хотя для сжатия понадобились целые годы . FastStone делает что-то интересное, как и Paint.NET, потому что они получают свои результаты за долю времени, которое PNGGauntlet тратит на магию. Я выделил эти два последних результата для контраста (посмотрите, как фильтр Паэта, кажется, вызывает проблему). Обратите внимание также на версию 256-цветного палитры от Irfan: обычно это вариант, который я бы использовал, но здесь я тестирую результаты TrueColor.

Кто-нибудь еще получил какие-либо предложения, которые могут побить лучшие результаты здесь, и может кто-нибудь объяснить, что делают фильтры, потому что они, кажется, серьезно влияют на результат в зависимости от типа изображения.


Даже если вопрос задан конструктивным образом (за исключением, возможно, «лучшего» в названии), он, к сожалению, создал открытый список ответов, поэтому сейчас я его закрываю.
— slhck

2
Для дальнейшего использования, какой будет приемлемая форма этого вопроса? Для справки, я нашел ответы исключительно полезными и конструктивными и, следовательно, хорошо подходят для этого сайта. Я бы с уважением сказал, что закрытие этого, в данном конкретном случае, является неправильным суждением. Естественные голоса вверх / вниз работают хорошо здесь. Если появится другой инструмент, вы лишите нас возможности узнать об этом здесь. Открытый конец полезен здесь.
— Чарльз Ропер

С 2009 года кое-что изменилось. Stack Exchange дал понять, что открытые вопросы больше не приветствуются (например, «Какое программное обеспечение лучше для XZY?»), Так как формат просто не предназначен для этого, и он не должен быть опрос, но сайт вопросов и ответов для актуальных проблем с закрытым набором ответов. Теперь, ваш вопрос не плохо само по себе , но мы определенно не хотим , чтобы получить список всех программ оптимизации PNG там, которые по определению не является конструктивным. Википедия вас там освещала.
— Slhck

1
Я понимаю, что этот вопрос существует уже давно, и вы нашли ответы полезными - также вы были членом этого сообщества дольше, чем я, - но вы должны понимать, что политики просто радикально изменились. Как я уже сказал, ваш вопрос не плохой, вы даже попросили объяснить, как работают фильтры, но, похоже, это не поощряет правильные ответы.
— Slhck

Pingo утверждает, что предоставил широкий набор опций, от самых быстрых до самых сильных, надеюсь, что это будет проверено: css-ig.net/pingo Также был экспериментальный ZPng - использование контейнера PNG с кодеком Zstd в Facebook. Хотя файл не в формате PNG, он все еще без потерь и утверждает, что получил 66% размера PNG за 6% времени
— Arioch 'The

Ответы:


15

PngOptimizer 165KB примерно за 2 секунды.

Качество изображения остается неизменным.


Милая! Это крутая маленькая утилита. Элегантный интерфейс тоже.
— Чарльз Ропер

1
Это не говорит о том, что на самом деле. Это определенно без потерь? Что за «бесполезная информация» удаляется из файлов?
— Сэм

11

Я только когда-либо использовал pngcrush, но он работает хорошо и имеет много вариантов.


Я проверил почти все, что было упомянуто здесь, и остановился на pngcrush. Указание убрать все остальные разделы данных и работать в режиме грубой силы (если у вас есть время / ресурсы) дало лучшие, самые надежные результаты для моего набора изображений (в основном, штриховые рисунки - черно-белый / серый с большими участками черного или черного цвета). белый).
— Goyuix

Поскольку он запускается из командной строки, его легко встроить в последовательность сборки, что приятно.
— Рич Брэдшоу

7

Просто для быстрого теста я скачал 170 случайных PNG-файлов с разных сайтов в Интернете, общим объемом около 8 МБ. Вот результаты:

Original: 8,403,619 bytes total
PNGCrush: 7,398,194 bytes total
 Optipng: 7,340,167 bytes total
  PNGOUT: 6,938,205 bytes total

Таким образом, кажется, что PNGOUT (или любой графический интерфейс на его основе) - лучший выбор, если размер является вашей основной целью. Это все преобразования без потерь.


5

Я получаю лучшие результаты с ScriptPNG . Это пакетный скрипт Windows, который использует широкий спектр утилит PNG, чтобы найти наилучшее возможное сжатие для любого изображения. Он часто сжимает 10-100 байт из уже сжатого изображения. У автора есть и другие утилиты, а также множество статей о сжатии png / jpeg, тестах PNG и сравнениях.

Имеет различные режимы:

  • Самый быстрый в Xtreme (режимы скорости и размера)
  • PNG24 (PNG24 + A-специфичный)
  • PNG8 (специфичный для PNG8)
  • APNG (анимированный PNG)

4

В отличие от большинства других компрессоров, упомянутых здесь, TinyPNG сжимает файлы PNG, используя сжатие с потерями. Следовательно, это может привести к гораздо лучшему уменьшению размера файла.


3

PNGGauntlet является оболочкой графического интерфейса для PNGOUT, и если вы посмотрите на эту страницу, есть плагин PNGOUT.DLL для Irfanview, если вы предпочитаете это в качестве интерфейса, или вы можете использовать PNGOUT в командной строке или в сценариях, если вы хотите автоматизировать сжатие как часть процесса сборки / развертывания.


3

Мне нравится OptiPNG . В дополнение к утилите источника и командной строки есть плагины optipng для Windows Explorer, Paint.NET, пара интерфейсов для пользователей Mac и некоторые другие проекты (Apache Ant, Eclipse; см. Раздел «Связанные проекты» на домашней странице).


2

может кто-нибудь объяснить, что делают фильтры

Они описаны в спецификации .

Они изменяют способ сохранения строк изображения. Вместо сохранения необработанных значений RGB (или индексов палитры) изображение может хранить различия между соседними пикселями. Это может сделать данные более подходящими для сжатия, если у вас есть изображение с градиентами.



2

В моих тестах лучший онлайн-инструмент - http://compresspng.com


4
Если у вас есть какие-либо связи с этим сайтом, пожалуйста, сообщите об этом. Также ссылки только ответы не являются хорошими ответами. Пожалуйста, объясните, почему вы думаете, что это решение.
— ChrisF
Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.