Как сделать ссылку на фигуру в уценке, используя pandoc? - PullRequest
93 голосов
/ 24 февраля 2012

В настоящее время я пишу документ в уценке, и я хотел бы сделать ссылку на изображение из моего текста.

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

![image1](img/image1.png)

Я хочу сделать эту ссылку, потому что после преобразования моей разметки в pdf изображения помещаются на одну или две страницы после, и документ не имеет никакого смысла.

UPDATE:

Я попробовал ответ Райана в этом посте , и я не могу заставить его работать. Видимо код:

[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}).

вместо этого я получаю:

\begin{figure}[htbp]
\centering
\includegraphics{image.png}
\caption{Alt text}
\end{figure}

A reference to the \href{\#image}{image}.

Я заметил две проблемы:

  • \label{image} не отображается: ссылка не создана.
  • (\autoref{image}) становится \href{\#image}{image}: перекрестная ссылка не обнаружена.

И потом, когда я конвертирую это в pdf, оно явно не ссылается на изображение. Есть ссылка, но она ни на что не ссылается.

Любая помощь будет принята с благодарностью !!

Ответы [ 5 ]

85 голосов
/ 21 апреля 2012

В pandoc вы даже можете сделать:

![This is the caption\label{mylabel}](/url/of/image.png)
See figure \ref{mylabel}.
18 голосов
/ 16 марта 2015

Вы можете использовать фильтр pandoc-fignos для нумерации и ссылок на фигуры. Работает с любым форматом вывода - не только с LaTeX.

Добавьте метку к атрибутам изображения следующим образом:

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

... а затем ссылаться на рисунок следующим образом:

 @fig:description

Информация о том, как установить и применить фильтр pandoc-fignos, приведена на его веб-странице. Также есть фильтр pandoc-eqnos для того, чтобы делать то же самое с уравнениями.

18 голосов
/ 28 февраля 2012

Я поговорил с Райаном Греем после прочтения его ответа в аналогичном посте.На самом деле его решение использования:

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

адаптировано только при использовании multimarkdown.

Когда речь идет о pandoc, единственное решение для создания перекрестных ссылок - использование непосредственно латексных ключевых слов:

[image]: image.png "Image Title"
![Alt text \label{mylabel}][image]
See figure \ref{mylabel}.
4 голосов
/ 26 августа 2014

Pandoc поддерживает ссылки на секции (через идентификаторы секций с префиксом #).

Комментарии к этой открытой проблеме описывают, как следующий обходной путь использует идентификаторы разделов для создания ссылок на изображения в LaTeX и HTML:

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

</div>

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

Требуется пустая строка перед </div>.

2 голосов
/ 19 декабря 2015

Предполагая, что вы хотите вывод PDF Pandoc в конце:

Лучшее решение для вставки изображений и изменения их атрибутов, которое я нашел:

\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, не беспокоясь о вещах.

...