首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >maven-pdf-plugin:如何定义文档根以使用相对引用

maven-pdf-plugin:如何定义文档根以使用相对引用
EN

Stack Overflow用户
提问于 2018-09-11 04:19:07
回答 1查看 636关注 0票数 4

我正在使用maven- PDF插件从一个标记文档生成一个PDF文件。我在/src/site/markdown中有标记文件和包含的图像文件。我在/src/site中有一个/src/site文件。

当我运行mvn pdf:pdf时,我会得到一个在/target/pdf中生成的PDF文件。PDF文件在标记文件中格式化良好,但不包括图像。输出有错误,指示它找不到最有可能的图像,因为警告:

警告没有指定文档根,本地链接将无法正确解析!

我已经搜索了在maven-pdf插件上可以找到的所有东西,也没有找到任何关于如何设置这个难以捉摸的文档根的参考。我希望将图像文件保存在同一个目录中,并在标记文件中使用相对引用,也就是说,在这种情况下,引用只是文件名。

任何帮助或指点,以找到我需要做什么,将不胜感激。

编辑以添加pdf.xml这里是/src/site/pdf.xml的内容

代码语言:javascript
复制
<document outputName="DesignDoc">
<meta>
  <title>Design Documentation</title>
  <author>Team A</author>
</meta>
<toc name="Table of Contents">
  <item name="Design Documentation" ref="DesignDoc.md"/>
</toc>
<cover>
  <coverTitle>${project.name}</coverTitle>
  <coverSubTitle>v. ${project.version}</coverSubTitle>
  <coverType>Design Documentation</coverType>
  <projectName>${project.name}</projectName>
</cover>
</document>

标记文件在/src/site/markdown中。要包含的图像文件位于同一个目录中。

这是一个如何将图像包含在标记文件中的示例:

![Domain Model](domain-model-placeholder.png)

编辑以添加进一步调查的结果

用呈现的图像生成PDF的两种方法是要么将图像文件放在顶级项目根目录,要么将标记文件中的图像规范更改为相对于项目根目录。前者是一个糟糕的解决方案。后者可能是暂时的解决办法,但会破坏我们使用标记文件的其他方式。

EN

回答 1

Stack Overflow用户

发布于 2021-10-21 08:46:55

无法更改maven-pdf插件中图像的相对位置。它从站点上下文生成一个PDF文件。若要使图片可供PDF使用,请将其用于网站。根据文档,图像应该在resources目录中。

代码语言:javascript
复制
+- src/
      +- markdown/
      |  +- docs.md
      |
      +- resources/
      |  +- images/
      |     +- domain-model-placeholder.png
      |
      +- site.xml

图像将以标记形式提供,并有以下标记:

代码语言:javascript
复制
![Domain Model](images/domain-model-placeholder.png)

PDF内容将与图像生成。但是,在使用文档根作为相对引用的BitBucket或Github中的存储库视图中找不到图像。我通过将图像复制到标记目录来修复它。

代码语言:javascript
复制
+- src/
      +- markdown/
      |  +- images/
      |  |  +- domain-model-placeholder.png
      |  |
      |  +- docs.md
      |
      +- resources/
      |  +- images/
      |     +- domain-model-placeholder.png
      |
      +- site.xml

这是一种图像的复制,但是使用这种方法,它们可以在pdf生成和存储库视图中使用。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/52268591

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档