38

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?

9 Answers 9

31

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.

5
  • I just installed mactex and I don't seem to have pdfbook. Any other steps I need to take?
    – Chris
    Commented Jun 11, 2015 at 16:37
  • I've checked the TeX Live repository (which MacTeX uses), pdfbook is there so it definitely looks like a PATH problem. Sadly, you can't just use the full path of the script (which is /usr/texbin/pdfbook) because then it will fail to find its parent script pdfjam. I've updated my answer with an explanation of the problem and a dirty work-around, but you definitely should fix the PATH problem globally instead (I don't remember how I did it and couldn't find the SO question I used back then but it's there somewhere).
    – Blout
    Commented Jun 16, 2015 at 17:03
  • Simply brilliant! Works on (Ubuntu) Linux right out of the box. Commented Dec 10, 2018 at 11:58
  • 1
    To install mactex, you can use Homebrew: brew cask install mactex This includes a tool called pdfbook2 which seems to do the same as pdfbook in this answer (possibly with different arguments though). As above, you need to start a new shell to update your PATH variable.
    – Rob
    Commented Jul 7, 2020 at 17:19
  • 2
    pdfbook has indeed been superseded by pdfbook2. Also, it’s neat that you can now use homebrew, back when I wrote the answer they would redirect you to the MacTeX website. @Rob, can you edit the answer with the correct paths and such? I no longer have access to a Mac to test it properly.
    – Blout
    Commented Jul 13, 2020 at 17:42
14

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.

4
  • I have used this tool with OSX 10.7.3 and it works fine - quite nice functionality in a low weight package.
    – user22285
    Commented May 1, 2012 at 5:43
  • @Phrogz, thanks for letting me know. Indeed, I've updated the link to point to the developer's site. Commented Dec 9, 2013 at 23:25
  • 1
    It looks like the link needs another update: thekeptpromise.com/FreeApps/#CreateBooklet Commented Jul 28, 2014 at 22:22
  • 1
    The URL has changed again, it's now: thekeptpromise.com/CreateBooklet - also, they're charging for it these days. However, it was only $4.99 at time of commenting, which is worth the time it saved me :)
    – mnem
    Commented Mar 17, 2015 at 19:10
11

My solution is to install Macintosh version of Adobe Acrobat Reader DC, available from https://get.adobe.com/reader/, and use it to open the PDF file. When printing from Adobe Reader, there is several options in page sizing and handling :

  1. Poster
  2. Multiple
  3. Booklet

Choose Booklet and you're good to go.

Screenshot of Adobe Reader in OS X

See https://helpx.adobe.com/acrobat/kb/print-booklets-acrobat-reader.html for more detail. The advantage of this solution that the same solution also works in the Windows world.

5

"Booklet printing" is called imposition in the terminology of the professional printing business.

Cheap Impostor

is a utility for doing exactly what you want. It costs US $35, and has a free trial with some features disabled. It is affordable for casual use, but also good enough for professional imposition.

4

Open the PDF in preview, go to the print dialog and you'll find some (hopefully) helpful settings — I say hopefully as I've not done exactly what you're after...

Click the little down arrow next to the printer name to expand the print dialog if its not already larger. In the bottom half of the dialog window, there's a drop-down menu where you can select a few relevant options:

  • In Layout (in the drop-down menu), Pages per Sheet (you can set this to 2 to have a left and right side on each page)
  • Also in Layout, Two-Sided (you can choose the paper edge over which the binding would occur — not sure how this works for folding in the middle though...
  • The drop-down also has a section called Booklet Printing, which has various options that will be of interest to you, mostly the first checkbox to enable booklet printing :)

Now I've not done it myself, and I don't know if it'll work for folding the pages in the middle (it looks like its intended for binding the pages along one edge) but that's probably the place to start looking.

If it doesn't work as is, then you may need to manually rearrange the pages (which you can do in Preview) to be in the right order so that simple double sided printing with short-edge binding puts the pages in the right places, though this may be quite difficult if there's a lot of pages...

Good luck...

2
  • 2
    In the drop-down menu I see no option for “Booklet Printing”, is this perhaps an option from a specific printer? Commented Nov 10, 2010 at 11:06
  • oh, sorry, you're right :/ I didn't realise this was part of the HP driver for the printers here at work... you could still play around with the page order and 2 pages per sheet / double sided printing I guess... Commented Nov 11, 2010 at 0:39
4

You can use the free python script here. Just add it to your PDF Services folder in your user Library (create the folder if it doesn't exist). It will then appear in the PDF button of your print menu.

It's set for A3 sheets, but there are options to change the sheet size (and other things) in the script.

3
  • I've used this script, it's great! Some notes though: (1) If your starting PDF is not proportionally correct, there will be margins added to the edges. For example, if I want to print a booklet with no margins on landscape 8.5"x11" paper, my starting PDF used as input should be 5.5" wide x 8.5" tall (half of the landscape 8.5"x11" page) (2) If you use an already existing PDF you will get margins and the content will not go all the way to the edges of the paper. If you print from the app you created the content in (like Pages), then the content will go all the way to the edges.
    – Wimateeka
    Commented Sep 26, 2021 at 12:25
  • @Wimateeka Thanks. Yes: if your page is narrower than expected, you will get extra margins. The alternative would be cutting off the top and bottom (bad); or stretching out of proportion (bad). The script should not produce extra margins for an existing PDF: it's possible that Preview's scale to fit option in the print dialog may be coming into play. Note that in Big Sur, Python Scripts don't work as PDF Services, 'for security'.
    – benwiggy
    Commented Sep 26, 2021 at 14:45
  • good to know. I'll be sure to make sure the "scale to fit" is not selected when using the script. Also I am using OSX Sierra (10.12.6) so I don't need to worry about Big Sur and security, for now at least :) .
    – Wimateeka
    Commented Sep 26, 2021 at 18:26
0

There is a nice App in the AppStore called booklet for about $ 1.00: https://itunes.apple.com/ch/app/booklet/id1375737884?l=en&mt=12 It has a couple of options and does exactly what you want.

0

This capability has been added to the native preview app within macOS Catalina - no need to download anything else.

In the print dialog, click "Show Details" (if you haven't already), then change the selector from "Preview" to "Layout". You should now see a setting for "Two-Sided" and you can select "Booklet". I also like to select a thin border to see that proper printed pages. Although the preview window doesn't actually show what will print, it does seem to print properly.

https://imgur.com/a/SM395Fo

1
  • 4
    That option will only be available for printers that offer duplexing and automatic booklet making. Booklets made by printer drivers may place each page inside the print area of the sheet, thus scaling the pages to be smaller than necessary.
    – benwiggy
    Commented Oct 29, 2020 at 13:18
0

There is a free online tool, no downloads required, called The Zine Arranger that can help make all sizes of zines/booklets and you can even create customize sizes. This includes a half-size booklet (2 pages per side, fold the page in half).

https://nashhigh.itch.io/zinearranger

I have tried it out myself using a PDF of pages I had and it worked like a charm!

I also like that it requires only a browser and files; no need to touch code, the Terminal or Automator.


Other things I tried that DID NOT WORK and you SHOULD AVOID:

  • I tried to use Adobe Acrobat, it would not let me save to PDF from the print screen even though it had the ability to create booklets.
  • I also tried this automator solution but I could not get the automation to work
  • Using Preview's Books Template

Folks who also had this problem:

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .