Notes with pdf-presenter-console and latex beamer

I’m giving a talk soon and I thought it is a good idea to make the slides with latex beamer. Fair enough the slides were made quickly and everything was set.

After a while I found a good presentation tool named pdf-presenter-console which is written in Vala and just fits my needs, except for the lack of a method for displaying notes on your slides. It uses one screen displaying the current and the next slide as well as the elapsed time and the other screen for the current slide in full screen for the audience. What I wanted was, that the presenter screen, that is the one with the information for the presenter (me), displaying the slides with notes.

The code base of pdf-presenter-console allows a very quick change so that one can pass another PDF file to the presenter than to the presentation. Now what I needed was a way to include the notes in my slides.

As I found out, latex beamer supports notes but displays them on a separate slide using a more or less ugly theme. Using pgfpages and a simple .sty file I got a workaround for that. I created a new direction for the two screen pgf layout based on bottom and changed the dimension in a way that both pages overlap. In the .tex file I only had to use it and to make the notes template a bit more usable.

nemonotes.sty:

\RequirePackage{pgfpages}

% Page layout which lays the second page over the first
\define@key{pgfpagesuselayoutoption}{second notes bottom}[]%
{%
\def\pgfpageoptionfirstcenter{\pgfpoint{.5\paperwidth}{.5\paperheight}}%
\def\pgfpageoptionsecondcenter{\pgfpoint{.5\paperwidth}{.5\paperheight}}%
\def\pgfpageoptiontwoheight{\paperheight}%
\def\pgfpageoptiontwowidth{\paperwidth}%
}

in the .tex file:

\usepackage{pgfpages}
\usepackage{nemonotes}

% Use slide with red box + notes for notes
\setbeamertemplate{note page}{
    \vspace{.9\textheight} % skip 90% of the page

    \colorbox{red}%
    {%
        \parbox{\textwidth}{%
            \textbf{Notes:}%
            \insertnote%
        }%
    }%
}

% Itemize for notes with little spacing
\newenvironment{nitemize}{
\begin{itemize}
    \setlength{\itemsep}{1pt}
    \setlength{\parskip}{0pt}
    \setlength{\parsep}{0pt}
}{\end{itemize}}

% Enable this to have notes in your slides!
\setbeameroption{show notes on second screen=notes bottom}

Usage example:

\begin{frame}
    \frametitle{Test}

    \note{
        \begin{nitemize}
            \item Foo
            \item Bar
        \end{nitemize}
    }
\end{frame}

pdf presenter console usage example:

$ pdf_presenter_console slides.pdf slides_notes.pdf

To use this, copy the .sty content in your texmf path and add the .tex file content to your tex file.

The necessary changes for pdf-presenter-console are available at my github repository (#d24056)