2012-02-24 15 views
72

私は現在マークダウンの文書を書いています。私はテキストからの画像への参照をしたいと思います。pandocを使ってマークダウンの図を参照するにはどうすればよいですか?

this is my text, I want a reference to my image1 [here]. blablabla 

![image1](img/image1.png) 

PDFに私の値下げを変換した後、画像が後に1つのまたは2つのページに配置されますと、文書がどんな意味がないので、私はその参照をしたいです。

UPDATE:

私はthat postRyan's answerを試みたと私はそれが働くことはできません。 どうやらコード:

[image]: image.png "Image Title" 
![Alt text][image] 
A reference to the [image](#image). 

を生成する必要があります:代わりに

\begin{figure}[htbp] 
\centering 
\includegraphics[keepaspectratio,width=\textwidth,height=0.75\textheight]{i mage.png} 
\caption{Alt text} 
\label{image} 
\end{figure} 

A reference to the image (\autoref{image}). 

、私が取得:

  • \label{image} doesnの」:私は二つの問題が気づいた

    \begin{figure}[htbp] 
    \centering 
    \includegraphics{image.png} 
    \caption{Alt text} 
    \end{figure} 
    
    A reference to the \href{\#image}{image}. 
    

    出現:いいえ参照が作成されます。

  • (\autoref{image})\href{\#image}{image}となります。相互参照は検出されません。

そして、それをpdfに変換すると、明らかに画像にはリンクしません。リンクはありますが、リンクはありません。

ご協力いただければ幸いです。

+1

http://groups.google.com/group/pandoc-discuss/msg/4a42442657a96414に記載されている方法を試しましたか? –

+0

私はそれをテストしましたが、オートリフレクションは生成されません。奇妙な... –

+0

多分、あなたが試したもの、持っていたもの、望むもの(あなたを助けてくれるように)を含めるためにあなたの質問を編集すべきです。 –

答えて

61

![This is the caption\label{mylabel}](/url/of/image.png) 
See figure \ref{mylabel}. 
+35

これはTeXに変換する場合にのみ役立ちますが、同じMarkdownソースからHTMLを作成したい場合は役に立ちません。 – Jakob

+9

すべての出力フォーマット[pandoc-fignos](https://github.com/tomduck/pandoc-fignos)と[pandoc-crossref](https:// github)で図の参照作業を行うためのフィルタがいくつかあります。 com/lierdakil/pandoc-crossref) –

+0

残念ながら、これは非常に柔軟な方法ではありません。この方法で画像の幅や高さを指定することはできません。 PDFをそのように含めることは可能ですか?もしそうでなければ、それは欠点にもなりえます。なぜなら、PDFでは出力の場合として好ましいからです。 – Zelphir

17

私はRyan Grayとチャットしましたが、his answerと似ています。実際に使用しての彼のソリューション:multimarkdown使用している場合

[image]: image.png "Image Title" 
![Alt text][image] 
A reference to the [image](#image). 

にのみ適応されます。

それはpandocになると、相互参照を作成するための唯一の解決策は、キーワードを直接ラテックス使用している:あなたも行うことができますpandocで

[image]: image.png "Image Title" 
![Alt text \label{mylabel}][image] 
See figure \ref{mylabel}. 
+3

しかし、Jakobは答えが "これはTeXに変換するだけで、同じMarkdownソースからHTMLを作成したい場合は役に立ちません。 – DanielTuzes

+0

マルチマークダウンの場合、自動的に計算された図番号を使用して図を参照する方法はありますか?私は[](#イメージ)のようなものを想像して、マルチマークダウンは空白のテキストを数字で置き換えます(脚注のように)。 –

4

Pandocは、セクション(経由を参照してサポートしていますsection identifiersのプレフィックスは#)。

<div id="fig:lalune"> 
![A voyage to the moon\label{fig:lalune}](lalune.jpg) 

</div> 

[The voyage to the moon](#fig:lalune). 

</div>が要求される前に空行:このopen issue

コメントは次の回避策は、乳液やHTMLの画像の参照を生成するためのセクション識別子を活用する方法について説明します。

+4

適切な解決策、すなわち[画像の識別子を許可するためのpandocマークダウンシンタックスの拡張](https://github.com/jgm/pandoc/issues/261#issuecomment-50236381)が最終的に実施されています。お待ちください:) –

15

pandoc-fignosフィルタは、図の番号付けと参照に使用できます。それはLaTeXだけでなく、どんな出力形式でも動作します。

このような画像の属性にラベルを追加します。

![Caption.](image.png) {#fig:description} 

...そして、このような図参照:pandoc-fignosをインストールし、適用する方法について

@fig:description 

情報フィルタはそのWebページで与えられます。同じ種類の事を方程式で行うためのフィルタもpandoc-eqnosです。

+0

私は[秩序のあるリストの要素を参照する]と同様のことをしたいと思います(http://stackoverflow.com/questions/29086880/how-to-place-labels-correctly-and-use -cross-reference-in-con-to-con-con-to-con) – DanielTuzes

0

あなたが最後にPandocのPDF出力をしたいと仮定すると:

画像を挿入し、私が見つけたその属性を変更するための最善の解決策は次のとおりです。

\begin{figure}[H] 
\includegraphics[width=0.25\textwidth, height=!]{images/path.png} 
\centering 
\caption{mycaption} 
\end{figure} 

と私が持っている私のtemplate.latex中:

\usepackage{wrapfig} 
\usepackage{float} 

他の解決策では、少なくとも標準的なマークダウンではないイメージの幅や高さを指定することはできません。しかし、書籍や紙のようなものでは、画像の出力サイズを文書で使用する前に設定することを除いて、図の寸法を指定することがしばしば不可欠です。その場合は、イメージを作成するために使用するツールのさまざまな設定を処理する必要があります。

Matplotlibの場合、PDFに書き出して、私が掲示したコードを使用することをお勧めします。これにより、最高の画質と最高の柔軟性が提供され、出力PDFで画像がどのように表示されるかを構成する際の心配がなくなります。

+0

このラテックスの構文はすべてあなたのマークダウンファイルに直接入りますか? – spinup

+0

@spinupはい。 Pandocはあなたのマークダウンファイルに埋め込まれたラテックスのものを扱うことができます。別のアドバイス:MatplotlibからエクスポートするときにPDFファイルとして書き出します。このようにPandoc /ラテックスエンジンは画質を落とさず、PDFファイルをズームイン/ズームアウトしたときにピクセル化されたものではなくスケーラブルな画像を表示します。 – Zelphir

関連する問題