【发布时间】:2021-12-31 19:08:45
【问题描述】:
我的函数接受字节以在内部将它们作为 PIL.Image 对象打开。将字节传递给该函数时,该函数按预期工作。但我想为它写几个测试。所以我需要生成图像,将它们转换为字节并将它们传递给我的函数,以便它可以再次将其转换回图像。
基本上我想做这样的事情:
from PIL import Image
from io import BytesIO
orig = Image.new(mode='RGBA', size=(240, 60))
image_bytes = orig.tobytes()
stream = BytesIO(image_bytes)
new = Image.open(stream)
但我不明白的是它不起作用,我得到了这个 Traceback:
Traceback (most recent call last):
File "<input>", line 1, in <module>
File "/Users/crane/PycharmProjects/my_project/venv/lib/python3.9/site-packages/PIL/Image.py", line 3030, in open
raise UnidentifiedImageError(
PIL.UnidentifiedImageError: cannot identify image file <_io.BytesIO object at 0x104f86950>
【问题讨论】:
-
我的回答解决了你的问题吗?如果是这样,请考虑接受它作为您的答案 - 通过单击计票旁边的空心对勾/复选标记。如果没有,请说出什么不起作用,以便我或其他人可以进一步帮助您。谢谢。 meta.stackexchange.com/questions/5234/…
标签: python-3.x python-imaging-library byte bytesio