PIL将保存为24位真彩色位图

4
我有一个由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个回答

8

没关系!我自己找到了解决方法。

更改

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

为了

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

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接