PIL保存为24位真彩色位图

时间:2010-08-18 19:55:44

标签: python python-imaging-library gnuplot xlwt

嘿伙计们,我有一个由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位真彩色位图?

1 个答案:

答案 0 :(得分:5)

没关系!我自己想出来了。

更改

im = Image.open('%s' % os.path.join(os.getcwd(), s + '.png'))

im = Image.open('%s' % os.path.join(os.getcwd(), s + '.png')).convert("RGB")