我使用PIL生成了一个图像.如何将其保存到内存中的字符串?该Image.save()方法需要一个文件.
我想在字典中存储几个这样的图像.
我想使用PIL创建一个图像,并且无需将其保存到磁盘即可通过电子邮件发送.
这是有效的,但涉及保存到磁盘:
from email.mime.image import MIMEImage
from email.mime.multipart import MIMEMultipart
msg = MIMEMultipart()
im = Image.new("RGB", (200, 200))
with open("tempimg.jpg", "w") as f:
im.save(f, "JPEG")
with open("tempimg.jpg", 'rb') as f:
img = MIMEImage(f.read())
msg.attach(img)
Run Code Online (Sandbox Code Playgroud)
现在我希望能够做到这样的事情:
import StringIO
tempimg = StringIO.StringIO()
tempimg.write(im.tostring())
img = MIMEImage(tempimage.getvalue(), "JPG")
msg.attach(img)
Run Code Online (Sandbox Code Playgroud)
,这不起作用.我发现用西班牙语进行了一些讨论,看起来它解决了同样的问题,除了指向StringIO的指针外没有任何解决方案.