\footnotetext on different page from \footnotemark

This is unlikely to be able to be done in a satisfactory way. One could envision moving the \footnotetext around based on page references. That would likely work in some cases (but be a hassle to implement) but in some cases, moving the \footnotetext would case the figure to float to another page and thus the \footnotetext would have to move again. It's quite easy to imagine that the iterative process never terminating.

Another problem is that your footnotes will be out of order. This is very easy to demonstrate.

\documentclass{article}
\begin{document}
one\footnote{one}
\begin{figure}[t]
two\footnotemark
\end{figure}
\footnotetext{two}
three\footnote{three}
\end{document}

That's almost certainly not what you want.

In most cases, footnotes in figures (or more often in tables) use different markings like an asterisk or a dagger and then the text appears in the figure caption.


A workaround would be to put the content of the {figure} inside a {minipage}. The footnote will then appear at the bottom of the figure (not at the bottom of the page), and the numbering will be a,b,c,... instead of 1,2,3,... and will be specific to each figure.

Altough it's not exactly what you asked for, the advantage of this method is that you are sure that the footnote text and footnote number are always on the same page and it's certainly simpler than trying to hack through the float mecanism to ensure that footnote text is always on the same page as the figure.

Here's a full code example:

\documentclass{article}
\usepackage{lipsum}
\begin{document}

\lipsum[1-3]

\begin{figure}[t]
\begin{minipage}{\linewidth}\centering
\vrule height 10cm width 5cm

text\footnote{foottext}
\end{minipage}
\end{figure}

\end{document}