使用xlwt在excel上插入图像库64

时间:2015-05-11 16:29:57

标签: python image base64 xlwt

您好我在odoo中工作,这样可以保存数据库中的所有图像,如base64。我有代码,但我正在制作一个excel报告,我需要放置图像,excel驱动程序是xlwt,但我找不到一个好方法。

image = product_id.image_smal (this is a base64)

在网上我发现了这个:

xlwt.insert_bitmap('PATH', row, col)

和此:

fh = open("imageToSave.png", "wb")
fh.write(imgData.decode('base64'))
fh.close()

我可以保存图像,但没有插入并给我这个错误:

bitmap doesn't appear to to be a valid bitmap image.

感谢您的帮助。

1 个答案:

答案 0 :(得分:2)

要将png转换为bmp,您需要:

from PIL import Image

img = Image.open("imageToSave.png")
r, g, b, a = img.split()
img = Image.merge("RGB", (r, g, b))
img.save('imagetoadd.bmp')
xlwt.insert_bitmap('imagetoadd.bmp', row, col)

希望这有帮助!!