[Tex/LaTex] Real footnote with subcaption package

captionsfootnotessubcaption

I'd like to put some footnotes in a caption of a subcaption paragraph. However, as you can see the footnode appears in the caption itself, and not at the bottom of the page.

enter image description here

Any solution?

Thanks!

MWE

\documentclass{article}
\usepackage{graphicx}
% To display subfigures
\usepackage{caption}
\usepackage{subcaption}

\begin{document}
\begin{figure}[h!]
  \centering
  \begin{subfigure}[t]{.47\textwidth}
    \centering
    \includegraphics[width=\linewidth]{example-image-a}
    \caption{My caption with a footnote\footnote{Yes I like footnotes ! But this one is not a true foot note, because it's not at the bottom of the page...}}
    \label{fig:myfiga}
  \end{subfigure}\hspace*{.05\textwidth}%
  \begin{subfigure}[t]{.47\textwidth}
    \centering
    \includegraphics[width=\linewidth]{example-image-b}
    \caption{Other caption}
    \label{fig:myfigb}
  \end{subfigure}
  \caption{My big caption}
  \label{fig:myfig}
\end{figure}
\end{document}

Best Answer

You can use a \footnotemark and \footnotetext pair:

enter image description here

\documentclass{article}
\usepackage{graphicx}
% To display subfigures
\usepackage{caption}
\usepackage{subcaption}

\begin{document}
\begin{figure}[h!]
  \centering
  \begin{subfigure}[t]{.47\textwidth}
    \centering
    \includegraphics[width=\linewidth]{example-image-a}
    \caption{My caption with a footnote\protect\footnotemark}
    \label{fig:myfiga}
  \end{subfigure}\hspace*{.05\textwidth}%
  \begin{subfigure}[t]{.47\textwidth}
    \centering
    \includegraphics[width=\linewidth]{example-image-b}
    \caption{Other caption}
    \label{fig:myfigb}
  \end{subfigure}
  \caption{My big caption}
  \label{fig:myfig}
\end{figure}
\footnotetext{Yes I like footnotes ! But this one is not a true foot note, because it's not at the bottom of the page...}
\end{document}

Or, if you prefer a more automatic solution (requires LaTeX 2020-10-01, at least), you can redefine \footnote in the figure environment, so that it does \footnotemark, and store the \footnotetext in a hook to be executed after the figure environment, then you can just use \footnote inside figure:

enter image description here

\documentclass{article}
\usepackage{graphicx}
% To display subfigures
\usepackage{caption}
\usepackage{subcaption}

\AddToHook{env/figure/begin}{%
  \DeclareRobustCommand\footnote[1]{%
    \footnotemark
    \expanded{\AddToHookNext{env/figure/after}%
      {\noexpand\setcounter{footnote}{\thefootnote}%
       \noexpand\footnotetext\unexpanded{{#1}}}}}}

\begin{document}
\begin{figure}[h!]
  \centering
  \begin{subfigure}[t]{.47\textwidth}
    \centering
    \includegraphics[width=\linewidth]{example-image-a}
    \caption{My caption with a footnote\footnote
      {Yes I like footnotes ! But this one is not a true foot note,
        because it's not at the bottom of the page...}}
    \label{fig:myfiga}
  \end{subfigure}\hspace*{.05\textwidth}%
  \begin{subfigure}[t]{.47\textwidth}
    \centering
    \includegraphics[width=\linewidth]{example-image-b}
    \caption{Other caption\footnote{Another}}
    \label{fig:myfigb}
  \end{subfigure}
  \caption{My big caption\footnote{MOAR}}
  \label{fig:myfig}
\end{figure}
\end{document}