14 июн. 2009 г.

ImageMagick: изменить размер всех изображений в директории

Довольно часто возникает задача все изображения, только что сброшенные с web-камеры, уменьшить, чтобы разместить в своём фотоальбоме какой-нибудь социальной сети отправить по электронной почте. Конечно, есть GIMP, но это хорошо, если изображений штук 10. А если их 100? 1000?

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

Для уменьшения изображения достаточно ввести команду:

$ convert -resize 75% -quality 80 image.jpg resized_image.jpg

В результате мы получим изображение размером 75% от исходного (image.jpg) с качеством 80% в файле resized_image.jpg.

Теперь нам нужно выполнить эту команду для всех файлов директории:

$ for i in `ls *.jpg`; do convert -resize 75% -quality 80 $i resized/$i; done

Теперь все файлы с расширением *.jpg в текущей директории будут уменьшены до 75% с качеством 80% и записаны в директорию ./resized, которая должна существовать.

Теперь можно все изображения отправлять на одноклассники по электронной почте.

2 комментария:

  1. Все это несомненно хорошо.

    Но есть такие тулзы как Picasa. А в Убунту по умолчанию - F-Spot.

    ОтветитьУдалить
  2. Picasa – это web-тулза, а f-spot тянет за собой mono.

    Ну, и не работают они из консоли.

    ОтветитьУдалить