如何从PIL中的ImageDraw获取图像?

Nik*_*iya 4 python-imaging-library python-3.x

我在项目中使用PIL,并且有ImageDraw对象。我想获取在ImageDraw对象上绘制的图像。我如何获得图像?

Laf*_*tar 8

很简单:

original_image = edited_image._image

im对象被传递到ImageDraw,然后被保存到类变量中_image。就是这样。


Cla*_*dio 7

这是你想要的?

from PIL import Image, ImageDraw
im = Image.new('RGBA', (400, 400), (0, 255, 0, 0))
draw = ImageDraw.Draw(im) 
draw.text((20, 20), "DRAW TEXT", fill="red")
draw.polygon([(5,5), (25,5), (25,20), (5,25)], fill="green", outline=None)
im.show()
im.save("ImageDraw.png")
Run Code Online (Sandbox Code Playgroud)

这是ImageDraw.png图像文件(大小调整为300%):

在此处输入图片说明

在这里,该draw对象用于在图像中绘制多边形。在绘制到draw对象时,您更改了im对象。

PS也签出:

用pil在图像上画一条线

Python影像库保存功能

  • 谢谢,我明白了 (2认同)
  • 如果我只传递了 ImageDraw.Draw 对象怎么办?有什么办法可以从中恢复图像吗? (2认同)