【发布时间】:2017-12-20 15:22:51
【问题描述】:
目前我使用
im.save(save_img)
out_book.get_sheet(0).insert_bitmap(save_img, 0, 0)
将位图插入到 Excel 工作表中。
我尝试使用将我的图像转换为位图
im = Image.tobitmap(image_name)
但我得到AttributeError: module 'PIL.Image' has no attribute 'tobitmap'
我找到了this,但尝试并没有解决我的问题。这是一个全新的 windows 安装和一个全新的 virtualenv,其中从来没有 PIL 只有枕头 4.3.0。我还在我的枕头源文件中找到了tobitmap,它位于在线文档中。奇怪的是我可以使用
im = Image.open(image_name).convert("RGB")
im.thumbnail((533, 70))
im.save(save_img)
out_book.get_sheet(0).insert_bitmap(save_img, 0, 0)
但不是tobitmap,有什么想法吗?
编辑:当然我可以在插入后删除临时保存的文件,但这并不是真正的pythonic/好方法。
【问题讨论】:
-
insert_bitmap()接受什么类型的参数?也许它必须是文件的名称/路径。 -
insert_bitmap 采用文件路径,但这与我得到的错误有什么关系?
-
pillow 是 Python 图像库 PIL 的一个分支。它主要是向后兼容的,但它确实具有支持 Python 3 和错误修复等附加功能。顺便说一句,
Image.tobitmap()方法仅适用于位图图像(每像素 1 位,又名mode='1')。 -
它是相关的,因为它需要你创建一个文件来传递给它。
-
就是这样。谢谢你。如果您将其作为答案,我可以接受。愚蠢的错误
标签: python image bitmap pillow