Работа с помощната програма за преобразуване от пакета ImageMagick

Много често много хора имат задачата да променят масово снимки или други изображения. Например, току-що сте направили няколкостотин снимки и искате да ги качите в услуга за споделяне на файлове, но те заемат твърде много място. Можете да намалите разделителната способност, за да ги направите по-малки, но отнема много време, за да намалите всяка снимка една по една. Тук на помощ идват възможностите на черупката и помощната програма за преобразуване от пакета ImageMagick (или GraphicsMagick).

$ convert -resize 640x480 Image.jpg mini_image.jpg

Можете да използвате възможностите на командната обвивка за групова промяна на изображения. Например цикъл for в bash.

$ за име в `ls * .jpg` do; конвертиране -размер 640x480 $ име мини/$ име

Или в tcsh, използвайки foreach.

% foreach име (`ls * .jpg`)
конвертиране -размер 640x480 $ име мини/$ име
край

Или можете да използвате xargs.

$ ls * .jpg | xargs -I '<>' convert -resize 640x480 <> newmini/<>

Или нулево разделени.

$ find ./ -maxdepth 1 -iname '* .jpg' -printf '% f \ 0' | xargs --null -I '<>' конвертиране -размер 640x480 <> newmini/<>

$ convert -resize 50% Image.jpg mini_image.jpg

Можете също да добавите параметъра -quality, който задава нивото на компресия.

$ convert -resize 640x480 -quality 30 Image.jpg mini_image2.jpg
$ du -ch mini_image *
24K mini_image2.jpg
80K mini_image.jpg
Общо 104K

Също така често възниква задачата да обърнете изображението. Това може да се направи с помощта на -rotate, чиито параметри са зададени в градуси.

$ convert -rotate 90 Image.jpg rotate_image.jpg

Степента може да бъде всякаква, но ако не се дели на 90 изцяло, тогава празните места ще бъдат запълнени с бяло. При желание цветът може да се промени с помощта на опцията-background.
Например вземете това изображение:

програма

Обърнете го на 120 градуса.

$ convert -rotate 120 ex_or.jpg ex1.jpg

$ convert -rotate 120-background blue ex_or.jpg ex2.jpg

Получаваме това:

помощната

Цветът може да се зададе по няколко начина. Например червено:

-фон червен
-фон "# FF0000"
-фон "rgb (255,0,0)"

Краткото име на цвета може да се види с помощта на тази команда:

$ convert -list цвят

Помощната програма за конвертиране може да прави няколко неща едновременно. Например можете да преоразмерите изображението и да го обърнете едновременно. Важен е и редът, в който са посочени опциите. Първите, които трябва да бъдат изпълнени, са тези действия, които са посочени първо. Така че командата: