【问题标题】:failed to load an image when converting html to pdf with pandoc使用 pandoc 将 html 转换为 pdf 时无法加载图像
【发布时间】:2023-01-13 14:57:06
【问题描述】:

我使用 jekyll 生成具有如下图像的 html 文件:

<img src="/assets/images/view.png" alt="" />

当我使用带有该 HTML 的 pandoc 生成 PDF 时,它显示:

Warning: Failed to load file:///assets/images/view.png (ignore)

生成的 PDF 不包含图像。

我认为那是因为图像的路径是绝对的,它从文件系统加载,绝对路径。我试过 --resource-path=assets/images/ 但没有帮助。有谁知道在这种情况下如何成功加载图像?

【问题讨论】:

    标签: pdf pandoc


    【解决方案1】:

    可能有一个更简单的解决方案,但我会通过使用修复图像路径的 Lua 过滤器来解决这个问题:

    function Image (img)
      -- remove leading slash from image paths
      img.src = img.src:gsub('^/', '/')
      return img
    end
    

    将其保存到文件 fix-img.lua 并通过 --lua-filter 选项将文件传递给 pandoc。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2018-08-08
      • 2021-08-21
      • 2018-08-13
      • 2013-07-27
      • 1970-01-01
      • 1970-01-01
      • 2013-10-31
      • 2019-02-25
      相关资源
      最近更新 更多