Оптимизация изображений средствами командной строки Linux

Иногда возникает такая необходимость — сделать что-то с целой кучей изображений, чаще всего — сжать, чтобы не занимали много места.

Есть много разных редакторов — Photoshop, Lightroom и им подобных. Кроме того, появилось уже очень много всяких онлайн сервисов, которые позволяют сжимать и оптимизировать картинки.

Если этих картинок с десяток, то можно обойтись каким-нибудь сервисом. А вот если их больше, на помощь приходят консольные утилиты. Одни из таких ImageMagick, jpegoptim, optipng

ImageMagick представляет из себя кроссплатформенный набор утилит, который содержит очень много функций для работы с изображениями — конвертирование из одного формата в другой, различные трансформации (ресайз, обрезка, вращение, зеркальное отражение), применение разных эффектов, вроде размытия… и очень много других.

Jpegoptim и optipng позволяют сжать изображение без потери качества, а для jpegoptim также возможно сжатие с потерями.

Примеры с ImageMagick

Поиск и ресайз всех изображений до 500px

Для одного файла:

Для нескольких изображений можно использовать такую магию:

Разместить маленькое изображение внутри белого квадрата, заданного размера

Создание пиктограмм 80×80

Примеры с jpegoptim и optipng.

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

Сжатие с потерями, удаление всей мета-информации:

Для оптимизирования всех png изображений можно использовать следующую команду

где -o может быть от -o0 до -o7
Чем выше этот параметр, тем больше фильтров будет использовано для оптимизации. Размер будет меньше, но и обрабатываться каждое изображение будет дольше.

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

Прочее

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

Скачивание картинок списком, удаление белого пространства вокруг них

Чтобы скачать картинки списком, удобнее всего использовать wget.
Переходим в нужный каталог, где у нас подготовлен файл с адресами url картинок и запускаем команду:

Для того, чтобы обрезать одну картинку нужно запустить команду:

Чтобы обрезать несколько, то можно воспользоваться find:

где out — папка, куда будут сохраняться обработанные картинки


Источник: http://diggitize.me/imageoptimize/

Разработка и создание сайтов, интернет-магазинов, веб-приложений, порталов, лэндингов, мобильных приложений (Киев)

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

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