【发布时间】:2019-08-23 05:07:53
【问题描述】:
我正在尝试使用 python-docx 将图像添加到 Word 文档中。我使用python3。二进制文件存储在 BLOB 列中。我可以在 Sequel Pro 中查看图像,所以它似乎不是数据库错误。
我已使用 UPDATE games SET data = LOAD_FILE('~/pictures/image.gif') WHERE id = 1 将 gif 和 png 添加到数据库中
我正在迭代一堆行。我尝试过使用bin() 函数。然后我得到了一些建议来尝试IO 包。
import io
document.add_picture(io.BytesIO(item["data"]))
item["data"] 是图像二进制。
不幸的是,这给我带来了错误:
File "/usr/local/lib/python3.7/site-packages/docx/image/image.py", line 199, in _ImageHeaderFactory
raise UnrecognizedImageError
docx.image.exceptions.UnrecognizedImageError
预期的结果是我可以使用 python-docx 将图像添加到 Word。我遇到了图像文件的这个问题,并且在使用 ImageMagic 转换图像时可以正常工作。
$ convert image.png image.png。所以一种选择可能是保存一个临时文件并转换它?但这似乎是不必要的麻烦。
【问题讨论】:
标签: python python-3.x python-docx