I have just started doing some ImageMagick work. I am currently trying to convert an image from a file size that is almost square (1411 x 1486) or similar sizes to a square shape, like 1024x1024 unfortunately the resize function doesn't seem to do a resize of the canvas so i keep getting number like 1024x982. I am wondering if there is anyway to convert a not so square image into a square image using their c++ libraries.
The reason they are not square is because i am converting GPS positions to UTM and getting a square shape, but unfortunately because of the curve of the earth they are generally about 400m off of being square... incase you were wondering.
Using 1024x1024!
will not pad the thumbnail.
Here is a link to what you want http://www.imagemagick.org/Usage/thumbnails/#pad
The command line from the link (to prevent the link-rot):
convert -define jpeg:size=200x200 hatching_orig.jpg -thumbnail '100x100>' \
-background skyblue -gravity center -extent 100x100 pad_extent.gif
You can add a ! to your geometry like "1024x1024!" on the resize or create an explicit geometry for the resize method. You may also need to set the aspect flag though the ! is supposed to do that (I've read some people have needed to do this, don't have an explanation for you on that, though).
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With