Python中的魔杖 alpha()函数
alpha()函数与 wand color()函数相同。与 color()函数类似,alpha()函数使用当前填充颜色在图像上绘制颜色,从指定位置和方法开始。使用与 color() 方法相同的参数。
Syntax: wand.drawing.alpha(x, y, method)
Parameters :
Parameter | Input Type | Description |
---|---|---|
x | numbers.Integer | start of filling clor |
y | numbers.Integer | end of filling clor |
method | basestring | method from PAINT_METHOD_TYPES |
以下是 PAINT_METHOD_TYPES:
- 'point' 改变单个像素。
- 'replace' 将颜色换成另一种。阈值受模糊影响。
- 'floodfill' 填充受绒毛影响的颜色区域。
- 'filltoborder' 填充颜色区域,直到由border_color 定义的边框。
- 'reset' 将整个图像替换为单一颜色。
注意:此方法替换 ImageMagick 版本 7 中的 matte()。如果尝试调用不支持 DrawAlpha 的库,则会引发 AttributeError。
示例 #1:
# Import required objects from wand modules
from wand.image import Image
from wand.drawing import Drawing
from wand.color import Color
# generate object for wand.drawing
with Drawing() as draw:
draw.alpha(100, 100, 'point')
with Image(width = 200,
height = 200) as img:
# draw shape on image using draw() function
draw.draw(img)
img.save(filename ='color.png')
输出:
在透明图像的中心可以看到一个像素,这里是放大的图像。
示例 #2:
使用洪水填充算法填充颜色。
# Import required objects from wand modules
from wand.image import Image
from wand.drawing import Drawing
from wand.color import Color
# generate object for wand.drawing
with Drawing() as draw:
draw.fill_color = Color('blue')
draw.alpha(10, 35, 'floodfill')
with Image(width = 200,
height = 200,
background = Color('white')) as img:
# draw shape on image using draw() function
draw.draw(img)
img.save(filename ='color2.png')
输出: