To create an image thumbnail using an older version of ImageMagick, it was possible in the following ways:
(To aid in futher referencing, examples are numbered.)
1. convert.exe image.jpg -thumbnail 100x100 ./converted/converted_image.jpg
2. mogrify.exe -thumbnail 100x100 -path ./converted image.png
Now I have ImageMagick 7 (downloaded just yesterday), and during installation I intentionally turned "Install legacy utilities (e.g. convert.exe)" checkbox off. That is, I have only one utility in my ImageMagick directory: magick.exe.
I'm trying to understand what is the correct and future-proof way to perform above-mentioned operations according to modern ImageMagick versions.
A quote from https://imagemagick.org/script/porting.php#cli:
animate,compare,composite,conjure,convert,display,identify,import,mogrify,montage,streamTo reduce the footprint of the command-line utilities, these utilities are symbolic links to the
magickutility. You can also invoke them from themagickutility, for example, usemagick convert logo: logo.pngto invoke themagickutility.
In the same source:
With the IMv7 parser, activated by the
magickutility, settings are applied to each image in memory in turn (if any). While an option: only need to be applied once globally. Using the other utilities directly, or as an argument to themagickCLI (e.g.magick convert) utilizes the legacy parser.
Hmm...
Works:
3. magick.exe convert image.jpg -thumbnail 100x100 ./converted/converted_image.jpg
4. magick.exe mogrify -thumbnail 100x100 -path ./converted image.png
Still works (the same way as magick.exe convert):
5. magick.exe image.jpg -thumbnail 100x100 ./converted/converted_image.jpg
However, the following one doesn't work (expected: should work the same way as magick.exe mogrify):
6. magick.exe -thumbnail 100x100 -path ./converted image.png
My question is: Which syntax should I use for convert and for mogrify? 3 and 4, or 4 and 5, or something different?
The current release is ImageMagick 7.1. 0-45. It runs on Linux, Windows, Mac Os X, iOS, Android OS, and others. The authoritative ImageMagick web site is https://imagemagick.org.
MOGRIFY® is a direct cellular reprogramming platform, which leverages transcriptomic data to identify optimal combinations of transcription factors for the conversion, via enhanced forward reprogramming or transdifferentiation, of any cell type into any other cell type.
AFAIK, and I am happy to add any corrections suggested, it works like this.
The first idea is that you should use version 7 if possible and all the old v6 commands, WITH THE EXCEPTION OF convert should be prefixed with magick. That means you should use these
magick ... # in place of `convert`
magick identify ... # in place of `identify`
magick mogrify ... # in place of `mogrify`
magick compare ... # in place of `compare`
magick compose ... # in place of `compose`
If you use magick convert you will get old v6 behaviour, so you want to avoid that!
Furthermore, v7 is more picky about the ordering. You must specify the image you want something done to before doing it. That means old v6 commands like:
convert -trim -resize 80% input.jpg output.jpg
must now become:
magick input.jpg -trim -resize 80% output.jpg # magick INPUT operations OUTPUT
So, looking specifically at your numbered examples:
Should become:
magick image.jpg -thumbnail 100x100 ./converted/converted_image.jpg
Should become:
magick mogrify -thumbnail 100x100 -path ./converted image.png
invokes old v6 behaviour because you use magick convert instead of plain magick, and should be avoided
Is correct, modern syntax
Is correct, modern syntax
Looks like you meant magick mogrify because you didn't give input and output filenames and because you use -path, but it looks like you accidentally omitted mogrify. If you didn't accidentally omit mogrify, then you probably meant to use the old convert-style command, and need an input and an output file and you need to specify the input file before the -thumbnail.
Keywords: Usage, wrong, modern, v7 syntax, prime.
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