6

私は、latexpdf出力を使用して、Sphinxドキュメントプロジェクトで機能する番号付きの図を取得しようとしています。ここにあるSphinxnumfig.py拡張機能をインストールしましたhttps://bitbucket.org/arjones6/sphinx-numfig

ただし、図の番号との相互参照を提供することになっている:num:タグを使用すると、代わりに次のようになります。

最初

.. _fig_logo:


.. figure:: logo.*

        Example of a figure

Reference to logo :num:`figure #fig_logo`

出力を生成します:

ロゴフィギュアへの参照??

私は何か間違ったことをしていますか?

4

1 に答える 1

7

ラベル名にアンダースコアが含まれている場合(のようにfig_logo)、スフィンクスはこれをマイナスに置き換えます(-これは、ラテックスがアンダースコアを使用している場合に奇妙な動作をすることがあるため、これは理にかなっています)。そのため、ラテックスは参照されているラベルを見つけることができません。

これは、sphinxによって生成された結果のtexコードです。

\includegraphics{logo.png}
\caption{Example of a figure}\label{index:fig-logo}\end{figure}

Reference to logo \hyperref[index:fig_logo]{figure  \ref*{index:fig_logo}}

fig-logo(ラベルとしてと参照としての違いに注意しfig_logoてください。)

たとえば、アンダースコアをマイナスに置き換えた場合

.. _fig-logo:


.. figure:: logo.png

        Example of a figure

Reference to logo :num:`figure #fig-logo`

texコードは次のようになります。

\includegraphics{pandas_bar.png}
\caption{Example of a figure}\label{index:fig-logo}\end{figure}

Reference to logo \hyperref[index:fig-logo]{figure  \ref*{index:fig-logo}}

生成されたPDFでは、これは次のように解決されます。

ロゴ図1への参照

アップデート

更新できるすべてのラベルを変更したくない場合はnumfig、行を追加するだけで十分です。

target = target.replace('_', '-')

拡張機能のコピーの27行目の直前。

bitbucket で問題を開きました。

于 2013-02-26T18:52:57.323 に答える