[Tex/LaTex] beamer footnote numbers in overprint

beamerfootnotesoverlays

I have a series of text + images that I want to appear on the same slide.
Both the text and image have some reference to be quoted for which I am using footnotes (this is done throughout the presentation).

I am facing 2 issues:

  1. When I use \footnote{} within the overprint, the footnote
    numbers get changed to letters. However, I would want the footnote to continue the number from the previous slide's footnote.
  2. On all slides, the same footnote letters are shown. I want the footnote numbers to be incremented.

Here is my attempt.
How can I resolve both the issues?

\documentclass{beamer}


\begin{document}

\begin{frame}{Test Frame}
\begin{overprint}

\onslide<1>
\vspace*{1.5cm}
First line~\footnote{footnote 1-slide 1}
\vfill
\includegraphics[width=2cm]{jinglebells}\\
Jingle bells~\footnote{footnote 2-slide 1}

\onslide<2>
\vspace*{1.5cm}
Second line~\footnote{footnote 1-slide 2}
\vfill
\includegraphics[width = 2cm]{holiday}\\
Holiday picture~\footnote{footnote 2- slide 2}


\end{overprint}
\end{frame}

\end{document}

Best Answer

I don't think there's an easy workaround.


First option

Footnotes inside an overprint are tratead as minipage's footnotes.

What you can do is

  1. transform footnote marks in numeric ones through the command

    \renewcommand{\thempfootnote}{\arabic{mpfootnote}}
    
  2. Insert this line at the beginning of each \onslide

    \setcounter{mpfootnote}{\value{footnote}}
    

    and this one at its end

    \setcounter{footnote}{\value{mpfootnote}}
    

    to count these footnotes as normal ones.

MWE:

\RequirePackage[demo]{graphicx} %remove this line in your document
\documentclass{beamer}

\renewcommand{\thempfootnote}{\arabic{mpfootnote}}

\begin{document}

\begin{frame}{Test Frame}
\begin{overprint}

\onslide<1>
\setcounter{mpfootnote}{\value{footnote}}
\vspace*{1.5cm}
First line~\footnote{footnote 1-slide 1}
\vfill
\includegraphics[width=2cm]{jinglebells}\\
Jingle bells~\footnote{footnote 2-slide 1}
\setcounter{footnote}{\value{mpfootnote}}

\onslide<2>
\setcounter{mpfootnote}{\value{footnote}}
\vspace*{1.5cm}
Second line~\footnote{footnote 1-slide 2}
\vfill
\includegraphics[width = 2cm]{holiday}\\
Holiday picture~\footnote{footnote 2- slide 2}
\setcounter{footnote}{\value{mpfootnote}}

\end{overprint}
\end{frame}

\end{document} 

Output

enter image description here


Second option

Declare footnotes at frame-level using the optional argument frame:

\footnote[frame]{...}

MWE

\RequirePackage[demo]{graphicx} %remove this line in your document
\documentclass{beamer}

\begin{document}

\begin{frame}{Test Frame}
\begin{overprint}

\onslide<1>
\vspace*{1.5cm}
First line~\footnote[frame]{footnote 1-slide 1}
\vfill
\includegraphics[width=2cm]{jinglebells}\\
Jingle bells~\footnote[frame]{footnote 2-slide 1}

\onslide<2>
\vspace*{1.5cm}
Second line~\footnote[frame]{footnote 1-slide 2}
\vfill
\includegraphics[width = 2cm]{holiday}\\
Holiday picture~\footnote[frame]{footnote 2- slide 2}

\end{overprint}
\end{frame}

\end{document} 

The output in this case, however, shows all footnotes in all slides....

enter image description here


Third option

Add also the slide number to the footnote.

MWE:

\RequirePackage[demo]{graphicx} %remove this line in your document
\documentclass{beamer}

\begin{document}

\begin{frame}{Test Frame}
\begin{overprint}

\onslide<1>
\vspace*{1.5cm}
First line~\footnote<1>[frame]{footnote 1-slide 1}
\vfill
\includegraphics[width=2cm]{jinglebells}\\
Jingle bells~\footnote<1>[frame]{footnote 2-slide 1}

\onslide<2>
\vspace*{1.5cm}
Second line~\footnote<2>[frame]{footnote 1-slide 2}
\vfill
\includegraphics[width = 2cm]{holiday}\\
Holiday picture~\footnote<2>[frame]{footnote 2- slide 2}

\end{overprint}
\end{frame}

\end{document} 

Unfortunately the output of the second slide shows a blank space where the footnotes of the first slide are.

enter image description here