我有一个由 Gnuplot 生成的 png 文件,我需要使用 XLWT 将其放入 excel 文档中。
XLWT 无法将 PNG 导入文档,只能导入 BMP,因此我需要先转换 PNG。我为此使用了 PIL。
相关代码如下:
im = Image.open('%s' % os.path.join(os.getcwd(), s + '.png'))
im.save('%s.bmp' % s)
但是 XLWT 给我这个错误:
Exception: bitmap isn't a 24bit true color bitmap.
XLWT 代码如下所示:
self.chart.insert_bitmap(path, 2, 2)
我知道这两个图像都可以正常工作,它们都可以通过 Windows 打开。我也尝试在创建 BMP 后添加 2 秒暂停(以弥补写入时间),但它仍然失败。
如何使用 PIL 制作 24 位真彩色位图?
最佳答案
没关系!我自己想出来了。
改变
im = Image.open('%s' % os.path.join(os.getcwd(), s + '.png'))
到
im = Image.open('%s' % os.path.join(os.getcwd(), s + '.png')).convert("RGB")
关于python - PIL 另存为 24 位真彩色位图,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3516144/