我正在使用 IM 调整图像大小,如下所示;
mogrify -path . \
-format 1120.jpg \
-filter Triangle \
-define filter:support=2 \
-scale 1120 \
-unsharp 0.25x0.08+8.3+0.045 \
-dither None \
-posterize 136 \
-quality 82 \
-define jpeg:fancy-upsampling=off \
-define png:compression-filter=5 \
-define png:compression-level=9 \
-define png:compression-strategy=1 \
-define png:exclude-chunk=all \
-interlace none \
-colorspace sRGB \
0c7c93160ef416ed39ed7600b17a017b.jpg
效果非常好,只需几秒钟。但是如果我将输出文件的大小增加 1 个像素,从 1120 到 1121 大约需要 2 分钟才能完成。
mogrify -path . \
-format 1121.jpg \
-filter Triangle \
-define filter:support=2 \
-scale 1121 \
-unsharp 0.25x0.08+8.3+0.045 \
-dither None \
-posterize 136 \
-quality 82 \
-define jpeg:fancy-upsampling=off \
-define png:compression-filter=5 \
-define png:compression-level=9 \
-define png:compression-strategy=1 \
-define png:exclude-chunk=all \
-interlace none \
-colorspace sRGB \
0c7c93160ef416ed39ed7600b17a017b.jpg
我不明白为什么会这样。
我确实在某处读到-resize(和-thumbnail)在内部将图像增加到最终输出的5倍,以便对其进行一些操作。(5x1120)^2 非常接近 32,000,000,我认为这是计算机中的某种神奇数字。无论如何,我真的不知道为什么。
任何人都可以提出另一种调整大小的方法,它没有这个缺点。