如何在Sphinx(reStructured Text)文档中显示外部托管图像?

时间:2014-10-16 04:19:55

标签: python-sphinx restructuredtext

Sphinx(http://sphinx-doc.org/index.html)使用重组文本来定义内容。有指令显示来自本地文件系统的图像(使用相对和绝对路径)。

我希望能够做的是使用URL声明图像并将其显示为内嵌。我能看到这一点的唯一方法是指定原始HTML,这看起来有点粗糙。有没有替代方案 - 也许是另一个“隐藏”指令或插件来支持这个?

我需要这个的原因是我有很多图像。如果我将它们存储在github上,我将强迫我的用户下载相当大的文件进行同步。我很感激我会失去Sphinx警告丢失文件的好处。

1 个答案:

答案 0 :(得分:8)

要包含您可以放入source.rst

的网址中的图片
.. image:: http://my.url.com/my-picture1.png
    :alt: my-picture1

您也可以放在conf.py

的末尾
# A string of reStructuredText that will be included at the end of every source 
# file that is read.
rst_epilog = """

.. |pic2| image:: http://my.url.com/my-picture2.png
           :alt: my-picture2

"""

source.rst

|pic2|

最后,如果你在同一个地方有很多图片,你可以这样做:在conf.py put:

# The URL base of images
url_base = "http://my.url.com"

# A string of reStructuredText that will be included at the end of every source 
# file that is read.
rst_epilog = """

.. |pic3| image::{url_base}/my-picture3.png
           :alt: my-picture3
.. |pic4| image::{url_base}/my-picture4.png
           :alt: my-picture4

""".format(url_base=url_base)

source.rst

|pic3|

|pic4|