0

This question is based when I read the answer of... Note page showing the next frame

I was wondering if it is possible just to define a command like \insertslideintonotes{<scale>} which then inserts the slide as a picture into the note page. Something like \insertnextslideintonotes{<scale>}? This gives more flexibility.

This is the code of the solution. The next slide frame is located \pgfpageslogicalpageoptions{3}%

\documentclass{beamer}
%\url{http://tex.stackexchange.com/q/33051/86}
\usepackage{pgfmorepages}
\setbeameroption{show notes}

\makeatletter
\defbeamertemplate{note page}{lookahead}
{%
  {%
    \scriptsize
    \insertvrule{.25\paperheight}{white!90!black}
    \vskip-.25\paperheight
    \nointerlineskip
    \vbox{
      \hfill\insertslideintonotes{0.25}\hskip0.25\paperwidth\hskip-\Gm@rmargin\hskip0pt%
      \vskip-0.25\paperheight%
      \nointerlineskip
      \begin{pgfpicture}{0cm}{0cm}{0cm}{0cm}
        \begin{pgflowlevelscope}{\pgftransformrotate{90}}
          {\pgftransformshift{\pgfpoint{-2cm}{0.2cm}}%
          \pgftext[base,left]{\footnotesize\the\year-\ifnum\month<10\relax0\fi\the\month-\ifnum\day<10\relax0\fi\the\day}}
        \end{pgflowlevelscope}
      \end{pgfpicture}}
    \nointerlineskip
    \vbox to .25\paperheight{\vskip0.5em
      \hbox{\insertshorttitle[width=8cm]}%
      \setbox\beamer@tempbox=\hbox{\insertsection}%
      \hbox{\ifdim\wd\beamer@tempbox>1pt{\hskip4pt\raise3pt\hbox{\vrule
            width0.4pt height7pt\vrule width 9pt
            height0.4pt}}\hskip1pt\hbox{\begin{minipage}[t]{7.5cm}\def\breakhere{}\insertsection\end{minipage}}\fi%
      }%
      \setbox\beamer@tempbox=\hbox{\insertsubsection}%
      \hbox{\ifdim\wd\beamer@tempbox>1pt{\hskip17.4pt\raise3pt\hbox{\vrule
            width0.4pt height7pt\vrule width 9pt
            height0.4pt}}\hskip1pt\hbox{\begin{minipage}[t]{7.5cm}\def\breakhere{}\insertsubsection\end{minipage}}\fi%
      }%
      \setbox\beamer@tempbox=\hbox{\insertshortframetitle}%
      \hbox{\ifdim\wd\beamer@tempbox>1pt{\hskip30.8pt\raise3pt\hbox{\vrule
            width0.4pt height7pt\vrule width 9pt
            height0.4pt}}\hskip1pt\hbox{\insertshortframetitle[width=7cm]}\fi%
      }%
      \vfil}%
  }%
  \vskip.25em
  \nointerlineskip
  \insertnote
}


\pgfpagesdeclarelayout{notes page with look ahead}%
{%
  \edef\pgfpageoptionheight{\the\paperwidth}
  \edef\pgfpageoptionwidth{\the\paperheight}
  \def\pgfpageoptionborder{0pt}
  \def\pgfpageoptionfirstshipout{1}
  \def\pgfpageoptioninitialshipout{2}
}%
{%
  \pgfpagesphysicalpageoptions
  {%
    logical pages=3,%
    physical pages=2,%
    physical height=\the\paperheight,%
    physical width=\the\paperwidth,%
    current logical shipout=2,%
    last logical shipout=2,%
  }
  \pgfpagesphysicalpage{1}{%
    skip code={\ifnum\the\pgfactualpage=1\relax\pgfpagesshipfalse\fi}
  }%
  \pgfpageslogicalpageoptions{1}%
  {
    resized width=\pgfphysicalwidth,%
    resized height=\pgfphysicalheight,%
    border shrink=\pgfpageoptionborder,%
    center=\pgfpoint{.5\pgfphysicalwidth}{.5\pgfphysicalheight}%
  }%
  \pgfpageslogicalpageoptions{3}%
  {
    resized width=.25\pgfphysicalwidth,%
    resized height=.25\pgfphysicalheight,%
    border shrink=\pgfpageoptionborder,%
    center=\pgfpoint{.875\pgfphysicalwidth}{.875\pgfphysicalheight},%
    border code={\color[gray]{0.8}\pgfusepath{stroke}},%
    skip code={%
      \ifvoid\csname pgfpages@box@2\endcsname\else
      \setbox\csname pgfpages@box@3\endcsname=%
\hbox to \pgfphysicalwidth{%
\hskip-.6in% No idea why this is the right value
\vbox to \pgfphysicalheight{%
\vskip-1in%
\copy\beamer@frameboxcopy}}\fi
      }%
  }
  \pgfpagesphysicalpage{2}{%
    skip code={\ifvoid\csname pgfpages@box@2\endcsname\pgfpagesshipfalse\fi}%
  }%
  \pgfpageslogicalpageoptions{2}%
  {
    resized width=\pgfphysicalwidth,%
    resized height=\pgfphysicalheight,%
    border shrink=\pgfpageoptionborder,%
    center=\pgfpoint{.5\pgfphysicalwidth}{.5\pgfphysicalheight}%
  }%
}

\pgfpagesdeclarelayout{notes page on second screen left with look ahead}%
{%
  \edef\pgfpageoptionheight{\the\paperwidth}
  \edef\pgfpageoptionwidth{\the\paperheight}
  \def\pgfpageoptionborder{0pt}
  \def\pgfpageoptionfirstshipout{1}
  \def\pgfpageoptioninitialshipout{2}
}%
{%
  \pgfpagesphysicalpageoptions
  {%
    logical pages=3,%
    physical pages=1,%
    physical height=\the\paperheight,%
    physical width=2\paperwidth,%
    current logical shipout=1,%
    last logical shipout=2,%
  }
  \pgfpagesphysicalpage{1}{%
  }%
  \pgfpageslogicalpageoptions{2}%
  {
    resized width=\pgfphysicalwidth,%
    resized height=\pgfphysicalheight,%
    border shrink=\pgfpageoptionborder,%
    center=\pgfpoint{.25\pgfphysicalwidth}{.5\pgfphysicalheight}%
  }%
  \pgfpageslogicalpageoptions{3}%
  {
    resized width=.25\pgfphysicalwidth,%
    resized height=.25\pgfphysicalheight,%
    border shrink=\pgfpageoptionborder,%
    center=\pgfpoint{.4375\pgfphysicalwidth}{.875\pgfphysicalheight},%
    border code={\color[gray]{0.8}\pgfusepath{stroke}},%
    skip code={%
      \ifvoid\csname pgfpages@box@2\endcsname\else
      \setbox\csname pgfpages@box@3\endcsname=%
\hbox to \pgfphysicalwidth{%
\hskip-.6in% No idea why this is the right value
\vbox to \pgfphysicalheight{%
\vskip-1in%
\copy\beamer@frameboxcopy}}\fi
      }%
  }
  \pgfpageslogicalpageoptions{1}%
  {
    resized width=.5\pgfphysicalwidth,%
    resized height=\pgfphysicalheight,%
    border shrink=\pgfpageoptionborder,%
    center=\pgfpoint{.75\pgfphysicalwidth}{.5\pgfphysicalheight}%
  }%
}
\makeatother
\setbeamertemplate{note page}[lookahead]
\pgfpagesuselayout{notes page on second screen left with look ahead}
%\pgfpagesuselayout{notes page with look ahead}

\begin{document}
\begin{frame}{The first frame}
\begin{enumerate}
\item An item
\note[item]{with a note}
\item Another item
\note[item]{with another note}
\end{enumerate}
\vfill
Something near the bottom
\end{frame}
\begin{frame}{The second frame}
\begin{enumerate}
\item An item
\note[item]{with a note}
\item Another item
\note[item]{with another note}
\end{enumerate}
\vfill
Something near the bottom
\end{frame}
\begin{frame}{The third frame}
\begin{enumerate}
\item An item
\note[item]{with a note}
\item Another item
\note[item]{with another note}
\end{enumerate}
\vfill
Something near the bottom
\end{frame}
\begin{frame}{The fourth frame}
\begin{enumerate}
\item An item
\note[item]{with a note}
\item Another item
\note[item]{with another note}
\end{enumerate}
\vfill
Something near the bottom
\end{frame}
\end{document
  • And now we are expected to copy code from that answer? ;-) – user31729 Feb 21 '15 at 19:50
  • That depends. I am not sure how one would program this. So I guess that the code from that question is indeed a good start. – WG- Feb 21 '15 at 20:28
  • Someone apparently already wrote a function which I want, bitbucket.org/rivanvx/beamer/issue/5/…. but the link is down :( – WG- Feb 21 '15 at 20:32

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Browse other questions tagged or ask your own question.