Показаны сообщения с ярлыком групповое изменение размера картинок. Показать все сообщения
Показаны сообщения с ярлыком групповое изменение размера картинок. Показать все сообщения

пятница, 17 сентября 2010 г.

Групповое изменение размера изображений

Последнее время часто приходится обрабатывать фотографии для сайтов. Необходимо из фотки большого размера получить 2 фотки одну не больше 800х600 и другую не больше 130х98.
Пока фоток было мало справлялся Gimp. Но когда каждый день более 10 фоток. Немного покурив описание скриптового языка гимпа я понял что быстро он не сдастся. Поэтому вспомнил про замечательный пакет Image Magick - который есть в репозиториях любого linux дистрибутива.
IM (image magick) - это графический редактор работающий в консоли. Моя проблема с групповым изменением размера картинок решилась так:
переходим в каталог с фотками (предположим это файлы с расширением jpg) и выполняем команду
ls *.jpg | xargs -I FILE convert FILE -thumbnail 130x98 FILE_s.gif
ls - сгенерировал список файлов в текущей директории.
xargs - взял результаты работы ls и передал их convert
convert - уменьшил файлы и сохранил уменьшенные копии с расширеием gif а так же добавил к имени файла "_s"
P.S. если необходимо преобразовать файлы из нескольких подкаталогов, то можно воспользоваться такой комбинацией:
find . -type f | sed "s#^.#$(pwd)#" | xargs -I FILE convert FILE -thumbnail 800x600 FILE_b.jpg