キャプション内の既存の脚注を参照するにはどうすればよいですか?

キャプション内の既存の脚注を参照するにはどうすればよいですか?

私の LaTeX テキストには、頻繁に再利用する脚注があります。texfaq.orgのこの記事は、その方法を教えてくれました。ただし、図のキャプションなど、同じ脚注を参照する必要がある場合があります。Latex ドキュメントの例:

\usepackage[utf8]{inputenc}
\usepackage[T1]{fontenc}
\usepackage{graphicx}
\usepackage{hyperref}
\usepackage{footmisc}
\usepackage{lipsum}

\begin{document}
\section*{My text}

Here is text\footnote{Footnote: blah\dots} \\
Here is more text\footnote{\label{fn:info} Footnote: blah blah\dots}

\begin{figure}[h]
    \centering
    \includegraphics[width=0.4\linewidth]{example-image-a}
    % \caption{Important remark\footref{fn:repeat}} %% With footref
    \caption{Important remark\footnotemark[\ref{fn:info}]} %% With footnoteremark
    \label{fig:example-image-a}
\end{figure}

\end{document}

これはあまりうまく機能しないようです。 を使用すると次の\footnoteremarkようになります。

@caption の引数に余分な } があります。

\footref(「footmisc」パッケージを使用して) を使用しようとすると、次のようになります:

挿入された \endcsname がありません。

異なる出力を確認するには、例に「キャプション」行をコメントインまたは挿入します。キャプション内でこれらのコマンドを使用するにはどうすればよいでしょうか。選択する必要がある場合は、 の回答のほうが\footrefわかりやすいと思います。ありがとうございます。

答え1

何が問題なのかはっきりしません。コメント付きのキャプション付きの解決策はうまくいきます:

\documentclass{article}
\usepackage[T1]{fontenc}
\usepackage{graphicx}
\usepackage{footmisc}
\usepackage{lipsum}
\usepackage{hyperref}

\begin{document}
\lipsum[1-2]
\section*{My text}

Here is text\footnote{Footnote: blah\dots} \\
Here is more text\footnote{\label{fn:info} Footnote: blah blah\dots}

\begin{figure}[h]
    \centering
    \includegraphics[width=0.4\linewidth]{example-image-a}
    \caption{Important remark \footref{fn:info}.} %% With footnoteremark
    \label{fig:example-image-a}
\end{figure}

\end{document}

注記: パッケージはhyperref最後にロードする必要がありました (まれな例外あり) - 上記の MWE は次を生成します:

ここに画像の説明を入力してください

答え2

脚注を参照するのに原則として特別なことは何も必要ありません。\label脚注に を含め、\ref図のキャプションで を使用して参照するだけです。次に例を示します。

\documentclass[11pt,a4paper]{article}
\usepackage{geometry}
\usepackage[utf8]{inputenc}
\usepackage[T1]{fontenc}
\usepackage{amsmath}
\usepackage{amsfonts}
\usepackage{amssymb}
\usepackage{graphicx}

\usepackage{lipsum}

\begin{document}
\textbf{Label in caption}

\lipsum*[2]\footnote{A footnote not related to any figure.}

\lipsum*[3]\footnote{\label{fnInfo} Important information that can be used by different figures.}

\begin{figure}[h]
\centering
\includegraphics[width=0.4\linewidth]{example-image-a}
\caption{See footnote \ref{fnInfo} for details.}
\label{fig:example-image-a}
\end{figure}

\end{document}

出力

答え3

@Zarko の回答では問題点 (パッケージの読み込み順序) が指摘されていましたが、@Andre の回答からインスピレーションを得て、うまく機能する独自のソリューションを作成することができました。

\newcommand{\reffootnote}[1]{$^{\scriptsize \textrm{\ref{#1}}}$}

これは、ref を受け取り、サイズをフォーマットして上付き文字にするコマンドを作成します。これはどこでも機能し、非常にシンプルです。

関連情報