Если мы предположим, что первое изображение больше второго, то в Imagemagick 6 вам придется рассчитать размер первого изображения и сохранить его в переменной.Затем используйте эту переменную, чтобы изменить размер второй.Затем добавьте два изображения по вертикали с гравитацией и цветом фона по желанию.
Вот команда в синтаксисе Unix от моего Mac OSX.(Извините, я не использую Window, чтобы знать, как обращаться с переменными, но см. https://imagemagick.org/Usage/windows/)
image1:
image2:
Unix для Imagemagick 6:
dims=$(convert red.jpg -format "%wx%h" info:)
convert red.jpg \( green.jpg -resize $dims \) -background white -gravity center -append -quality 100 red_green.jpg
В Imagemagick 7 в Unix вы можете сделать это водна командная строка:
magick red.jpg -set option:dims "%wx%h" \( green.jpg -resize "%[dims]" \) -background white -gravity center -append -quality 100 red_green.jpg
В этом случае команда Imagemagick 7 Window будет такой же, кроме как удалить \ s. Для bat удвойте%
magick red.jpg -set option:dims "%wx%h" ( green.jpg -resize "%[dims]" ) -background white -gravity center -append -quality 100 red_green.jpg
ДОПОЛНЕНИЕ:
Если вы не знаете, какое изображение больше или одно изображение больше по ширине, а другое больше по высотезатем в Imagemagick 7 вы можете выполнить:
magick red.jpg green.jpg -set option:ww "%[fx:max(u.w,v.w)]" -set option:hh "%[fx:max(u.h,v.h)]" -resize "%[ww]x%[hh]" -background white -gravity center -append -quality 100 red_green.jpg
ADDITION2:
При этом размеры обоих изображений будут изменены, так что их максимальные размеры будут равны наибольшему из двух.изображения (с сохранением соотношения сторон).
красный:
зеленый:
magick red2.jpg green2.jpg -set option:dim "%[fx:max(max(u.w,v.w),max(u.h,v.h))]" -resize "%[dim]x%[dim]" -background white -gravity center -append -quality 100 red_green2.jpg
ADDITION3:
Если вам нужна ширина, дополненная белым до того же размера, что и конечная высота каждого изображения, то вы можете сделать следующее.В основном просто добавьте -extent Wx.
. При этом размер большего размера каждого изображения изменяется до самого большого размера обоих изображений.
magick red2.jpg green2.jpg -set option:dim "%[fx:max(max(u.w,v.w),max(u.h,v.h))]" -resize "%[dim]x%[dim]" -background white -gravity center -append -gravity north -extent "%[dim]x" -quality 100 red_green3.jpg