Как добиться максимального сжатия zip-архива?

Как добиться максимального сжатия zip-архива?

Я хотел бы создать "стандартный" zip-файл, содержащий изображения .jpg. Какое программное обеспечение и переключатели / опции мне следует использовать для достижения максимальной степени сжатия? Я имею в виду, может быть, я смогу создать надежный архив с некоторыми специальными опциями сжатия и высоким использованием памяти с помощью 7zip.

решение1

Поскольку файлы jpeg уже сжаты, вы можете сказать zip просто сохранить файлы, не пытаясь сжать их вообще. Переключатель --compression-method store(или -Z storeили -0) сделает это. Но не ждите, что что-то выиграете: обычно zip достаточно умен, чтобы определить, что сжатие не поможет.

решение2

Как правильно заметил ChrisInEdmonton, файлы JPEG сильно сжаты. Сжатие их другой утилитой не даст существенного уменьшения размера.

Однако, возможно «пересжать» файлы JPEG, поскольку существуют лучшие (с точки зрения размера) алгоритмы сжатия, чем тот, который используется в JPEG. СогласноМаксимальное сжатиеЭто делается путем обратного декодирования изображения в коэффициенты DCT и их повторного сжатия с использованием алгоритма, который намного лучше, чем стандартное кодирование Хаффмана (алгоритм сжатия, используемый JPEG).

Оставив в стороне технические детали, упомянутый мной бенчмарк указывает на 4 компрессора, способных эффективно сжимать файл JPEG. Это:

  • PAQ8PXс -7
  • МАТЕРИАЛЫ 14с автоматическим типом файла
  • PackJPG 2.5
  • WINZIP-14с лучшим методом

Насколько мне известно, только Winzip обеспечивает как широко используемый формат архива (.zip), так и приличную (учитывая сжимаемость файлов JPEG) степень сжатия около 18%. В то время как PAQ8PX действительно достигает наивысшей степени сжатия (24,37%), помимо того, что он не так известен, ему, скорее всего, потребуется значительное время для сжатия файла.

Связанный контент