Use `mpage' to Manipulate Printing of Postscript Files

mpage on Linux has the power to let you manipulate your PS file printing. For more detail,
see mpage man page. Here, some examples are given to show its usage (on our LexMark
Postscript printers):


If you have a big PS documentation file and you want to print it in much compact way, you
can put two pages on one sheet:

    mpage -2 -P mypsfile.ps
If you don't want boundary line surrounding each page:
    mpage -2o -P mypsfile.ps
-P means the default printer spool (lp in most situation, and tuna in CMRP working group)
is used. So, -Plp0 (or -Ptrout in CMRP group) etc. can also be used. You also can use page
option like -4 or -8 etc. to put more pages on one sheet.

If you hope to further reduce the paper consuming, you can put two pages on each side of
a sheet (double-side printing) by the following steps:

Step 1 - printing odd number of the sheets:

    mpage -2ovr -P -j 1%2 mypsfile.ps
-r generates a reverse printing, so there's no need for post paper arrangement job.

Step 2 - remove the last sheet if the reporting total printing sheet from step 1 (-v option)
is an odd number, and replace all remaining sheets back to tray blank side down (rotate
180 degree if you want to turn pages horizontally while reading, or don't rotate if you want
to turn pages vertically)

Step 3 - printing even number of the sheets:

    mpage -2or -P -j 2%2 mypsfile.ps
You got a nice tight copy for your document with 4 pages a sheet.

In many cases the PS document leaves quite wide margin space surrounding text. This is
not an issue when you have normal printing of one page on one sheet. But when you print
compact copy, you hope to exploit these margin space to make the text area more readable.
You can expand the text area using -M option with negative margin value:

    mpage -2ovr -M-40 -P -j 1%2 mypsfile.ps
    mpage -2or -M-40 -P -j 2%2 mypsfile.ps
You can also add -S option to have uneven expansion (more in vertical), but this has some
distortion effect on text.