我正在用枕头画一个环形的长方形。这在我的台式电脑上有效,但在我的笔记本电脑上却抛出了一个奇怪的异常。
这是代码(简称):
from PIL import Image, ImageDraw
(...)
img = Image.open(sys.argv[1])
rimg = img.copy()
rimg_draw = ImageDraw.Draw(rimg)
(...)
(for-loop)
rimg_draw.rectangle((x1, y1, x2, y2), fill=None, outline=(255, 0, 0))
这将引发以下异常:
rimg_draw.rectangle((x1, y1, x2, y2), fill=None, outline=(255, 0, 0))
File "/home/daniel/tensorflow2.7/lib/python2.7/site-packages/PIL/ImageDraw.py", line 203, in rectangle
ink, fill = self._getink(outline, fill)
File "/home/daniel/tensorflow2.7/lib/python2.7/site-packages/PIL/ImageDraw.py", line 124, in _getink
ink = self.draw.draw_ink(ink, self.mode)
TypeError: function takes exactly 1 argument (3 given)
我不明白,为什么这段代码失败了:在Pillow自己的documentationPIL.ImageDraw.Draw.rectangle
中用这些参数定义了rectangle(xy, fill=None, outline=None)
。
既然文档显式地列出了可选参数fill
和outline
,枕头为什么抱怨它只需要一个参数?
pip freeze
说枕头的版本是3.3.1
。
目前没有回答
相关问题 更多 >
编程相关推荐