0

在 Python 中,字符串:

a = '00001111\n00110011\n00110101\n.....'

我如何将其转换为 8x8 像素的图像,其中 0 代表黑色,1 代表白色。是学习例如 BMP 并从中制作 BMP 文件的途径。还是有更顺畅的启蒙之路?

4

1 回答 1

1

第一步是将您的字符串转换为包含正确值的字节序列:

pixel_value = {'0': 0, '1': 255}
byte_seq = ''.join(chr(pixel_value[c]) for c in a if c in pixel_value)

然后使用PILImage.fromstring将其转换为图像:

from PIL import Image
im = Image.fromstring('L', (8, 8), byte_seq)
im.show()
于 2013-02-05T23:02:28.123 回答