Латекс — вставка ссылки в подпись к рисунку

В Latex я хочу добавить ссылку в легенду фигуры, например:

\begin{figure}
   ...
   \caption{This is the legend of this figure (reprinted from \cite{something}).}
   ...
\end{figure}

но цитату нельзя размещать в подписи, только в тексте. Моя библиография работает над любыми другими местами текста.

Любые предложения, как это сделать?

Спасибо


person Sérgio    schedule 20.12.2010    source источник


Ответы (2)


Решение найдено: напишите \protect\cite{ref} вместо просто \cite{ref}

Или еще короче: '{\cite{ref}}'

person Sérgio    schedule 03.05.2011
comment
Не знаю насчет PdfLaTeX, но это не работает в xelatex. - person Subhamoy S.; 04.11.2014
comment
Это решило проблему для меня, когда я использовал pdflatex. - person Tom; 05.07.2015
comment
Для меня (pdflatex) \protect сработало, но включение в {} не сработало. - person drevicko; 25.10.2015
comment
Также работает для гиперссылок -- \protect\hyperlink{supp1}{Дополнительная ссылка 1} вместо \hyperlink{supp1}{Дополнительная ссылка 1} - person maia; 06.07.2016

Поскольку принятый ответ кажется довольно хакерским (а также не сработал для меня), я опубликую свое решение проблемы:

\begin{figure}
  ...
  \caption[Cap for listoffigures]{Cap below figure with cite \cite{source}}
  ...
\end{figure}

Компилируется без ошибок и предупреждений.

person mgttlinger    schedule 26.06.2014
comment
Я компилирую с помощью xelatex и не вижу цитаты в заголовке. Включение его в \protect{} также не имеет никакого эффекта. - person Subhamoy S.; 04.11.2014