Python 魔杖将 tiff 更改为 min-is-white
Python Wand change tiff to min-is-white
我需要将文件转换为 tiff,其中光度设置为 "min-is-white"(白色为零)以符合要求的标准。我正在使用 Wand 与 Photomagick 交互,但每次我保存一个双层 tiff 文件时,它都会创建一个 min-is-black。
我怎样才能让魔杖把它保存在白为零的地方?有可能吗?
马克的评论是正确的。您需要为 ImageMagick 设置 -define
属性。
对于 wand,您必须扩展核心 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
我需要将文件转换为 tiff,其中光度设置为 "min-is-white"(白色为零)以符合要求的标准。我正在使用 Wand 与 Photomagick 交互,但每次我保存一个双层 tiff 文件时,它都会创建一个 min-is-black。
我怎样才能让魔杖把它保存在白为零的地方?有可能吗?
马克的评论是正确的。您需要为 ImageMagick 设置 -define
属性。
对于 wand,您必须扩展核心 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