PDF, PostScript and Imposition tools

=Introduction=

First: you may not know what imposition is: Wikipedia will tell you.

A list of tools which are useful for imposition.

Two type of software are listed here:


 * software which can be obtained free of charge and can help you do some imposition tasks.
 * imposition software (free, free of charge or payware)

There is also another wiki page on just Imposition.

=Multiplatform=

As for usability Bookbinder rates very good. It can only do simple imposition (4 pages on each sheet), but that is about 99% of the needs
 * pdftk (free)
 * bookbinder (free)

Example for making a booklet: $ java.exe -cp multivalent.jar" tool.pdf.Impose -dim 2x1 -layout 2,3,4,1 -paper "297x210 mm" -verbose file.pdf
 * multivalent (free) (see How to make impositions with Multivalent)

Other example for 32 pages on A3 sheets : (Paths will have to be adjusted for your environment (and if you're on linux you will of course have to use a shell script instead, but the content wont differ much. Then the printer will just have to "print double sided") @echo off set javarun="c:\program files\java\jre6\bin\java.exe" set multivalent="c:\Documents and settings\pnermander\temp\slask\multivalent.jar"

%javarun% -cp %multivalent% tool.pdf.Impose -dim 2x1 -layout 2,31,32,1,4,29,30,3,6,27,28,5,8,25,26,7,10,23,24,9,12,21,22,11,14,19,20,13,16,17,18,15 -paper "420x297 mm" -verbose %*

Creating an imposition for an A5 folder (including 2-up printing and bleeds) with Scribus and jPDF Tweak requires : (1) in Scribus : - setting Units to "Pt" (because jPDF Tweak will need the correct numbers) - selecting "double page" document layout - setting "blend" for outer, top and bottom (NOT left) margin - export to PDF (2) in jPDF Tweak : - in "Page Size" set "Scale Pages", "Portrait" and Width/Hight manually - in "Shuffle/N-up" set "Shuffle", "A4 Portrait" and "Booklet Portrait" - RUN ;-)
 * PoDoFo Impose (free; imposition tool distributed with the PoDoFo library)
 * On-line imposition with PoDoFo (web based, work in progress; by Pierre Marchand; there is still an old server)
 * Adobe Reader 8 and 9 will do booklet printing for you. For a A4 booklet, you just need to export an A5 document to PDF and then tell Adobe Reader to print it as a booklet. With Reader 9 you do not have to prepare a certain size as the Reader can scale (not sure if any precision issues). Depending on needs you may want the "Multiple Pages Per Sheet" or the "Booklet Printing" option in the Print Dialog "page scaling" option drop down.
 * PDFSaM is a very reliable Java-based tool that provides many options to manipulate PDF files. Especially recommended for pre-press work!
 * jPDF Tweak is a versatile Java-based tool with loads of options to edit PDF files.

Other testimony : jPDF Works great if you figure out the settings and play with the config string. I have a legal sized booklet coming from 8.5" high and 7" wide pages in Scribus, and I found the best settings as follows:

- Input tab : use filename + check Multiple File Input + Select Pages/specify pages 3 to x-2 - Page Size Tab : check Rotate Pages + select "Right" for both Portrait and Landscape + check Scale Pages + select Legal Landscape, 1008 width, 612 height - Shuffle/N-up Tab : select Shuffle Pages + Preset: Booklet Landscape + Config String: -4:!-4L0.82-12.5%-100.0%,+1L0.82-12.5%-200.0%,!+2L0.82-12.5%-100.0%,-3L0.82-12.5%-200.0% right side: Legal Landscape

This is a script using psbook, called thus : "script1a foobook" where the input file is named foobook.ps. The following script is for Linuw. For windows, replace all occurence of '$1' with '%1'.
 * PDFedit is a collection of Qt3 scripts assembled under a GUI. It permits editing PDF files down to the level of text editing, font changes and more.
 * pdfbook rearranges pages of a PDF file for booklet printing.
 * PSUtils is a collection of utilities for manipulating PostScript documents. Programs included are psnup, for placing out several logical pages on a single sheet of paper, psselect, for selecting pages from a document, pstops, for general imposition, psbook, for signature generation for booklet printing, and psresize, for adjusting page sizes. PSUtils is available for windows and Linux.

psbook $1.ps $1b.ps echo 'psnup' psnup -2 -ptabloid -Pletter $1b.ps $1p.ps echo 'psselect' psselect -o  $1p.ps $1o.ps psselect -e -r  $1p.ps $1e.ps

The result will be two files named "foobooke.ps" and "foobooko.ps, set up for running the paper twice through a Ricoh laser printer (For another printer I might need to eliminate the "-r" parameter)

lpr $1o.ps echo 'switch paper' read x lpr $1e.ps and finally for cleanup rm $1p.ps $1e.ps $1o.ps $1b.ps

Comment on these tools (20/06/2010) :

 * Multivalent req'es outdated Java 1.4 to be installed. Trying to run with a current JRE is running into "java.lang.ClassNotFoundException: tool.pdf.Impose" error.
 * PoDoFo (on-line) appears to be unaccessible
 * PDFSaM is a well-done collection of PDF-tools, but lacks imposition features (in particular like n-up printing)
 * jPDF Tweak is a bit tricky to use, but appears to be most functional (and, by now, stable). Did not find a settings export or batch function though.

=Linux, Unix and "Darwin"=


 * pstops (see How to make impositions with pstops)
 * pdf-shuffler (introduction by bigbrovar) Not really an imposition program, but permits easy reshuffling and adding/deleting of pages.

=OS X=


 * PDFmergeX (donationware): not really an imposition tool... but it may have enough features for you
 * CombinePDFs (donationware)
 * CocoaBooklet (donationware)
 * PDFLab lets you split and join PDF documents as well as insert images and blank pages (donationware)

=Windows=