Я искал вокруг этого и не могу найти легко реализуемое решение.
В настоящее время я работаю над приложением, которое занимается панорамами. Поскольку они выходят из процесса пакетного стежка, размеры в среднем 18000x4000. Используя ImageMagick, как я могу уменьшить эти изображения до определенного значения высоты при сохранении соотношения сторон?
В соответствии с руководством, convert
для изменения размера требуются высота и ширина при сохранении одинакового соотношения сторон. Я хотел бы добавить 600 и 1000 в мою существующую функцию сценария изменения размера и иметь как обычное видимое изображение, так и уменьшенный размер.
imagemagick
image-processing
Джейсон
источник
источник
Ответы:
В соответствии с документацией ImageMagick я предлагаю использовать
-geometry x600
, тогда какx600
означает, что новое изображение имеет высоту 600 пикселей с тем же соотношением сторон, что и старое изображение.Для одного изображения вы можете запустить:
Если вы предпочитаете конвертировать все образы папки за один прогон, переключитесь на нее (т.е.
cd ~/Pictures/panoramas/
) и используйтеНо будьте осторожны с этим, потому что он перезаписывает исходные файлы изображений . Чтобы избежать этого вы могли
mkdir ~/Pictures/panoramas/small
)cp ~/Pictures/panoramas/*.png ~/Pictures/panoramas/small
) иcd ~/Pictures/panoramas/small && mogrify -geometry x600 *.png
).источник
Чтобы изменить размер всех файлов в папке, можно использовать что-то вроде
--- изменить размер и расширение по мере необходимости
источник