Я хотел бы сделать "стандартный" zip-файл, содержащий изображения .jpg. Какое программное обеспечение и переключатели / опции следует использовать для достижения максимальной степени сжатия? Я имею в виду, может быть, я могу сделать солидный архив с некоторыми специальными параметрами сжатия и высоким использованием памяти с 7zip.
2 ответа
Поскольку jpeg-файлы уже сжаты, вы можете указать zip просто хранить файлы, не пытаясь сжать их вообще. Переключатель --compression-method store
(или -Z store
или -0
) сделает это. Но не ожидайте ничего получить: обычно zip достаточно умен, чтобы обнаружить, что сжатие не поможет.
Как правильно заметил ChrisInEdmonton, файлы JPEG сильно сжаты. Сжатие их с помощью другой утилиты не приведет к значительному уменьшению размера.
Тем не менее, есть возможность "повторно сжать" файлы JPEG, потому что есть более эффективные (с точки зрения размера) алгоритмы сжатия, чем тот, который используется в JPEG. Согласно MaximumCompression это делается путем декодирования изображения обратно к коэффициентам DCT и повторного сжатия их с помощью гораздо лучшего алгоритма, чем кодирование по умолчанию Хаффмана (алгоритм сжатия, используемый JPEG).
Не говоря о технических деталях, упомянутый мною тест указывает на 4 компрессора, способных эффективно сжимать файл JPEG. Они есть:
- PAQ8PX с -7
- STUFFIT 14 с автоматическим типом файла
- PackJPG 2.5
- WINZIP 14 с лучшим методом
Насколько мне известно, только Winzip обеспечивает как широко используемый формат архива (.zip), так и приличный (учитывая сжимаемость файлов JPEG) коэффициент сжатия около 18%. Несмотря на то, что PAQ8PX достигает максимальной степени сжатия (24,37%), помимо того, что он недостаточно известен, он, скорее всего, займет значительное время для сжатия файла.