如何将图像包含到javadoc中并引用它们

时间:2015-02-26 11:50:26

标签: java javadoc

我检查了manual of javadoc并在stackoverflow上阅读了一些帖子(例如Including images in javadocs),但无法获得满意的结果

我想在我的javadoc中提供一个应该与创建的html一起打包的图像。以下是我采取的步骤:

  • doc-files下面创建一个src/main/java目录(这是STS中的一个gradle项目)
  • 将名为classhierarchy.png的文件放入新创建的目录
  • <img src="doc-files/classhierarchy.png">添加到我的班级de.company.some.more.levels.MyClass
  • 的javadoc中
  • 创建javadoc

我可以看到png文件被复制到C:\ temp \ NameOfProject \ doc \ doc-files但由于img-link相对于包而无法显示: C:/temp/NameOfProject/doc/de/company/some/more/levels/doc-files/classhierarchy.png

我知道我可以通过在路径前添加许多/../../来解决这个问题,但如果包深度发生变化,我将不得不调整它:

<img src="../../../../../../doc-files/classhierarchy.png">

我不喜欢的第二件事是目录doc文件与我的源代码在同一路径中。

如何优雅地链接和提供图像?

2 个答案:

答案 0 :(得分:10)

我至少可以为丰富的&#34; ...提供解决方案。 而不是写:

<img src="../../../../../../doc-files/classhierarchy.png">

我们可以使用:

<img src="{@docRoot}/doc-files/classhierarchy.png">

这将指示javadoc插入&#34; ..&#34;本身,所以我不必自己计算;-)而且当包结构发生变化时,我不必适应&#34; ..&#34; s。 参数@docroot可以在代码和命令行中使用,有关详细信息,请参阅the docs

在我的测试中,这与生成的html一起使用并在Eclipse中生效。

答案 1 :(得分:3)

图像通常说的不仅仅是文字。但是 classhierarchy 可以更改而不会影响图像本身。也许你使用其他文档技术,如 maven的网站

在你的情况下,它的bw图像对吗?也许你最好使用ascii-art

小图像也可以像这样内联使用:

/**
 * Foobar.<br />
 * <img src=
 * "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADIAAAAyCAIAAACRXR/mAAAAAXNSR0IArs4c6QAAAA
 * RnQU1BAACxjwv8YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAADTSURBVFhH7c9BCsNADEPR3P9aPVjr5KukOBAEnkI
 * WejtDR/ndnuu9Qu28FqEqWR6qkuWhKlkeqpLloSpZHqqS5aEqWR6qkuWhKlkeqv6S1c5717c7Dc/Ujla/uzoM7feci
 * 7PYLJwOPWgLGp6pnd8PFL7h0IPDeWp4RlsLaXimdq7/26QHh/PU8EzttG9wOvSgLWh4pnYYLczqMLTfc67PKu28d32
 * 70/BM7Wh1jKpkeahKloeqZHmoSpaHqmR5qEqWh6pkeahKloeqZHmoemrW42zbB+06mptY9nu7AAAAAElFTkSuQmCC" />
 */