Как сжимать изображения с помощью ImageMagick?
Для компрессии изображения мы будем использовать пакет для обработки графики
ImageMagick ImageMagick для Windows можно скачать по ссылке.
На этой странице найдите раздел «Windows Binary Release» и в нём ссылку на скачивание файла ImageMagick-х.х.х-хх-portable-Q16-x86.zip (где х.х.х-хх — номер последней версии ПО), или ImageMagick-х.х.х-хх-portable-Q16-x64 (в зависимости от версии используемой вами операционной системы, 32- (x86) или 64-битной (x64)).
Скачайте необходимый файл. Для дальнейшей работы нам потребуется файл convert.exe, который находится в корневой папке скачанного архива.
Далее проделываем всё точно так же, как и раньше при обработке видеофайлов. Можно даже использовать уже созданные ранее для этого папки.
- Создайте пустую папку, в которой в дальнейшем будете производить обработку графических файлов. Для удобства опять назовём эту папку WORK.
- В папке WORK создайте — да, всё правильно, две папки IN и OUT.
- Распакуйте файл convert.exe из скачанного архива в папку WORK.
- Скопируйте в папку WORK\IN графический файл, который вы хотите сжать. Для удобства условимся, что этот файл называется image.jpg.
- В папке WORK создайте текстовый файл convert.bat. В текстовом редакторе запишите в него команду:
6. Сохраните и закройте файл convert.bat, затем запустите его. Программа convert.exe не столь говорлива, как ffmpeg.exe, поэтому на экране появится пустое чёрное окно, просто говорящее нам о том, что процесс обработки изображения запущен.
После завершения работы конвертора окно исчезнет, а в папке OUT будет находиться сжатый файл image.jpg. В зависимости от размеров, качества и параметров сжатия исходного файла, размер сконвертированного файла может быть от 5 до 20 раз меньше исходного.
Рассмотрим подробнее параметры команды, которую мы записали в файле convert.bat.
Возможностей у программы convert и другого ПО из пакета ImageMagick не меньше, а даже больше, чем у ffmpeg (среди которых, например, есть команды преобразования и сборки исходных графических файлов в документ PDF, обратное преобразование из PDF в изображение, преобразование файла изображения в текст с распознаванием и т.п.). Более подробная справка по работе с ImageMagick и примеры команд (на английском языке) находятся на официальном сайте проекта.
К сожалению, полноценной русскоязычной документации в природе не существует, поэтому для каждого конкретного случая придётся пользоваться Google или Яндексом — в интернете можно найти множество примеров использования утилит пакета.
Автоматизацию процесса обработки всех исходных файлов изображений, которые находятся в папке IN, сделаем аналогично обработке видеофайлов, с помощью JScript-скрипта.
Для этого в папке WORK создайте текстовый файл convert.js. В текстовом редакторе вставьте в него следующий программный код:
Теперь, если запустить скрипт convert.js, мы увидим открывающиеся и закрывающиеся окна утилиты convert. Когда последнее окно закроется, в папке OUT будут лежать все сжатые файлы изображений.
Итак, надеюсь, что вам были полезны приёмы, описанные в этой статье. На самом деле, случаи, которые мы рассмотрели, представляют собой лишь малую толику того, что можно сделать, используя все возможности FFMpeg и ImageMagick. Изучив способы и примеры применения этих программ, вы получите в своё распоряжение мощные инструменты для решения большинства задач, связанных с обработкой видео и графики.