Take the 2-minute tour ×
TeX - LaTeX Stack Exchange is a question and answer site for users of TeX, LaTeX, ConTeXt, and related typesetting systems. It's 100% free, no registration required.

I want to print handouts of a Beamer presentation. I am using psnup to a create a copy with multiple slides per pages. I notice that there is a lot of empty space on the top of each slide and the actual printed material takes a small proportion of the space allocated to each slide. Is there a way I can fix this?

share|improve this question
add comment

4 Answers

up vote 14 down vote accepted

I use the following preamble, making use of the package handoutWithNotes:

% \documentclass{beamer}
% \usepackage{beamerthemeclassic}
% \documentclass[handout]{beamer}
% \mode<presentation>
% {
%    \usetheme{classic}
% }
%  Leaving the lines above commented and uncommenting the following
%  produces slides four to a page, with or without space for notes;
%  the selection is made with the command
%
%      \pgfpagesuselayout{...}
%
%  a few lines below.
\documentclass[handout]{beamer}
\usepackage{handoutWithNotes}
%
%  Load other packages you may need here
% 
% \pgfpagesuselayout{4 on 1}[a4paper,landscape,border shrink=5mm
\pgfpagesuselayout{4 on 1 with notes}[a4paper,border shrink=5mm]
%
% .....

It produces rather nicely formatted output four slides to a page, either in landscape format or in portrait format, with space for notes --something my students like.

Look to the blog of Guido Diepen for more info and an example.

share|improve this answer
3  
It's worth noting that handoutWithNotes.sty is not on CTAN, hence not included in MikTeX or TeX Live, which make its use less easy, especially when it comes do sharing documents. I would rather use it as an inspiration, copying the definition of the needed layout in my preamble (and/or gently pressure the author of that he puts this resource on CTAN; it could even be included in beamer if the maintainers agrees). –  mpg Nov 1 '10 at 12:16
    
@mpg: Thank you for pointing this. It is true that having the package pre-installed in a standard distribution would make its use easier. –  F. Tusell Nov 2 '10 at 8:36
    
@F.Tusell: Awesome. I need to ask you one question. Suppose if I've 10 slides in all and after using \pgfpagesuselayout{4 on 1 with notes}[a4paper,border shrink=5mm] I get Notes even for slides 11 and 12. I wonder how to skip Notes for empty slides. Thanks –  MYaseen208 Oct 14 '11 at 20:00
    
@MYaseen208: This I don't know. I suppose you could tweak the package. You might ask Guido Diepen. –  F. Tusell Oct 16 '11 at 7:48
add comment

I found the solution in the user guide, section 4.6.2. One has to use the pgfpages package.

share|improve this answer
add comment

I second the use of pgfpages instead of psnup. To make the slides more clearly delimited, I use a variation of the 4 on 1 style that puts a border around each frame.

Here's a minimal working example:

\documentclass[handout]{beamer}

\mode<handout>
{
  \usepackage{pgf}
  \usepackage{pgfpages}

\pgfpagesdeclarelayout{4 on 1 boxed}
{
  \edef\pgfpageoptionheight{\the\paperheight} 
  \edef\pgfpageoptionwidth{\the\paperwidth}
  \edef\pgfpageoptionborder{0pt}
}
{
  \pgfpagesphysicalpageoptions
  {%
    logical pages=4,%
    physical height=\pgfpageoptionheight,%
    physical width=\pgfpageoptionwidth%
  }
  \pgfpageslogicalpageoptions{1}
  {%
    border code=\pgfsetlinewidth{2pt}\pgfstroke,%
    border shrink=\pgfpageoptionborder,%
    resized width=.5\pgfphysicalwidth,%
    resized height=.5\pgfphysicalheight,%
    center=\pgfpoint{.25\pgfphysicalwidth}{.75\pgfphysicalheight}%
  }%
  \pgfpageslogicalpageoptions{2}
  {%
    border code=\pgfsetlinewidth{2pt}\pgfstroke,%
    border shrink=\pgfpageoptionborder,%
    resized width=.5\pgfphysicalwidth,%
    resized height=.5\pgfphysicalheight,%
    center=\pgfpoint{.75\pgfphysicalwidth}{.75\pgfphysicalheight}%
  }%
  \pgfpageslogicalpageoptions{3}
  {%
    border code=\pgfsetlinewidth{2pt}\pgfstroke,%
    border shrink=\pgfpageoptionborder,%
    resized width=.5\pgfphysicalwidth,%
    resized height=.5\pgfphysicalheight,%
    center=\pgfpoint{.25\pgfphysicalwidth}{.25\pgfphysicalheight}%
  }%
  \pgfpageslogicalpageoptions{4}
  {%
    border code=\pgfsetlinewidth{2pt}\pgfstroke,%
    border shrink=\pgfpageoptionborder,%
    resized width=.5\pgfphysicalwidth,%
    resized height=.5\pgfphysicalheight,%
    center=\pgfpoint{.75\pgfphysicalwidth}{.25\pgfphysicalheight}%
  }%
}


  \pgfpagesuselayout{4 on 1 boxed}[a4paper, border shrink=5mm, landscape]
  \nofiles
}

\begin{document}
\begin{frame}
Frame One
\end{frame}
\begin{frame}
Frame Two
\end{frame}
\begin{frame}
Frame Three
\end{frame}
\begin{frame}
Frame Four
\end{frame}
\end{document}

which produces:

alt text

(In my actual documents, I have that page layout saved in a style file which gets loaded between loading pgfpages and the \pgfpagesuselayout command.)

share|improve this answer
    
How do I include the "4 on 1 boxed" code in my main document? –  csgillespie Nov 10 '10 at 15:04
    
@csgillespie: I've edited my answer to make it easier to cut-and-paste into another document (I agree that my original answer wasn't clear on what should go where). Does that help? –  Andrew Stacey Nov 10 '10 at 20:07
    
Yes that does help. It was the style file bit I was after. Many thanks. –  csgillespie Nov 10 '10 at 20:45
add comment

I'm using beamer to write my lecture notes. I want to be provide handouts for my students which box the slide AND have lines for their own notes - a combination of Andrew's code above and Guido's handoutWithNotes.sty.

Here's the code that does the work:

\mode<handout>
{
\usepackage{pgf}
\usepackage{pgfpages}

\pgfpagesdeclarelayout{2 on 1 boxed with notes}
{
\edef\pgfpageoptionheight{\the\paperheight} 
\edef\pgfpageoptionwidth{\the\paperwidth}
\edef\pgfpageoptionborder{0pt}
}
{
\setkeys{pgfpagesuselayoutoption}{landscape}
\pgfpagesphysicalpageoptions
    {%
        logical pages=4,%
        physical height=\pgfpageoptionheight,%
        physical width=\pgfpageoptionwidth,%
        last logical shipout=2%
    }
\pgfpageslogicalpageoptions{1}
    {%
    border code=\pgfsetlinewidth{1pt}\pgfstroke,%
    scale=1,
    center=\pgfpoint{.25\pgfphysicalwidth}{.75\pgfphysicalheight}%
    }%
\pgfpageslogicalpageoptions{2}
    {%
    border code=\pgfsetlinewidth{1pt}\pgfstroke,%
    scale=1,
    center=\pgfpoint{.25\pgfphysicalwidth}{.25\pgfphysicalheight}%
    }%
\pgfpageslogicalpageoptions{3}
    {%
    border shrink=\pgfpageoptionborder,%
    resized width=.7\pgfphysicalwidth,%
    resized height=.5\pgfphysicalheight,%
    center=\pgfpoint{.75\pgfphysicalwidth}{.29\pgfphysicalheight},%
    copy from=3
    }%
\pgfpageslogicalpageoptions{4}
    {%
    border shrink=\pgfpageoptionborder,%
    resized width=.7\pgfphysicalwidth,%
    resized height=.5\pgfphysicalheight,%
    center=\pgfpoint{.75\pgfphysicalwidth}{.79\pgfphysicalheight},%
    copy from=4
    }%

\AtBeginDocument
    {
    \newbox\notesbox
    \setbox\notesbox=\vbox
        {
            \hsize=\paperwidth
            \vskip-1in\hskip-1in\vbox
            {
                \vskip1cm
                Notes\vskip1cm
                        \hrule width\paperwidth\vskip1cm
                    \hrule width\paperwidth\vskip1cm
                        \hrule width\paperwidth\vskip1cm
                    \hrule width\paperwidth\vskip1cm
                        \hrule width\paperwidth\vskip1cm
                    \hrule width\paperwidth\vskip1cm
                    \hrule width\paperwidth\vskip1cm
                    \hrule width\paperwidth\vskip1cm
                        \hrule width\paperwidth
            }
        }
        \pgfpagesshipoutlogicalpage{3}\copy\notesbox
        \pgfpagesshipoutlogicalpage{4}\copy\notesbox
    }
}
}

\pgfpagesuselayout{2 on 1 boxed with notes}[letterpaper,border shrink=5mm]
share|improve this answer
    
Welcome to TeX.sx! –  Kurt Apr 11 '13 at 1:33
add comment

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.