ImageMagick change aspect ratio without scaling the image

aspect-ratioimagemagickresize

I have a large number of images that can be any dimension that I need make into the same aspect ratio (basically square). So if one image is 100×300 the output should be 300×300. What I don't want is the image scaled or stretched in any way. I just want a background color (white) applied to the sides of the image, then the original image centered (either vertically or horizontally depending on the original aspect ratio).

I've played around with a couple different convert commands, but I have not found the magic one yet – they all either distort the image to reach the aspect ratio, or scale the image to the correct larger dimension, but do not have the aspect ratio I was looking for.

Thanks in advance

Best Answer

convert input.png -background white -gravity center -extent 100x300 -flatten output.png

See http://www.imagemagick.org/Usage/crop/#extent

Related Topic