Use ImageMagick to place an image inside a larger canvas

Solution 1:

I used -extent to do this:

convert input.jpg -gravity center -background white -extent 50x50  output.jpg

Solution 2:

I wanted to do the same, except shrink the image to 70% inside. I used this:

convert input.png -resize 70%x70% -gravity center -background transparent -extent 72x72 output.png

Not exactly what was requested but hopefully it will help someone ;).

Solution 3:

I have once used this code to place an image in the center of a new canvas with white background. hope this will help you

convert -background white -gravity center your_image.jpg -extent 50x50 new_image.jpg

Solution 4:

See cutting and bordering for a huge number of examples. Here's one simple way you might do it:

convert input.png -bordercolor Black -border 5x5 output.png

Of course, you'll need to calculate the size of the border to add (if any) based on the dimensions of the input image. Are you using an ImageMagick API, or just the command line tools?