【发布时间】:2017-07-30 21:45:00
【问题描述】:
tl;博士问题:
doxygen 用于查找 doxygen cmets 中引用的图像的实际算法是什么?那么推论,什么被认为是在未来的 doxygen 版本中不会破坏的最佳实践?
详情:
我们正在尝试制定一项政策,其中与 doxygen cmets 关联的任何图像都应本地化到参考,这意味着我们将在整个源树中分布图像。显然,我们需要确保正确引用图像,并且 doxygen 可以找到它们以生成正确的文档。
doxygen 将在 IMAGE_PATH 标记后指定的路径(或文件)中查找文件
但是,在我的修修补补中,我得出的结论是,这似乎并不完全正确。以下是一些实验结果:
================================================ =
实验
文件系统配置:
/full/
path/
doxygen.cfg
to/
this/
header.h
images/
image.png
other/
images/
image.png
doxygen 配置文件位于树的“根”中(即/full/path/),并且从同一文件夹执行 doxygen。header.h 引用位于同一树中的 images/image.png (/full/path/to/this)。在树的其他地方有一个同名的图像文件。 header.h 有一行:
@file html [filename]
[filename] 是以下之一的参考:
image.pngimages/image.png./images/image.png/full/path/to/this/images/image.png
然后我使用 IMAGE_PATH 变量。
案例 1:IMAGE_PATH =(即未定义路径)。
- 加载“错误”图像 (other/iamges/image.png)
- 没有图片
- 没有图片
- 已加载正确的图像
案例 2:IMAGE_PATH = /full/path(提供给根目录的路径,但不是头文件的完整路径)。
- 已加载正确的图像
- 已加载正确的图像
- 已加载正确的图像
- 已加载正确的图像
案例 3:IMAGE_PATH = /full/path/other(提供给根目录的路径不包含头文件)。
- 加载“错误”图像 (other/iamges/image.png)
- 加载“错误”图像 (other/iamges/image.png)
- 加载了“错误”图像 (other/iamges/image.png)
- 已加载正确的图像
================================================ =
推断的算法属性
- 仅当相对路径位于以
IMAGE_PATH中指定的路径为根的树中时,相对路径才有效。 - 在图像文件名可以解析为不同图像的情况下,doxygen 似乎会选择与参考“最接近”的图像。
【问题讨论】:
标签: doxygen