Python Wand将tiff更改为min-is-white

时间:2016-02-04 15:55:45

标签: python imagemagick tiff wand

我需要将文件转换为tiff,其中设置光度计" min-is-white" (白色为零)符合要求的标准。我使用Wand与Photomagick进行交互,但每次保存一个双层tiff文件,它都会创建一个min-is-black。

如何将魔杖保存在白色为零的地方?它甚至可能吗?

1 个答案:

答案 0 :(得分:2)

马克的评论是正确的。您需要为ImageMagick设置-define属性。

对于,您必须扩展核心wand.api.library以连接MagickWand的C-API MagickSetOption方法。

from ctypes import c_void_p, c_char_p
from wand.api import library
from wand.image import Image

# Tell python about the MagickSetOption method
library.MagickSetOption.argtypes = [c_void_p,  # MagickWand * wand
                                    c_char_p,  # const char * option
                                    c_char_p]  # const char * value

# Read source image
with Image(filename="/path/to/source.tiff") as image:
    # -define quantum:polarity=min-is-white
    library.MagickSetOption(image.wand,          # MagickWand
                            "quantum:polarity",  # option
                            "min-is-white")      # value
    # Write min-is-white image
    image.save(filename="/path/to/min-is-white.tiff")

您可以使用identify实用程序验证生成的图像。

identify -verbose /path/to/min-is-white.tiff | grep photometric
#=> tiff:photometric: min-is-white