A program to create a bindable book from a PDF file

NEW RELEASE 14th April, 2010.

Bookbinder 3.0 is finally here.

Download Bookbinder version3.0

New features

  • User defined book size
  • User defined signature size
  • Measurements in millimetres, points and inches.
  • Old bugs fixed, mostly.


  • I have removed the PDF viewer panels from the GUI. It never worked correctly and would occasionally give a misleading impression of Bookbinders output. I figured that if you are messing around with PDFs you will have a viewer to check the output, so you don't need mine.

NEW. Documentation on using Bookbinder now on this page.

This software is still under development, so feedback is much appreciated, especially if the program doesn't perform as it should.

Contact me if it doesn't.

Version 2.0 still available

Bookbinder version 2.0 zip

What is it?

Bookbinder is a program that will convert a PDF document into signatures suitable for traditional bookbinding.

While there are a lot of programs on the net that will create a single booklet from a small document, I couldn't find one that would turn a 500 page novel or textbook into several signatures. So I had to write one.

The chosen PDF is split into chunks, the page order of each chunk is rearranged, then the pages are placed two to a page in a new PDF. After printing and folding, each bundle of sheets should be a correctly ordered signature, ready for binding.

Something like this...

The program does steps 1 and 2. You have to do the rest to create a finished book.

How do I get it?

Download the program here. It is a Java jar file, which requires Java to be installed and working on your machine. Bookbinder should run anywhere Java runs.

The source code is included,for those who are interested.

The program is released under the same license as itext, a mixture of Mozilla Public License and GNU Library General Public License.

How do I use it?

Check out the new Documentation page.

Ensure that you have Java installed.

Download and unzip Bookbinder.

Click or double click on bookbinder-3.0.jar to start in Windows or Mac.

Under Linux, open a terminal, cd into the directory and type

java -jar bookbinder3.0.jar

Load a PDF into the input viewer using the 'File' menu, 'Open input PDF'

Choose your printer type and paper size.

Choose the size of book you want. Currently there are three choices, two standard paperback sizes and as big as the paper allows.

Hit the 'Generate Document' button. The output viewer should display the first of the output files.

There will be a new folder called 'the-name-of-your-PDF-files' in the folder or directory where the program resides. Inside are the new PDF's, ready for printing.

Printing issues

If you have a duplex printer, each signature will print in one go. If, like most people, you have a plain old one-side-at-time printer, each signature consists of two PDFs and you will have to print one, then turn the sheets over by hand to print the other. This can be a fraught operation, so make sure the pages are the correct way round and don't get jammed on the second trip through.

What if I don't have a PDF?

Maybe you have a non-PDF document you want to bind, say a Gutenberg Project plain text file or a Rich Text Format document. In this case, the easiest option is to load it into a word processor, such as OpenOffice, format it and use the 'Export as PDF' option to create a PDF. OpenOffice can also import MSWord documents.

Other file formats can be converted to PDF with a greater or lesser degree of difficulty, using free and commercial conversion utilities. Search the web for PDF conversion utilities.


What's it made of?

Bookbinder is written in Jython, a version of Python that integrates pretty seamlessly with Java. The PDF grunt work is provided by Bruno Lowagie's marvellous itext, a PDF generating library, which is versatile and well thought of. The viewers are built using the JPedal library. The GUI is built using Swing, a standard Java GUI API, which seems to work well with Jython.