Ger
Ger

Reputation: 9736

How to do a link to a file in rst with sphinx?

I am writing a documentation and I would like to include links to pdf files or zip archives. How can I achieve that using rst language and sphinx ?

If I do that

here is a pdf file : `pdf <doc/mypdf.pdf>`_

It does not work because, during the compilation sphinx do not copy the contains of the doc directory (I use the makefile generated by sphinx-quickstart).

On the contrary, using the image directive :

.. image:: img/plop.png

sphinx does copy the plop.png image in build directory. How can I obtain the same behavior for pdf or zip archive ?

Upvotes: 57

Views: 49661

Answers (2)

Henrik
Henrik

Reputation: 2921

The image directive only works for HTML with PDF files.

.. image:: doc/mypdf.pdf

DO NOT use it, because it is misleading. Thanks to the comment of G. Milde.

Upvotes: -1

Ger
Ger

Reputation: 9736

A solution is to use the :download: “role” (detailed in the sphinx documentation on roles).

Here is a short example assuming you have a file mypdf.pdf in a directory doc. The directory doc and your rst file must be in the same directory:

here is a pdf file :download:`pdf <doc/mypdf.pdf>`

Note that you mustn't put a blank space between :download: and the path to the file.

Upvotes: 83

Related Questions