0

我正在使用 Canvas(和 Python 2.7)来显示存储在字节数组(PGM 格式)中的图像。

目前,我将它保存到磁盘,然后从文件中构造一个 PhotoImage。

如何避免保存文件?我尝试使用 cStringIO 创建一个“字符串文件”,然后使用 encode64 将其传递给 PhotoImage,问题是 cStringIO.write 不接受 bytearray:我遇到了一个错误:

TypeError: must be string or pinned buffer, not bytearray

如果可能,我想避免使用外部库,例如 PIL。

提前致谢,

弗雷德

4

1 回答 1

0

From what I see the suggestion with PhotoImage is:

The PhotoImage can also read base64-encoded GIF files from strings. You can use this to embed images in Python source code (use functions in the base64 module to convert binary data to base64-encoded strings)

You can convert the byte array to a string: byteString = ''.join([ str(x) for x in bytes ]) See if this works.

Link to base64 module

于 2012-09-25T10:02:39.597 回答