How to make a booklet

From Scribus Wiki
Jump to navigation Jump to search
This article is part of the HOWTOs series.
Installation Usage PDF issues Imposition Other

HOWTO print a A5 booklet

Ok, strictly speaking this is only tangentially related to Scribus, but I think it's very useful to know.

If you have a bunch of stuff laid out in A4 (or letter if you're a foreigner) you can easily turn it into an A5 booklet / pamphlet. In my opinion this makes for a more readable, tree-friendlier, smarter-looking end-product.

The workhorse of the method I will describe is the psutils suite of commandline utilities, but don't let that put you off, you don't ever have to even see them. This is because kprinter provides us with a nice frontend which means we can do everything via nice and easy pointing and clicking.

To use this method you'll need KDE (specifically kprinter) and psutils installed. Oh, and Scribus. Ok, actually that last one's optional but I thought it would be polite to mention it under the circumstances.

So, find or make a document on A4 (or letter) pages, er, using Scribus. In the printer dialogue select 'Alternative printer command' and type 'kprinter' in the box. Click Print.

You should now be at the kprinter dialogue. Select the printer you want to print to (which can be a pdf file or whatever) and click on 'Properties'. Click on the tab labeled 'Filters' (you'll might have to scroll to the right to see it). Click on the funnel (Add filter) icon.

If like me you've only got a bog-standard non-duplex printer, you'll have to do this the slightly longer way. If you've got a better printer than me I'm too envious to help you, sorry.

Select 'Pamphlet Printing - Even pages' and click 'OK' until you're back at the main kprinter dialogue. Click 'Print'. Wait for the pages to come out of your printer. Put them back in your printer - on my printer they go in the tray printed side up, with the top of the text to the left. It might be the same with your printer, if not you'll have to experiment.

Print the document again using the same process but selecting 'Pamphlet Printing - Odd Pages'.

If it's all worked properly, the pages are all in the right place, the right way up etc, you can fold the pamphlet, stick a staple through it and you're done. A good long-arm stapler is good, but you can get away with a smaller one at a pinch. Hint: the end of the stapler needs to go further over the fold than you think, or that's what I find anyway.

If you want a slightly smarter looking product you could print the outer sheet on coloured paper. Ok, it's not quite the Gutenberg bible, but it's something you could charge money for more easily than a wodge of A4 you've printed out and stuck a staple through the corner of.

This is great for printing out lengthy texts from the internet, manuals etc. Viva Samizdat!


HOWTO print a booklet of other sizes

To print a booklet with pagesizes other than A5 you have two possibilities:

A) You use Scribus to create a pdf and you do the necessary changes on the command line (with psutils).

B) KDE users can create a filter. The booklet can than simply be printed from within Scribus.

to A) 1) Change the document format to postscript:

pdf2ps file.pdf

This creates a postscript file named 'file.ps'

2) Change the order of the pages:

psbook -s16 file.ps fileA.ps

Where 16 is the number of pages that your documant has. It should be a multiple of four.

3) Arrange the pages so two logical pages are printed on one physical sheet:

psnup -2 -w10.5cm -h16.3cm -W21cm -H16.3cm fileA.ps fileB.ps

Which arranges two logical pages of the size 105x163mm on a sheet of the size 210x163mm. If you have different page sizes, then simply change the mesures. (Watch the man page of psnup)

4) Transform it back to pdf:

ps2pdf fileB.ps

This creates the file 'fileB.pdf'.

5) Print 'fileB.pdf' with the program of your choice.


to B) Find the KDE-directory on your system login as user 'root' and go to $KDE-DIR/share/apps/kdeprint/filters/

On my system it is /opt/kde3/share/apps/kdeprint/filters/

In this folder you have to create two files 'mypsbook.desktop' and 'mypsbook.xml'.

1) myfilter.desktop:

[KDE Print Filter Entry]
Name=mypsbook
Name[de]=MyPS-Book
Name[fr]=MonPS-Book
Require=exec:/psbook,exec:/psnup
Comment=Pamphlet Printing for 105x163mm documents
Comment[de]=Booklet-Druck für 105x163mm Dokumente
Comment[fr]=Impression au format livret mesures:105x163mm
MimeTypeIn=application/postscript
MimeTypeOut=application/postscript


You have to adapt the translation in your KDE-language. Have a look to the other filter-files as an example.

2) mypsbook.xml

<?xml version="1.0"?>
<kprintfilter name="mypsbook">
   <filtercommand data="psbook %filterinput | psnup -2 -w21cm -h16.3cm -W10.5cm -H16.3cm %filterargs %filteroutput" />
   <filterargs>
   </filterargs>
   <filterinput>
       <filterarg name="file" format="%in" />
       <filterarg name="pipe" format="" />
   </filterinput>
   <filteroutput>
       <filterarg name="file" format="> %out" />
       <filterarg name="pipe" format="" />
   </filteroutput>
</kprintfilter> 


From '<filtercommand data=' to '%filteroutput" />' everything in one line. Don't forget to change the page-sizes in this line to what you need.

Restart KDE. Now you can print your document from within scribus to kprinter. In the kprinter-dialog you go on 'Properties' change to the 'Filter'-tab click on the button to add a filter. Now choose your new filter and print.

Have fun!!!