将ImageMagick命令行参数转换为Wand

将ImageMagick命令行参数转换为Wand,imagemagick,wand,Imagemagick,Wand,我想知道如何使用Wand库将ImageMagick的这个工作命令行序列转换为Python脚本: convert test.gif -fuzz 5% -layers Optimize test5.gif Python代码是: from wand.api import library from wand.color import Color from wand.drawing import Drawing from wand.image import Image import ctypes lib

我想知道如何使用Wand库将ImageMagick的这个工作命令行序列转换为Python脚本:

convert test.gif -fuzz 5% -layers Optimize test5.gif
Python代码是:

from wand.api import library
from wand.color import Color
from wand.drawing import Drawing
from wand.image import Image
import ctypes
library.MagickSetImageFuzz.argtypes = (ctypes.c_void_p,
                                       ctypes.c_double)
with Image(filename='test.gif') as img:
    library.MagickSetImageFuzz(img.wand, img.quantum_range * 0.05)
    with Drawing() as ctx:
        ctx(img)
    img.optimize_layers()
    img.save(filename='test5.gif')
但是,我从ImageMagick命令行得到了不同的结果。
为什么…

这与CLI匹配,但如果gif设置了动画或之前进行了优化,结果可能会有所不同

从wand.image导入图像
使用图像(filename='test.gif')作为img:
img.fuzz=img.quantum_范围*0.05
img.优化_层()
保存(filename='test5.gif')

第一个问题很好,JunZhang。能否分别提供ImageMagick和python脚本的输出。它使任何试图帮助你理解你的问题的人都更容易。