1

我正在使用 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,我认为这是计算机中的某种神奇数字。无论如何,我真的不知道为什么。

任何人都可以提出另一种调整大小的方法,它没有这个缺点。

4

0 回答 0