Python PIL - Draw Circle [duplicate]

*爱你&永不变心* 提交于 2020-01-29 04:37:03

问题


I am trying to draw a simple circle and save this to a file using the Python Imaging Library:

import Image, ImageDraw

image = Image.new('RGBA', (200, 200))
draw = ImageDraw.Draw(image)
draw.ellipse((20, 180, 180, 20), fill = 'blue', outline ='blue')
draw.point((100, 100), 'red')
image.save('test.png')

The point draw.point appears on the image, but the ellipse itself does not. I tried changing the mode to just RGB (I thought the mode might affect what is displayed), but this did not solve it.

How can I fix this? Thanks!


回答1:


Instead of specifying the upper right and lower left coordinates, swap them to get the upper left and lower right.

draw.ellipse((20, 20, 180, 180), fill = 'blue', outline ='blue')



回答2:


Your ellipsis coordinates are incorrect, that should be (x1, y1, x2, y2), where x1 <= x2 and y1 <= y2, as those pairs, (x1, y1) and (x2, y2), represents respectively top left and bottom right corners of enclosing rectangle.

Try to change to

draw.ellipse((20, 20, 180, 180), fill = 'blue', outline ='blue')



来源:https://stackoverflow.com/questions/20747345/python-pil-draw-circle

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!