Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Image grid in reStructuredText / Sphinx

Tags:

I'm using Sphinx to create documentation for a Python project I'm working on. I have three images I would like to display in a 1x3 grid (i.e. all on the same line), and I'm trying to figure out how to do this in reStructuredText. Right now I have

.. image:: _images/report_title.png

.. image:: _images/report_slide1.png

.. image:: _images/report_slide2.png

I thought about trying to build one of the reST tables around them on a single line, but that seemed a little ridiculous. How can I grid these images?

like image 871
jeremiahbuddha Avatar asked Apr 18 '12 23:04

jeremiahbuddha


3 Answers

You can specify the width option for each of your images (see the reStructuredText image directive documentation) to be approximately one third or less of the width of the page.

Try, for example

.. image:: _images/report_title.png
   :width: 30%
.. image:: _images/report_slide1.png
   :width: 30%
.. image:: _images/report_slide2.png
   :width: 30%

The lengths allowed in the width (and height) options are discussed here (they essentially correspond to the length units in CSS documents).

like image 108
Chris Avatar answered Oct 15 '22 17:10

Chris


The alternate answer is to use directives as aliases to the image.

.. |logo| image:: ../iamges/wiki_logo_openalea.png
   :width: 20pt
   :height: 20pt

Then use the alias inside a table:

 +---------+-----------+
 | |logo|  +  |logo2|  +
 +---------+-----------+
like image 29
Charles Merriam Avatar answered Oct 15 '22 17:10

Charles Merriam


For the aliasing, I had better luck with:

.. |logo1| image:: logo1.png    
   :scale: 100%
   :align: middle
.. |logo2| image:: logo2.png
   :scale: 50%
   :align: top

+---------+---------+
| |logo1| | |logo2| |
+---------+---------+
like image 36
Dylan Avatar answered Oct 15 '22 18:10

Dylan