65

I am using \columns in beamer to show two pictures. After I added \footnote{ExampleText} after captions, the ExampleTest just appear in each column. Now I want to show all of the ExampleText in the bottom of the slide instead of each column, how can I do this?

MWE:

\documentclass{beamer}
\usepackage{graphicx}
\begin{document}
 \begin{frame}
\begin{columns}
\begin{column}{.5\textwidth}
\includegraphics{img1}\footnote{f2}
\end{column}
\begin{column}{.5\textwidth}
\includegraphics{img2}\footnote{f1}
\end{column} 
\end{columns}
\end{frame}
\end{document}

4 Answers 4

84

You can use \footnotemark, \footnotetext{<text>}; a little example:

\documentclass{beamer}

\begin{document}

\begin{frame}
\begin{columns}
\column{.5\textwidth}
Some text for the first column and a test footnote\footnotemark
\column{.5\textwidth}
Some text for the second column and a test footnote\footnotemark
\end{columns}
\footnotetext[1]{A test footnote in the first column}
\footnotetext[2]{A test footnote in the second column}
\end{frame}

\end{document}

enter image description here

In a comment it has been asked how to use the same footnote text for two footnotes, one in each column; here's a possibility:

\documentclass{beamer}

\begin{document}

\begin{frame}
\begin{columns}
\column{.5\textwidth}
Some text for the first column and a test footnote\footnotemark
\column{.5\textwidth}
Some text for the second column and a test footnote\footnotemark[1]
\end{columns}
\footnotetext{A test footnote for both columns}
\end{frame}

\end{document}

enter image description here

3
  • 2
    Is there a way to have the footnotes appear at the same time as the item they belong to? Maybe something like \only<3-> to have the footnote appearing with the third item on the slide, but not before? Sep 19, 2019 at 8:30
  • 1
    @MatthiasBraun You can have \footnote<.->{Some text} and \footnote<3->{Some text} etc.
    – jadelord
    Sep 19, 2019 at 13:55
  • To avoid to update footnote numbers by hand one can add at the beginning of the slides the code \newcounter{savedfootnotenumber} \setcounter{savedfootnotenumber}{\number\value{footnote}} and then \addtocounter{savedfootnotenumber}{1}\footnotetext[\value{savedfootnotenumber}]{First note}\addtocounter{savedfootnotenumber}{1}\footnotetext[\value{savedfootnotenumber}]{Second note}
    – Pietro C
    Sep 27, 2019 at 8:11
79

The most consistent way to do this is to keep the footnotes as they are but supply the [frame] option to them.

\documentclass{beamer}

\begin{document}

\begin{frame}
\begin{columns}
\column{.5\textwidth}
Some text for the first column and a test footnote\footnote[frame]{A test footnote in the first column}
\column{.5\textwidth}
Some text for the second column and a test footnote\footnote[frame]{A test footnote in the second column}
\end{columns}
\end{frame}

\end{document}

Output as intended with standard footnote syntax

2
  • 3
    In order to prevent the long footnote from overlapping the menu icons, you can add double back slash before the closing }
    – aiag
    Jan 2, 2018 at 1:14
  • Is it possible to use something like \renewcommand<>{\footnote} ... to make this the default? I am using pandoc and the only way (as I see it) to enforce this is to redefine footnote command in the preamble.
    – jadelord
    Sep 19, 2019 at 13:57
0

At first I removed this answer because I wasn't sure what you wanted. You might want to change the MWE above, I don't know. Anyway, this works for me to give a single footnote. Just call the footnote after explicitly closing the columns.

\documentclass{beamer}
\usepackage{graphicx}
\begin{document}
\begin{frame}
\begin{columns}
  \begin{column}{.5\textwidth}
  \includegraphics{img1}
  \end{column}
  \begin{column}{.5\textwidth}
  \includegraphics{img2}
  \end{column}
\end{columns}
*\footnote{Your footnote text.}
\end{frame}
\end{document}

Works for me. What did I miss?

0

I had the same problem, and I'm using pandoc so I wanted the solution to work by default on all footnotes with a renewcommand (just as asked by @jadelord in a comment below @andreas post). But it is nothing simple, because of all the layers that beamer adds to footnote and renewcommand in order to manage overlay specifications (and pandoc sends an overlay specification to footnote). Ideally, the pandoc code should be updated. The only solution I found is to copy/paste the footnote renewcommand from beamer source code and force the frame option. Here is my code for the record.

\makeatletter
 \renewcommand<>{\footnote}[1][]{%
  \let\beamer@footnotetext=\@footnotetext%
  \let\beamer@mpfn=\@mpfn%
  \let\beamer@thempfn=\thempfn%
  \let\beamer@kvorig=\KV@errx%
  \let\beamer@xkvorig=\XKV@err
  \def\beamer@footarg{}%
  \def\KV@errx##1{\edef\beamer@footarg{\@tempa}}%
  \def\XKV@err##1{\edef\beamer@footarg{\XKV@tkey}}%
  \setkeys{beamerfootnote}{frame}%
  \let\KV@errx=\beamer@kvorig%
  \let\XKV@errx=\beamer@xkvorig
  \ifx\beamer@footarg\@empty%
    \def\beamer@next{\stepcounter\beamer@mpfn
      \protected@xdef\@thefnmark{\beamer@thempfn}%
      \@footnotemark\beamer@footnotetext#2}%
  \else%
    \def\beamer@next{%
      \begingroup
        \csname c@\beamer@mpfn\endcsname\beamer@footarg\relax
        \unrestored@protected@xdef\@thefnmark{\beamer@thempfn}%
      \endgroup
      \@footnotemark\beamer@footnotetext#2}%
  \fi%
  \beamer@next}
\makeatother

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .