如何在Doxygen中链接到PlantUML图表?

5

我希望在我的*.dox文档中添加一些UML图表,并满足以下要求:

  • 我希望包含普通的PlantUML文档,而不需要其中包含doxygen标签。
  • 我希望在我的最终文档中将其作为图像链接,而不是直接放在主页面上。

如何实现这个目标?

2个回答

2
为了实现第一个要求,尝试使用Plantuml预处理。像这样:
  /**
   * @startuml
   * !include my_diagram.txt!0
   * @enduml
   */

据我所知,Doxygen目前不支持第二个要求。


或许值得在Doxygen上提出增强请求:https://github.com/doxygen/doxygen/issues/new - albert
如果plantuml.jar路径正确配置,它就能正常工作。为什么需要在结尾加上!0 - jaques-sam
我尝试使用建议的解决方案。不幸的是,我无法使其工作,因为我无法弄清楚植物图文本文件需要添加到哪个文件夹中。 - sensslen
@sensslen我无法确定plantuml文本文件应该添加到哪个文件夹中。显然,它必须在生成文档的同一目录中,这似乎不是很有用的默认设置。看起来,首先doxygen会将startuml / enduml之间的内联部分拆分为名为inline_umlgraph_svghtml.pu的单独文件,并在输出目录中运行plantuml。 - ecloud
你可以设置 PLANTUML_INCLUDE_PATH:这对我有效。https://www.doxygen.nl/manual/config.html#cfg_plantuml_include_path - ecloud

1
我认为目前不可能实现此功能,没有类似于@dotfile@mscfile@diafile的命令可以对dot、msc或dia源文件执行此操作。但是,如果您想在文档的不同页面中重用相同的图表,您可以让doxygen从代码生成一个png文件,然后将该png文件包含在文档中即可。
\startuml [{file}] ["caption"] [<sizeindication>=<size>]

e.g.:
@startuml{myimage.png} "Image Caption" width=5cm

我没有尝试过这种方法,但是你可以通过创建一个额外的页面在 .h、.dox 或 .txt 文件中包含 doxygen 注释来解决这个问题。在这个文件中,你可以放置所有的图表。Doxygen 会生成这些 png 文件。你可以使用 @image 命令嵌入这些 png 文件。

可以通过预处理来实现,正如Denis_Sergee所提到的。 - jaques-sam

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接