На сколько zip сжимает файл
Перейти к содержимому

На сколько zip сжимает файл

  • автор:

Простым языком о том, как работает сжатие файлов

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

Сжатие файлов позволяет быстрее передавать, получать и хранить большие файлы. Оно используется повсеместно и наверняка хорошая вам знакомо: самые популярные расширения сжатых файлов — ZIP, JPEG и MP3. В этой статье кратко рассмотрим основные виды сжатия файлов и принципы их работы.

Что такое сжатие?

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

Сжатие с потерями

Такой способ уменьшает размер файла, удаляя ненужные биты информации. Чаще всего встречается в форматах изображений, видео и аудио, где нет необходимости в идеальном представлении исходного медиа. MP3 и JPEG — два популярных примера. Но сжатие с потерями не совсем подходит для файлов, где важна вся информация. Например, в текстовом файле или электронной таблице оно приведёт к искажённому выводу.

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

Аналогично файлы JPEG удаляют некритичные части изображений. Например, в изображении с голубым небом сжатие JPEG может изменить все пиксели на один или два оттенка синего вместо десятков.

Чем сильнее вы сжимаете файл, тем заметнее становится снижение качества. Вы, вероятно, замечали такое, слушая некачественную музыку в формате MP3, загруженную на YouTube. Например, сравните музыкальный трек высокого качества с сильно сжатой версией той же песни.

Сжатие с потерями подходит, когда файл содержит больше информации, чем нужно для ваших целей. Например, у вас есть огромный файл с исходным (RAW) изображением. Целесообразно сохранить это качество для печати изображения на большом баннере, но загружать исходный файл в Facebook будет бессмысленно. Картинка содержит множество данных, не заметных при просмотре в социальных сетях. Сжатие картинки в высококачественный JPEG исключает некоторую информацию, но изображение выглядит почти как оригинал.

При сохранении в формате с потерями, вы зачастую можете установить уровень качества. Например, у многих графических редакторов есть ползунок для выбора качества JPEG от 0 до 100. Экономия на уровне 90 или 80 процентов приводит к небольшому уменьшению размера файла с незначительной визуальной разницей. Но сохранение в плохом качестве или повторное сохранение одного и того же файла в формате с потерями ухудшит его.

Посмотрите на этот пример.

Оригинальное изображение, загруженное с Pixabay в формате JPEG. 874 КБ:

Результат сохранения в формате JPEG с 50-процентным качеством. Выглядит не так уж плохо. Вы можете заметить артефакты по краям коробок только при увеличении. 310 КБ:

Исходное изображение, сохранённое в формате JPEG с 10-процентным качеством. Выглядит ужасно. 100 КБ:

Где используется сжатие с потерями

Как мы уже упоминали, сжатие с потерями отлично подходит для большинства медиафайлов. Это крайне важно для таких компаний как Spotify и Netflix, которые постоянно транслируют большие объёмы информации. Максимальное уменьшение размера файла при сохранении качества делает их работу более эффективной.

Сжатие без потерь

Сжатие без потерь позволяет уменьшить размер файла так, чтобы в дальнейшем можно было восстановить первоначальное качество. В отличие от сжатия с потерями, этот способ не удаляет никакую информацию. Рассмотрим простой пример. На картинке ниже стопка из 10 кирпичей: два синих, пять жёлтых и три красных.

Вместо того чтобы показывать все 10 блоков, мы можем удалить все кирпичи одного цвета, кроме одного. Используя цифры, чтобы показать, сколько кирпичей каждого цвета было, мы представляем те же данные используя гораздо меньше кирпичей — три вместо десяти.

Это простая иллюстрация того, как осуществить сжатие без потерь. Та же информация сохраняется более эффективным способом. Рассмотрим реальный файл: mmmmmuuuuuuuoooooooooooo. Его можно сжать до гораздо более короткой формы: m5u7o12. Это позволяет использовать 7 символов вместо 24 для представления одних и тех же данных.

Где используется сжатие без потерь

ZIP-файлы — популярный пример сжатия без потерь. Хранить информацию в виде ZIP-файлов более эффективно, при этом когда вы распаковываете архив, там присутствует вся оригинальная информация. Это актуально для исполняемых файлов, так как после сжатия с потерями распакованная версия будет повреждена и непригодна для использования.

Другие распространённые форматы без потерь — PNG для изображений и FLAC для аудио. Форматы видео без потерь встречаются редко, потому что они занимают много места.

Сжатие с потерями vs сжатие без потерь

Теперь, когда мы рассмотрели обе формы сжатия файлов, может возникнуть вопрос, когда и какую следует использовать. Здесь всё зависит от того, для чего вы используете файлы.

Скажем, вы только что откопали свою старую коллекцию компакт-дисков и хотите оцифровать её. Когда вы копируете свои компакт-диски, имеет смысл использовать формат FLAC, формат без потерь. Это позволяет получить мастер-копию на компьютере, которая обладает тем же качеством звука, что и оригинальный компакт-диск.

Позже вы, возможно, захотите загрузить музыку на телефон или старый MP3-плеер. Здесь не так важно, чтобы музыка была в идеальном качестве, поэтому вы можете конвертировать файлы FLAC в MP3. Это даст вам аудиофайл, который по-прежнему достаточно хорош для прослушивания, но не занимает много места на мобильном устройстве. Качество MP3, преобразованного из FLAC, будет таким же, как если бы вы создали сжатый MP3 с оригинального CD.

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

Проблемы во время сжатия файлов

Бесполезно конвертировать формат с потерями в формат без потерь. Это пустая трата пространства. Скажем, у вас есть MP3-файл весом в 3 МБ. Преобразование его в FLAC может привести к увеличению размера до 30 МБ. Но эти 30 МБ содержат только те звуки, которые имел уже сжатый MP3. Качество звука от этого не улучшится, но объём станет больше.

Также стоит иметь в виду, что преобразовывая один формат с потерями в аналогичный, вы получаете дальнейшее снижение качества. Каждый раз, когда вы применяете сжатие с потерями, вы теряете больше деталей. Это становится всё более и более заметно, пока файл по существу не будет разрушен. Помните также, что форматы с потерями удаляют некоторые данные и их невозможно восстановить.

Заключение

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

Алгоритмы, которые определяют, какие данные выбрасываются в методах с потерями и как лучше хранить избыточные данные при сжатии без потерь, намного сложнее, чем описано здесь. На эту тему можно почитать больше информации здесь, если вам интересно.

Как максимально сжать файлы в ZIP, RAR или 7z (7-zip) архив

Для передачи файлов большого объема обычно используется их сжатие в RAR, ZIP или 7z (7-zip) архив. Это позволяет уменьшить объем передаваемых данных и объединить большое количество файлов в один, что значительно ускоряет и упрощает передачу файлов.

При архивации файлов пользователи часто стремятся достичь максимального сжатия файлов. Такой подход позволяет сэкономить наибольший объем данных, но может привести к сложностям при распаковке архива. В данной статье мы расскажем о том, как максимально сжать файлы в RAR, ZIP или 7z (7-zip) архив, а также когда это необходимо, а когда лучше обойтись менее эффективным способ сжатия.

Какой формат обеспечит максимальное сжатие файлов

форматы ZIP, RAR и 7z

Сейчас существует три основных формата архива, которые используются пользователями при передаче документов. Это такие форматы как ZIP, RAR и 7z (7-zip). Существуют и другие форматы архивов, но они в Windows среде используются крайне редко, поэтому их мы рассматривать не будем.

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

  • ZIP – самый старый, популярный и универсальный формат архивов из всех трех. ZIP архив открывается средствами Windows без использования сторонних программ, поэтому он гарантировано откроется на любом компьютере. Используя ZIP архив вам не нужно переживать о том, что получатель файлов не сможет его открыть. При этом zip работает очень быстро, но не обеспечивает высокой степени сжатия, уступая в этом параметре и RAR и 7zip архивам. Создавать ZIP архивы можно как средствами Windows, так и с помощью сторонних архиваторов, например, с помощью WinZip, WinRar или 7zip.
  • RAR – популярный в прошлом формат архивов, который понемногу отмирает. Сжимает данные лучше, чем ZIP, но хуже, чем 7-zip. При этом показывает среднюю скорость работы. Для создания RAR архивов требуется платный архиватор WinRAR, для распаковки подойдет любой сторонний архиватор, например, WinZip, WinRar или 7-zip.
  • 7z (7-zip) – набирающий популярность формат архивов. Обеспечивает самую высокую степень сжатия, превосходя ZIP и RAR форматы, но при этом работает медленней всего. Для создания 7z архивов требуется бесплатный архиватор 7-zip, для распаковки подойдет любой сторонний архиватор, например, Win Zip, Win Rar или 7zip.

Таким образом, если вам необходимо максимальная совместимость, то следует выбирать формат ZIP, даже в ущерб сжатию. Архивы в формате ZIP можно открыть на любом Windows компьютере, даже если на нем не установлено никакого архиватора. Если же вы хотите добиться максимального сжатия файлов, то оптимальный вариант – это 7z (7-zip) . Но, в этом случае нужно помнить, что получателю ваших файлов придется устанавливать и использовать сторонний архиватор.

Как максимально сжать файлы в архив

Для максимального сжатия файлов вам потребуется архиватор, даже если вы решили использовать формат ZIP. Так вы сможете добиться лучшего сжатия, чем то, которое предлагают встроенные средства Windows.

7-zip – один из лучших архиваторов для таких задач. Это бесплатная программа с открытым исходным кодом, которая поддерживает множество форматов архивов. Для создания архивов поддерживаются форматы 7z, XZ, BZIP2 (BZ2, TB2, TBZ, TBZ2), TAR, GZIP (GZ, TGZ), ZIP (JAR) и WIM, а для распаковки ARJ, CAB, CramFS, DEB, CHM, CPIO, DMG, HFS, FAT, ISO, LZMA, MSI, LZH (LHA), RPM, NSIS, RAR, NTFS, SquashFS, UDF, XAR, VHD и Z (TAR).

Скачать программу 7-zip можно абсолютно бесплатно на официальном сайте разработчика. 7zip поддерживает все версии Windows, начиная с Windows 2000 и заканчивая Windows 11.

После установки программы 7zip можно приступать к архивации файлов. Для этого нужно кликнуть правой кнопкой по файлам или папкам, открыть меню « 7-zip » и выбрать пункт « Добавить к архиву ».

меню 7zip - Добавить к архиву

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

окно с настройками архивации

Для начала нужно выбрать формат архива. Как уже было сказано, для максимального сжатия следует выбирать формат « 7z ». Если же вам нужна совместимость, то выбирайте « ZIP ».

выбор формата архива

Дальше – уровень сжатия. Для максимального сжатия файлов нужно выбрать вариант « Ультра », как в случае формата 7z, так и в случае ZIP. Но, нужно учитывать, что степень сжатия влияет на скорость архивации. Поэтому если объем данных очень большой, то в режиме « Ультра » процесс может сильно затянутся, возможно есть смысл немного понизить уровень сжатия ради ускорения процесса.

уровень сжатия данных в архиве

Остальные настройки, которые касаются сжатия, лучше оставить по умолчанию. Но, вы можете изменить имя архива, включить разбиение архива на тома или использовать шифрование. Это не повлияет на итоговый размер файла. Когда все будет готов можно нажимать на кнопку « ОК » и запускать процесс упаковки.

запуск процесса архивации

После завершения процесса упаковки, рядом с файлами появится ZIP или 7z архив, в котором будут запакованы выбранные вами файлы.

Как сжать файлы в ZIP без сторонних программ

Если вам не нужно максимальное сжатие, то файлы можно запаковать в ZIP-архив с помощью встроенного в Windows архиватора. Если вы пользуетесь Windows 11, то для этого нужно выделить файлы, кликнуть по ним правой кнопкой мышки и выбрать « Сжать в ZIP-файл ». В результате файлы будут заархивированы рядом и в той же папке появится созданный ZIP-файл.

Если у вас Windows 10 или более старая версия Windows, то для архивации в ZIP-архив нужно выделить файлы, кликнуть по ним правой кнопкой мышки и выбрать « Отправить — Сжатая ZIP-папка ».

  • Как распаковать ZIP файл на компьютере
  • Как распаковать архив RAR
  • Как открыть файл 7z на компьютере с Windows 11 и Windows 10
  • Как создать самораспаковывающийся архив в 7zip, WinRAR или WinZip
  • Как открыть файл RAR

Создатель сайта comp-security.net, автор более 2000 статей о ремонте компьютеров, работе с программами, настройке операционных систем.

Остались вопросы?

Задайте вопрос в комментариях под статьей или на странице «Задать вопрос» и вы обязательно получите ответ.

8 комментариев — Добавьте свой
Данила 19.04.2021

А есть ли какая-нибудь статья, где сравниваются различные форматы? Не понятно, на сколько 7z эффективен и за что отвечают все остальные настройки. Что значит выбрать по дефолту? На сколько это оправдано? Может он не правильный подбор ведёт?

Александр Степушин 20.04.2021

сравнение архиваторов

Можете поискать в интеренте «сравнение архиваторов», статей достаточно много. Здесь могу привести вот такую картинку. Как видно, 7z заметно опережает остальные форматы. Вопрос только в том, настолько это необходимо в современных условиях. Ведь для открытия архива получателю нужно будет устанавливать архиватор. Тогда как ZIP-архив можно открыть средствами Windows, без установки сторонних программ.

Геннадий 10.01.2022

Добрый день!
Подскажите, пожалуйста, как решить вопрос с отправкой в Росреестр документа в pdf, который подписан ЭЦП (файл sig).
В папке zip 2 листа пдф и 2 листа сиг, общий объем 62 мб. А нужно не более 5 мб. Как это можно сделать? С уважением, Геннадий

Александр Степушин 10.01.2022

Это PDF-файлы столько занимают? Если в PDF-файлах сканы (фотографии) документов, то ZIP вам не поможет. ZIP и другие архиваторы не могут значительно уменьшить размер таких файлов. В этом случае нужно сжать сами PDF-файлы (с небольшой потерей качества). Это можно сделать в Adobe Acrobat Pro, открывате «Файл – Сохранить как – Файл PDF уменьшенного размера» и сохраняете новый PDF-файл. В Adobe Acrobat Reader нужно открыть «Файл — Сохранить как другой — PDF-файл уменьшенного размера». Возможно после этого нужно будет еще раз подписать документ. Другой вариант — изначально сжать сканы/фотографии, которые вы используете для создания PDF. Тогда этой проблемы вообще не будет.

Луци2611 03.06.2022

Добрый вечер уважаемый эксперт, у меня не получается уменьшить размер файлов ни WinRAR, ни 7zip, что мне делать, нужно ваши советы.

Александр Степушин 04.06.2022

Не все типы файлов можно значительно сжать архиваторами по типу WinRAR или 7zip. Картинки и видео обычно не сжимаются, так как они уже сжаты и в них нет «лишних» данных.

Владислав 16.09.2023

Ерунда. Ни один исполняемый файл или образ диска не сжал. Бесполезные программы архиваторы. Может текстовые файлы будут сжимать, не знаю. Разве бывают столь большие тесты, что их нужно сжимать? Да и суть не в этом. Самые востреованные файлы программ не сжимаются.

Александр Степушин 17.09.2023

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

Сжатие ZIP

Здравствуй Хабр!
Данная статья посвящена, как правильно и максимально сжимать файлы в ZIP-архивы. Данную статью я решил написать по той причине, что очень много приложений свои форматы упаковывают именно в ZIP. В данной статье разберем методы сжатия ZIP, приложения для сжатия в ZIP, и как можно улучшить сжатие.

Метод сжатия в ZIP

Для начало предлагаю разобрать с тем, что ZIP поддерживает разные методы сжатия (Copy, Deflate, Deflate64, BZip2, LZMA, PPMd), но мы будем рассматривать только один метод сжатия — Deflate, по той причине, что именно данный метод используют большинство приложений, которые упаковывают свои форматы в ZIP. Вот небольшой список форматов файлов, которые на самом деле являются ZIP-архивами — open-file.ru (введите в поиске ASCII-дескриптор заголовка — PK). Сразу оговорюсь, это только небольшой перечень файлов.

Метод сжатия Deflate

На сегодняшний день есть несколько библиотек, основанных на методе сжатия Deflate:

Библиотека Deflate Скорость работы Степень сжатия Приложения
Zlib Высокая Низкая
7-zip Средняя Средняя 7-zip, advzip
Kzip Низкая Высокая kzip

Так что перед тем как выбирать архиватор для ZIP, необходимо понять какой результат нам нужен, и сколько времени готовы затратить для его получения. для Deflate характерно, чем выше степень сжатия, тем больше времени придется затратить.

image

Архиваторы ZIP

В данном разделе, мы будем рассматривать только те приложения, которые бесплатные для использования.

Алгоритм 7-zip

Здесь мы поговорим о двух программах, где реализован алгоритм 7-zip: 7-zip и advzip.
При создании zip-архива в помощью 7-zip, я использую следующие параметры

-r -mm=Deflate -y -tzip -mpass=15 -mfb=258 -mx9

Особенность работы advzip в том, что он уже работает с готовыми архивами zip, т.е. вы просто указываете путь к архиву, и он сам пытается его сжать. Бывает удобно когда у вас уже есть готовый архив, и вам не надо распаковывать и архивировать еще раз.

Алгоритм kzip

Алгоритм kzip был реализован в приложении kzip, приложение работает крайне медленно, но практически всегда дает лучший результат. У него есть настройки (/s, /n, /b), которые могут улучшить/ухудшить степень сжатия ZIP.

Рекомендации
  • Если вы архивируете файлы, и там есть архивы ZIP, рекомендую эти архивы разжать (для удобства можно использовать advzip с параметром /z0). Это объясняется тем, что метод Deflate не поддерживает непрерывные архивы, т.е. получается, что когда метод Deflate пытается сжать разжатый архив, разжатый архив в этом случаи предстает как один целый файл и его содержимое сжимается как непрерывный архив.
  • Если вы хотите получить максимальный эффект сжатия, то можете воспользоваться приложением zipmix. Допустим вы создали два одинаковых по содержанию архива zip с помощью kzip, но разными настройками, и в итоги получали разные по размеру архивы. Но это не означает, что все файлы, которые вы сжали в первом архиве имеют по отдельности в сжатом виде меньший размер, чем во втором архиве. Для этих целей нужен zipmix, он создает из двух архивов третий архив, с меньшим размером, т.к. он сравнивает каждый файл по отдельности, и выбирает тот вариант, где размер меньше. zipmix работает не только с архивами kzip.
Практика

И так решил показать, как это все работает. Для примера я взял игру для iPad — Angry Birds HD версии 2.0.0. Исходный размер игры 13 547 363 байт.

Приложения Результат, байт Затраченное время, секунда
advzip 12 891 768 195
7-zip 12 891 143 720
kzip 12 877 794 2770
7-zip+advzip 12 858 419
kzip+advzip 12 849 101
kzip+7-zip+advzip 12 842 760

Как видно zipmix может ненамного улучшить степень сжатия. Лично мне когда надо получить максимум объединяю просто все три (kzip + advzip + 7-zip) результата в один. Это на много лучше, чем пытаться перебирать параметры в kzip.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *