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

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

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

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

24
задан 30 May 2012 в 16:46

18 ответов

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

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

--- изменить размер и расширение как подходящие

2
ответ дан 25 July 2018 в 18:43

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


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

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).
33
ответ дан 25 July 2018 в 18:43

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

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

--- изменить размер и расширение как подходящие

2
ответ дан 31 July 2018 в 10:33

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


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

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).
33
ответ дан 31 July 2018 в 10:33

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

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

--- изменить размер и расширение как подходящие

2
ответ дан 31 July 2018 в 11:36

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


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

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).
33
ответ дан 31 July 2018 в 11:36

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

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

--- изменить размер и расширение как подходящие

2
ответ дан 2 August 2018 в 00:52

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


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

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).
33
ответ дан 2 August 2018 в 00:52

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

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

--- изменить размер и расширение как подходящие

2
ответ дан 4 August 2018 в 16:22

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


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

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).
33
ответ дан 4 August 2018 в 16:22

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

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

--- изменить размер и расширение как подходящие

2
ответ дан 6 August 2018 в 01:01

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


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

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).
33
ответ дан 6 August 2018 в 01:01

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

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

--- изменить размер и расширение как подходящие

2
ответ дан 7 August 2018 в 18:28

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


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

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).
33
ответ дан 7 August 2018 в 18:28

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

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

--- изменить размер и расширение как подходящие

2
ответ дан 10 August 2018 в 07:09

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


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

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).
33
ответ дан 10 August 2018 в 07:09

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

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

--- изменить размер и расширение как подходящие

2
ответ дан 15 August 2018 в 19:09
  • 1
    Это не поддерживает соотношение сторон исходного изображения – Rob 2 January 2015 в 00:01
  • 2
    @Rob, если вы хотите сохранить пропорции, оставить «!». из. – Erick 28 February 2017 в 12:01
  • 3
    Спасибо @Erick, он довольно старый, но я, вероятно, указываю, что этот ответ не отвечает правильно, поскольку OP хотел сохранить соотношение сторон. : D – Rob 28 February 2017 в 14:31

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


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

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).
33
ответ дан 15 August 2018 в 19:09

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

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