Welcome to Pdfimpose’s documentation!

pdfimpose is a library and a command line program to impose a PDF document. According to Wikipedia, “imposition consists in the arrangement of the printed product’s pages on the printer’s sheet, in order to obtain faster printing, simplify binding and reduce paper waste”.


  • I am not a printing expert (I am not even sure I deserve to be called a printing hobbyist).

  • English is not my first language.

  • The few things I inaccurately know about printing, I know them in my first language.

Those are three reasons why this documentation might be sometimes unclear. If you have time to spare, I would really appreciate some proofreading.


  • When pdfimpose has to guess the size of the output paper, it uses the A4 format. This is an (arbitrary) implementation detail, and might change in future releases.

  • When printing an imposed PDF, it shall be printed two-sided, the binding edge on the left or right.



See also

I am far from being the first person to implement such an algorithm. I am fond of everything about pre-computer-era printing (roughly, from Gutemberg to the Linotype). Being also a geek, I wondered how to compute how the pages would be arranged on the printer’s sheet, and here is the result.

Some (free) other implementation of imposition are:

What might make this software better than other is:

  • it can perform on arbitrary paper size;

  • it can perform several different imposition schemas, without any assumption on folds number.

Download and install

See the main project page for instructions, and changelog.

Indices and tables