有没有人尝试使用python魔杖创建drophadow?我浏览了这个文档,无法找到drophadow属性。
http://docs.wand-py.org/en/0.4.1/wand/drawing.html
根据imagemagick,可以通过以下方式进行: http://www.imagemagick.org/Usage/fonts/
convert -size 320x100 xc:lightblue -font Candice -pointsize 72 \
-fill black -draw "text 28,68 'Anthony'" \
-fill white -draw "text 25,65 'Anthony'" \
font_shadow.jpg
我如何在python中调整它?
答案 0 :(得分:4)
有没有人尝试使用python魔杖创建drophadow?
如果您搜索wand代码,有一些技巧和示例。
我浏览了这个文档但找不到drophadow属性。
你不会看到一个属性,因为在矢量绘图上下文中,这些阴影是无意义的。 (至少我认为)
这是创建文本阴影的一种方法/方法。
from wand.color import Color
from wand.compat import nested
from wand.drawing import Drawing
from wand.image import Image
dimensions = {'width': 450,
'height': 100}
with nested(Image(background=Color('skyblue'), **dimensions),
Image(background=Color('transparent'), **dimensions)) as (bg, shadow):
# Draw the drop shadow
with Drawing() as ctx:
ctx.fill_color = Color('rgba(3, 3, 3, 0.6)')
ctx.font_size = 64
ctx.text(50, 75, 'Hello Wand!')
ctx(shadow)
# Apply filter
shadow.gaussian_blur(4, 2)
# Draw text
with Drawing() as ctx:
ctx.fill_color = Color('firebrick')
ctx.font_size = 64
ctx.text(48, 73, 'Hello Wand!')
ctx(shadow)
bg.composite(shadow, 0, 0)
bg.save(filename='/tmp/out.png')
编辑以下是与“使用示例”匹配的另一个示例。
from wand.color import Color
from wand.drawing import Drawing
from wand.image import Image
# -size 320x100 xc:lightblue
with Image(width=320, height=100, background=Color('lightblue')) as image:
with Drawing() as draw:
# -font Candice
draw.font = 'Candice'
# -pointsize 72
draw.font_size = 72.0
draw.push()
# -fill black
draw.fill_color = Color('black')
# -draw "text 28,68 'Anthony'"
draw.text(28, 68, 'Anthony')
draw.pop()
draw.push()
# -fill white
draw.fill_color = Color('white')
# -draw "text 25,65 'Anthony'"
draw.text(25, 65, 'Anthony')
draw.pop()
draw(image)
# font_shadow.jpg
image.save(filename='font_shadow.jpg')