Изменить размер изображения до определенного значения высоты в ImageMagick?

Я искал это и не могу найти легко реализуемое решение.

В настоящее время я работаю над приложением, которое занимается панорамами. Поскольку они выходят из процесса пакетного стежка, размеры в среднем 18000x4000. С помощью ImageMagick, как я могу уменьшить эти изображения до определенного значения высоты при сохранении соотношения сторон?

Согласно руководству, операция convert принимает размеры и ширину, и размеры, чтобы изменить ее размер при сохранении того же соотношения сторон , Я хотел бы добавить 600 и 1000 в мою существующую функцию сценария изменения размера и иметь как обычное видимое изображение, так и уменьшенный размер.

27
задан 30 May 2012 в 15:46

2 ответа

для изменения размера всех файлов в папке можно использовать что-то вроде

mogrify -resize 800x1094! * jpg # сохранить соотношение сторон изображения

--- изменить размер и расширение в соответствии с требованиями

0
ответ дан 30 May 2012 в 15:46

Согласно документации ImageMagick я предлагаю использовать -geometry x600, тогда как x600 означает, что новое изображение имеет высоту 600 пикселей с тем же соотношением сторон , что и старое изображение.


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

convert input.png -geometry x600 output.png

Если вы предпочитаете конвертировать все изображения папки за один прогон, переключитесь к нему (то есть cd ~/Pictures/panoramas/) и используйте

mogrify -geometry x600 *.png

Но будьте осторожны с этим, потому что он перезаписывает исходные файлы изображений . Чтобы избежать этого, вы можете

  1. создать новую папку (mkdir ~/Pictures/panoramas/small)
  2. скопировать изображения в эту папку (cp ~/Pictures/panoramas/*.png ~/Pictures/panoramas/small) и
  3. отредактировать изображения в этой новой папке (cd ~/Pictures/panoramas/small && mogrify -geometry x600 *.png).
0
ответ дан 30 May 2012 в 15:46

Другие вопросы по тегам:

Похожие вопросы: