PostScript N,up printing on Win 95/98

The only really good free PS N-up utility I've heard about is the Angus Duggan's PSUtils ( but – unfortunately – it were written for UNIX. There is a downloadable precompiled version for WIN32, but it works fine only on NT4; on win9x the positioning on the resulting (virtual) page is OK, but the source pages will remain on separated pages. (E.g. source: 2 pages of A5 portrait, magnify 100%, rotation 0 degrees; destination: page A4 landscape; result: 2 (!) pages A4 landscape, first with destination page#1 left side, blank page on right side, second with blank page on left side, destination page#2 on right side. I don't now if PS drivers or the operation systems' differences cause this problem.
My questions:
1. Why PSUtils works fine just on NT?
2. How can I fix it to work on win98?
3. If questions 1-2 have no solutions, I'm searching for another FREE n-up utility program (I have no possibility to pay for any software from my country).
1. Notice that I use ’soft postscript printing’ by HP LaserJet 6P PCL printer and Aladdin Ghostscript 5.50 via RedMon (
 2. Win98 postscript printer driver allows n-up printing, but:
a. I want original size of the source page to be preserved but pages will be shrink automatically to fit on destination page. It's a very difficult job to set the magnification for shrinking to be compensated (conflict on nonprintable area, etc.).
b. I have no control for page positioning, rotating, etc.
c. Win98 PS driver puts automatically a border around the pages. Adobe PS has an option for remove it, but I prefer Win98 PS driver; I've got serious problems for printing complex pages on original(!) Adobe 4.x PS driver.
d. The most serious problem: there are noticeable differences of quality by normal and n-up printing on same font sizes. Small size fonts look very bad on n-up, even the PS driver is set to download fonts as bitmaps.
Who is Participating?
SaGSConnect With a Mentor Commented:
Since my last post, I downloaded PSUtils, compiled it to a DOS executable, and finally found the fix which is shown below.

"LH" is a procedure defined and redefined by the driver in the prolog section, needed especially for the driver's own n-up.

My n-up solution is not a free offer on this forum.

SaGS (din acceasi parte a lumii, sau ma insel?)

zoltan082098Author Commented:
Adjusted points to 250
You must have a postscript printer to properly use N-up. Set your printer default protocol to postscript.
Stick with the Adobe ps driver. (Adobe makes postscript; I've found their driver to be the most reliable)

Your printer must have enough memory to properly use some PS options.- 32 mb minimum. The printer can default to a lower resolution in order to print the document if it is full of complex PS info, especially when using N-up.

I always prefer to change the N-up from the application, not the driver.
Upgrade your Question Security!

Your question, your audience. Choose who sees your identity—and your question—with question security.

zoltan082098Author Commented:
moron69: Sorry! Please read careful again my questions!
1. I don’t have a PS printer and I’m not intended to purchase one. Ghostscript-RedMon combination does work excellent.
2. I’ve got problems with AdobePS driver while Win98 PS has been OK printing the same document (and NOT vice versa).
3. Ghostscript works on 128M RAM/over 2GB virtual memory of my computer, so I’m sure that compromitted quality weren’t caused by insufficient memory.
4. I need sophisticated n-up to correct wrong page position, centering, etc.
5. Try to set n-up from applications like Word97.

"Small size fonts look very bad on n-up, even the PS driver is set to download fonts as bitmaps."

Fonts look bad exactly because they are sent as bitmaps. When doing n-up printing, the driver does not recalculate font size; instead, it modifies the transformation matrix, then does everything else as for normal printing - including the generation of the bitmaps, which are then scaled by the printer.

In the printer propeties/ "Fonts" tab/ "Send font as" button, be sure TTF fonts are set to be downloaded as "Type 42" or "Type 1", PostScript fonts as "Native" and the "Threshold ..." set to 0 (or 1 if 0 is not accepted). This way you get the max font quality.
zoltan082098Author Commented:
Thanks a lot for Your help!
It seems yo’ve solved my problem FOR THIS MOMENT.
But I have twohundredfifty points for you if you’ll help me to fix PSUtils or find another sophisticated n-up utility. I need a lot advanced features like page positioning, etc.
Thanks again!

zoltan082098Author Commented:
Hi Guys (and Ladies),
I've made obtaining 250 points much easier for you.
So, I’ve tried PSUtils on PS files from WIN3.1 drivers... It works EXCELLENT! I’m sure there is a problem about WIN95 PS driver (maybe incorrect generation of ADSC files?).
I’ve succeed in installing Win3.1 postscript driver on win95! But problem is still not solved because of unicode fonts' incorrect handling by 16-bit printer drivers.
You can help me in two ways:
1. Finding an alternative postscript driver (notice that AdobePS work as incorrect as Win95 PS driver) for me;
2. Finding about Win95 driver's bug and creating a small program to make Win95 PS files work wits PSUtils;
3. Trying to Fixing PSutils to work with Win95 driver.

Thanks & good luck!
Check the PostScript file generated by the Win95 driver. Near the end of the code for each page, there are the following lines:

(supplemental 'restores' may appear)
pagesave restore

Move the LH after all 'restores':

(if other 'restores' appear, their order must be preserved)
pagesave restore

Haven't tested with PSUtils; if it solves the problem, let me know, to post a dummy answer and get the points. (I found this problem while devlopping my own n-up solution. I prefered to integrate it within printer's features, and not to use external tools and manipulate those big files.)
zoltan082098Author Commented:
Dear SaGS,
Unfortunately, Your suggestion haven’t brought any changes for PSUtils; however I’ve expected a solution like yours. (I think I’ve proceeded correctly...)
If you would be so kind to share with me YOUR own n-up solution, I would be wery happy.

PS. What does LH mean?

Sorry, I selected the wrong button (I wanted the preceding post to be a comment). The answer is here:

For the MS PostScript driver, in the prolog section (sowere around line 86, but may vary) of the generated file is the following line:

, |/Lw/setlinewidth , |/S/show , |/LH/showpage , |/K/stroke , |/W/widthshow ,

In this line, replace "/LH/showpage , |" with "/LH {showpage} |". Then, psnup works ok.

zoltan082098Author Commented:
I've already thought that my question has no response...
So, following task will be for me to write a small utility (w/ graphical user interface?) to 'preprocess' the output PS file between driver output (RedMon) and gswin32c input. I'm asking for your permission (if necessary) to publish it on web. (It will be written in Delphi; I hate C++...)
thanks again!

Zoltán (; De unde ai stiut?)
Question has a verified solution.

Are you are experiencing a similar issue? Get a personalized answer when you ask a related question.

Have a better answer? Share it in a comment.

All Courses

From novice to tech pro — start learning today.