我不确定我做错了什么,但这真的很奇怪。 我不确定是否应该向魔杖的Git存储库提交新问题。
编辑:我正在尝试绘制一个矩形。
请考虑以下代码:
from wand.drawing import Drawing
from wand.color import Color
from wand.image import Image
def drawer():
square = Drawing()
square.fill_color = Color('#fff')
square.stroke_width = 4
square.stroke_color = Color('red')
square.rectangle(left=100, top=100, width=100, height=100)
return square
im = Image(width=500, height=500)
sq = drawer()
sq.draw(im)
im.save(filename='test1.png')
这输出:
从我尝试过的错误来看,如果square.stroke_width
小于或等于2,就不会发生这种情况。
我不确定它是魔杖的错误还是我做错了。
答案 0 :(得分:1)
看起来你有孤立的绘图实例。 Wand利用python的with ... as ... :
关键字管理上下文&资源。实施例...
from wand.drawing import Drawing
from wand.color import Color
from wand.image import Image
class Drawer(Drawing):
def __enter__(self):
super(Drawing, self).__enter__()
self.fill_color = Color('#fff')
self.stroke_width = 4
self.stroke_color = Color('red')
self.rectangle(left=100, top=100, width=100, height=100)
return self
with Image(width=500, height=500) as im:
with Drawer() as sq:
sq(im)
im.save(filename='/tmp/test1.png')
答案 1 :(得分:0)
根据http://docs.wand-py.org/en/0.4.1/guide/draw.html,它应该可以正常工作。如果您转到页面底部,则会显示如何绘制多边形。与您的代码看起来相比,它应该可以正常工作。我不知道什么是错的,但我很确定你的代码没问题。
答案 2 :(得分:0)
我已经弄明白了。 1}}在ubuntu的APT存储库上已经过时了。
libmagickwand-dev
所以我更新了它。按照here提供的说明添加
$ python -m wand.version -v
Wand 0.4.2
ImageMagick 6.7.7-10 2014-03-06 Q16 http://www.imagemagick.org
$ apt-cache show libmagickwand-dev | grep Version
Version: 8:6.7.7.10-6ubuntu3
到我的环境变量。
它起作用了。
export MAGICK_HOME=/usr/local/lib/