ImageMagic в Linux: Пакетная и еденичная обработка изображений

Банальная задача изменить размер изображений в linux решается не менее банально. С использованием ImageMagic в командной строке.

Сделать каталог mini и в него поместить уменьшенные до размера 1600 по большей стороне изображения.

cd %photo_folder%
mkdir mini
mogrify -path mini/ -resize 1600 "*.jpg"


Уменьшим размер изображения

cd foto
mogrify -resize 800 *.jpg
mogrify -resize 800*600 *.jpg
mogrify -resize 70% *.jpg


Изменение качества изображения

mogrify -quality 80% *.JPG


Повернуть изображение на 90 градусов

mogrify -rotate 90


Конвертируем изображение в оттенок серого

mogrify -colorspace GRAY DSC_1433.JPG


Преобразует все файлы JPG в PNG оставляя при этом преобразуемый формат без удаления

mogrify -format png *.jpg


Сценарий: найти все файлы более 250kb, скопировать их в отдельную папку, конвертировать в размер 1200*1000 (что больше, с сохранением пропорций).

$ mkdir ~/123/11
$ find ~/123 -size +250k -print -exec cp {} ~/123/11 \;
$ cd ~/123/11
$ for i in `ls`; do convert -resize 1200x1000 -quality 65 $i $i; done

В итоге у нас в каталоге ~/123/11 будут лежать сконвертированные (уменьшенные для web) файлы.

Ссылки по теме: