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) 

我知道这两个图像都可以正常工作,它们都可以通过窗户打开。我还尝试在创建 BMP 后添加 2 秒暂停(以弥补写入时间),但仍然失败。

如何使用 PIL 制作 24 位真彩色位图?

4

1 回答 1

7

没关系!只是我自己想通了。

改变

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

im = Image.open('%s' % os.path.join(os.getcwd(), s + '.png')).convert("RGB")
于 2010-08-18T20:11:01.333 回答