I have a lot of images of accommodations and restaurants for my webpage, but each images has different sizes. For example, I have one image of 300x250 and another one of 550x300.
I want to make squares cropping this images from 300x250 to 250x250 and 300x550 to 300x300 for example.
I find some command to crop images with "imagemagic" but I can't crop as square, centered.
I want to make a copy of all my images squared and then resize all to the same size.
I try with this command but I get "No such file or directory" error.
find . -name '*.jpg' -type f -exec bash -c 'convert -define jpeg:size=200x200 ${0%.jpg} -thumbnail 100x100^ -gravity center -extent 100x100 $0_thumbnail.jpg' {} \;
Now, I can crop images with this code:
find . -name '*.jpg' -type f -exec bash -c 'convert -define jpeg:size=200x200 $0 -thumbnail 100x100^ -gravity center -extent 100x100 ${0}_thumb.jpg' {} \;
But cropped image gets this name "X.jpg_thumb.jpg". How can I modify this command to create X_thumb.jpg filename?
[SOLVED] This command solve my problem "%.*"
find . -name '*.jpg' -type f -printf "%f\n" -exec bash -c 'convert -define jpeg:size=200x200 $0 -thumbnail 100x100^ -gravity center -extent 100x100 ${0%.*}_thumb.jpg' {} \;
SOLUTION
find . -name '*.jpg' -type f -printf "%f\n" -exec bash -c 'convert -define jpeg:size=200x200 $0 -thumbnail 100x100^ -gravity center -extent 100x100 ${0%.*}_thumb.jpg' {} \;