How can I print a booklet from a pdf file?

I have a pdf document, and I want to print it as a booklet, i.e. two pages of the document on each side of a sheet of paper and so that (when printed) the entire thing can just be folded in the middle to create a small booklet.

How can I do this easily?


Solution 1:

For a free and universal alternative you can use the pdfbook script, part of the pdfjam collection which is usually included in LaTeX distributions (notably MacTeX). It's simple to use from the command line:

pdfbook mypdf.pdf

If the above doesn't work, then /Library/TeX/texbin isn't in your PATH (or /usr/texbin for older versions of MacTeX). The best course of action is to ensure PATH is correctly set (lots of command line programs will fail if the PATH variable isn't correct and pdfbook is one of them); this isn't trivial under OS X if you want a consistent behavior between applications launched from the dock and applications run from a terminal so you definitely should search a complete solution to this specific problem. As dirty work-around, you can run export PATH="$PATH:/Library/TeX/texbin:/usr/texbin" every time before you use pdfbook (including in the service below).

If you don't want to use the command line, you can create a service easily.

  1. Launch Automator (on Yosemite it's in Applications/Others)
  2. Create a new document and select "Service".
  3. On top of the right frame, for "Service receives selected" choose "PDF files".
  4. Search "Run Shell Script" from the bar on the top of the left frame and double-click it. Select to "Pass input" as "arguments" in the newly created window.
  5. Enter a simple script running pdfbook, for instance pdfbook "$@".
  6. Save it as "Create booklet" (for instance).
  7. In Finder, select a PDF file, then in the menu go to Services/Create booklet.

My complete script also creates a temporary file and opens the resulting PDF:

TMPF=`mktemp -t bookletXXXX`
mv "$TMPF" "$TMPF.pdf"
pdfbook -o "$TMPF.pdf" "$@"
open "$TMPF.pdf"

The most obvious problem is the several GB download and installation of a LaTeX distribution if all you want is the pdfbook script.

Solution 2:

You can use the Create Booklet utility1 which adds an option to “print”, from Preview or any other app, to generate a second pdf file with the pages arranged appropriately to print and bind as a booklet. When printing the resulting pdf booklet, remember to select “Two-Sided: Short-Edge binding” in the “Layout” options of the print dialog.

1. No longer free, $9.99 on the App Store as of 09/2015.