Domanda

Quando si scrive RST che saranno trattati con uscita Sfinge , non posso ottenere Sfinge LaTeX usare numeri delle figure quando si fa riferimento figure. Per esempio, questo codice:

The lemmings are attacking, as can be seen in :ref:`figlem`.

.. _figlem:

.. figure:: _static/lemming_invasion.* 

   They're coming!

sarà convertito in questo modo:

  

I lemming stanno attaccando, come può essere   visto in Stanno arrivando!

     

/ immagine va qui /

     

Figura 1.1:! Stanno arrivando

Ma quello che voglio è il modo in cui LaTeX "standard" di figure che fanno riferimento, in questo modo:

  

I lemming stanno attaccando, come può essere   visto in Figura 1.1

Come faccio a raggiungere questo obiettivo? Il codice Attualmente sto usando è ciò che il manuale Sfinge raccomanda, ma non produce l'uscita che voglio.

È stato utile?

Soluzione

Il href="https://bitbucket.org/arjones6/sphinx-numfig/overview" rel="noreferrer"> numfig estensione

Altri suggerimenti

Per espandere sulla risposta accettata, è possibile ottenere rapidamente questo set up come segue. Inserire il file nella directory numfig.py source. Quindi aprire conf.py e rimuovere il commento la riga che dice

sys.path.insert(0, os.path.abspath('.'))

Quindi aggiungere 'numfig' alla lista extensions.

Per usare nel documento rst, prima etichetta la tua figura (ad esempio, fig-main):

.. _fig-main:

.. figure:: main.png

   This is the figure caption.

Infine, è possibile fare riferimento il suo numero di figura utilizzando la direttiva :num:, in questo modo:

Refer to the main figure (Figure :num:`fig-main`).

Credo che fa riferimento a figure non è ancora implementato in riposo, ma qui è soluzione alternativa http://article.gmane.org/gmane.text.docutils.user/5623 che si avvicina.

Si può utilizzare il codice lattice grezzo, in linea. Per l'esempio precedente, un ruolo per codice lattice grezzo viene prima definito e da quello utilizzato per fare riferimento alla figura con il comando lattice \ref{}, e impostare un'etichetta alla figura con il comando \label{} lattice.

Il seguente dovrebbe funzionare:

.. role:: raw-latex(raw)
     :format: latex

The lemmings are attacking, as can be seen in :ref:`figlem`
on figure :raw-latex:`\ref{pic:lem}`.

.. _figlem:

.. figure:: _static/lemming_invasion.* 

   They're coming! :raw-latex:`\label{pic:lem}`

Si noti che verrà visualizzato il comando \label{} all'interno del sottotitolo nel file tex, ma è ancora accettabile, almeno per pdflatex. Si noti inoltre che non ci dovrebbe essere almeno uno spazio prima del :raw-latex.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top