# Beamer - place text of footnote in footline

I must place footnotes and footcites at the bottom of the frames, like shown in the picture:

The line above the footnotes must always be there, and it must have a minimum distance to the bottom of lets say 2.5em.

So I see two possible solutions:

1. Add the footnote via \setbeamertemplate to the footline.
2. Change the format of the footnoteline and let it always appear, even if no footnote was used.

For the last hours, I tried to accomplish point 1, but I had absolutely no success. Can you please help me? Otherwise I have to use *whisper* Powerpoint. ;)

EDIT: Do you know the phenomenon that only after you ask someone, you can get the right ideas? ;)

Here is a MWE of my current solution:

\documentclass[xcolor={dvipsnames}]{beamer}

\usepackage[absolute, overlay]{textpos}
\usepackage{environ}

\usetheme{default}

\newcommand{\makemyrule}{%
\setlength{\unitlength}{14pt}%      minimum distance to bottom
\ifdim\footnoteheight>\unitlength \setlength{\unitlength}{\footnoteheight} \fi%     check which distance is bigger
\begin{textblock*}{\linewidth}(0pt,\dimexpr\textheight-\unitlength)%    place with use of textpos
\textcolor{blue}{\rule{\paperwidth}{.3ex}}
\end{textblock*}
}

\let\oldfootnote\footnote%      redefine the footnote command

\newlength{\footnoteheight}
\newsavebox{\mytext}
\newcommand{\Addheight}[1]%     measure height of the text
{%
\savebox{\mytext}{\small\strut\parbox{\textwidth}%
{\hspace*{2em}\thefootnote#1}\strut}%       approximated by eye, not perfect!
}

\NewEnviron{myframe}[1]{%
\begin{frame}{#1}%
\setlength{\footnoteheight}{0pt}%
\BODY%
\makemyrule%
\end{frame}%
}

\renewcommand\footnoterule{}

\begin{document}
\begin{myframe}{}
\frametitle{Beamer example}
using\footnote{Y LUSPIN, et al} footnotes\footnote{P. GHOSEZ, et al and a lot more information to create a linebreak} excessively \footnote{You do not need to read this, this is only blindtext to create even more and more text. Blindtext will go on forever, nobody can stop the allmighty blindtext. I think I am a blindtext author.}
\end{myframe}{}
\begin{myframe}
\frametitle{Beamer example}
using\footnote{Y LUSPIN, et al} footnotes\footnote{P. GHOSEZ, et al}
\end{myframe}{}
\begin{myframe}
\frametitle{Another example}
without footnotes\\
\end{myframe}
\end{document}


What this does: At the beginning of each myframe-environment, the length \footnoteheight is reseted to zero. When a \footnote is placed, the height of the text is added to this length. At the end of each frame, via \makemyrule the bottom rule is created, which is above the footnote texts (my solution is not perfect) or, if there are no footnotes, at least 14pt above the bottom.

My wishes (not real problems, but I want it to work better) are

1. The height of the footnotetext is only approximated. I would like a solution where you can measure the height of the formatted footnote.
2. The frame environment needs to be renamed to myframe. I would like a solution which works without changing the document. But it all failed, because I could not execute \makemyrule before \end{frame} automatically.

If you want to use the default \footnote commands then you can consider not using the footline and redefine \footnoterule to display the blue line above the footnotes:

\documentclass[xcolor={dvipsnames}]{beamer}

\mode<presentation> {
\usetheme{default}
\renewcommand\footnoterule{\moveleft1cm\vbox{\textcolor{blue}{\rule{\paperwidth}{2pt}}\vskip 1mm}}
}

\begin{document}
\begin{frame}
\frametitle{Beamer example}
using\footnote{Y LUSPIN, et al} footnotes\footnote{P. GHOSEZ, et al}
\end{frame}
\begin{frame}
\frametitle{Another example}
without footnotes
\end{frame}
\end{document}


This looks like the following (some additional customization may be desired):

• Thanks, but I am still missing the footnoterule on frames without footnotes. – Mathias Feb 2 '16 at 16:24

Caveat: This 'hack' is a modification of https://stackoverflow.com/questions/3103989/how-do-i-change-the-footer-footline-of-a-single-frame-in-beamer.

It only allows the change of the contents of the single line of the footline. This does not allow more than one line. (I do not know how to extend the height of the footline)

Also note that the braces with the footline change must appear before the slide to modify. And the braces are critical to keep this a local not global change.

Also, I suspect you will have to manually create each reference uniquely as I doubt the usual LaTeX tools for citing will work with this.

\documentclass{beamer}

\begin{document}
\begin{frame}[t]{Frame 1}
A
\end{frame}

{ % these braces make the change local to the single frame
\setbeamertemplate{footline}{This is a dummy reference, however it can only be on one line (as I do not know how to make the footline larger.}
\begin{frame}[t]{Frame 2}
B
\end{frame}
}

\begin{frame}[t]{Frame 3}
C
\end{frame}
\end{document}


Finally, I would actually recommend you only put a citation number(s) in the footline. Then if one needs to know the source they can look later at the list of references at the end of the slide show.

• Thank you. If I would do it just for myself, I would use your answer because it is easy understandable. But I plan to create a simple Beamertheme for my working group, so others might use Beamer. This means it has to work with the usual \footnote{} command (maybe it needs to be redefined). – Mathias Feb 2 '16 at 16:27

Dirty hack, that uses the logo for the line and stole the example code from https://tex.stackexchange.com/a/290740/36296 since the question did not provide any.

\documentclass[xcolor={dvipsnames}]{beamer}

\usetheme{default}

\setbeamertemplate{logo}{%
\setlength{\unitlength}{1mm}
% placement: (paperwidth, paperheight)(text margin left, 0)
\begin{picture}(127,0)(0,0)%
% insert red top rule
\put(0,0){%
\color{blue}{%
\rule{1.1\paperwidth}{1mm}%
}%
}%
\end{picture}
\vspace*{0.6cm}
}

\renewcommand\footnoterule{}

\begin{document}
\begin{frame}
\frametitle{Beamer example}
using\footnote{Y LUSPIN, et al} footnotes\footnote{P. GHOSEZ, et al}
\end{frame}
\begin{frame}
\frametitle{Another example}
without footnotes
\end{frame}
\end{document}