【问题标题】:Python docx image rendering using docx template library使用 docx 模板库的 Python docx 图像渲染
【发布时间】:2019-05-13 16:26:55
【问题描述】:

我正在尝试将图像渲染到包含 jinja 钩子的 docx 模板。

我正在使用来自 docx 模板的 inlineImage 方法,我能够渲染它在 libreoffice writer 中打开的图像,但不能在它应该真正使用的 msword 中渲染。

在 msword 中,图像被渲染但不显示,只显示一个空白区域。

我什至尝试过使用 subdoc 方法,它也给了我相同的结果。

请帮我理解做错了什么。

我正在使用 python-docx 0.8.7 和 docxtemplate 0.5.17 库来实现结果

我必须使用这些版本,因为 docxtemplate 强制使用此版本的 python-docx

【问题讨论】:

  • 我能够找到问题的解决方案。问题是我使用临时文件来呈现内联文档,当我删除它并使用内联方法在在线预览模式下工作检查的确切图像路径时,需要在真正的 ms 字上对其进行测试,希望有效

标签: python-3.5 doc


【解决方案1】:

我将其发布为答案,以便它可以帮助其他尝试实现相同目标的人。

在我的代码中,我使用NamedTemporaryFile(delete=None) 创建图像,然后将值作为InlineImage(template, tmpfile.name) 传递给 inlineimage,这导致了问题,在根据图像方面进行了一些调整大小后,我重新构建了我的逻辑以直接添加图像比率并将图像的路径而不是文件名发送到 InlineImage 方法,它就像一个魅力。

【讨论】:

    猜你喜欢
    • 2021-04-01
    • 2020-08-18
    • 1970-01-01
    • 1970-01-01
    • 2017-02-25
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多