我有一个用 Sphinx 记录的 C++ 项目。为了保持源目录的清洁,它使用了源外构建。我有一个教程程序,它作为项目的一部分构建并生成图像在构建目录,而不是项目源目录。当我无法控制项目的源目录和构建目录的相对位置时,如何在源目录中的文档文件中引用图像?
我试过像这样在 conf.py 中使用 rst_epilog:
rst_epilog = """
.. |builddir| replace:: %s
""" % project_build_dir
然后像这样引用图像:
.. figure:: |builddir|/generated.png
但最终出现诸如“警告:图像文件不可读:|builddir|/generated.png”之类的错误。
最佳答案
看起来这个问题的回答是否定的:reStructured Text (Sphinx) : substitution in a file name? .不能在图像指令中使用替换来修改文件名,并且除了编写新扩展名或为每个图像手动生成图像替换外,没有其他选择。
关于image - 将 sphinx 指向构建目录中的图像,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26007903/