12.6. PostScript Print Processing

The PostScript that arrives at SavaPage by driver or driverless print is the first to be converted to PDF by the ps2pdf program from the Ghostscript suite.

Note

ps2pdf is a work-alike for nearly all the functionality (but not the user interface) of Adobe's AcrobatDistiller™ product: it converts PostScript files to Portable Document Format (PDF) files, and is implemented as a command script that invokes Ghostscript.

Tip

The final result of PostScript Print Processing on the display of fonts is shown in the SafePages Document Details popup dialog.

12.6.1. Licensed Fonts

Using a font requires a license, just like a software program. There are fonts that require a special (paid) license for embedding them into documents so these documents can be used outside the scope of the licensed computer or licensed document viewer.

Be careful when you print a document containing license restricted fonts to SavaPage, since font rendering might not be as expected. It all depends on how the print toolchain renders non-embeddable fonts to PostScript at the client side. Some toolchains will convert these fonts to bitmaps. Others, will embed them unconditionally, which is fine for local printing, but not for SavaPage because the ps2pdf converter might give a Warning message saying the font cannot be embedded because of licensing restrictions. As a result font substitution might be flawed and SafePages preview will show garbled text. In those cases rendering PostScript pages to images is a solution. See Section 12.6.3, “PostScript Configuration Properties”.

Important

Windows computers are more prone to font licensing issues than GNU/Linux workstations where Open Source Fonts are the norm. When printing from Windows use Open Source Fonts wherever possible. Many of these fonts come with the increasingly popular Open Font License (OFL) from SIL International, a nonprofit organization committed to serving language communities worldwide. The OFL is a free, libre and open source license specifically designed for fonts and related software based on our experience in font design and linguistic software engineering.

12.6.2. Printing Encrypted PDF

When you print an encrypted PDF document from Adobe Reader to a PostScript printer like SavaPage, it creates a PostScript file that contains a notice telling the recipient that it is not permitted to convert (re-distill) it to PDF again. The Ghostscript ps2pdf program respects this notice, and throws an error saying This PostScript file was created from an encrypted PDF file. Re-distilling encrypted PDF is not permitted. If, for example, an encrypted PDF allows printing only, it should not be re-distilled to a plain PDF equivalent, where all intended protection is removed.

SavaPage respects this policy. Moreover, on behalf of its users SavaPage would like its own encrypted PDF documents to be respected in the same way.

However, when an encrypted document is allowed to be printed, SavaPage would like to be able to receive it as printer, so it can be previewed and Proxy Printed. But, for that to happen we need to convert it to SafePages, i.e. to PDF format. That's where we are facing the ps2pdf barrier.

To solve this issue SavaPage has an optional workaround that ignores the PostScript notice at the point where we need the ps2pdf program to create the PDF, so SafePages can be displayed and Proxy Printed as intended.

The workaround is activated when Allow Encrypted PDF for Proxy Printing is enabled.

12.6.3. PostScript Configuration Properties

Configuration propertyDescription

Driver Print

print-in.ps.driver.images.trigger

Trigger to render driver printed PostScript pages to images: AUTO = trigger when ps2pdf produces stderr messages (default), OFF = never trigger, ON = always trigger.

print-in.ps.driver.images.dpi

DPI for triggered images of PostScript driver print. Default 300.

print-in.ps.driver.detain

Temporarily detain driver printed PostScript file. OFF = never detain (default), ON = always detain, AUTO = detain when ps2pdf produces stderr messages.

Driverless Print

print-in.ps.driverless.images.trigger

Trigger to render driverless printed PostScript pages to images: AUTO = trigger when ps2pdf produces stderr messages (default), OFF = never trigger, ON = always trigger.

print-in.ps.driverless.images.dpi

DPI for triggered images of PostScript driverless print. Default 300.

Table 12.2. PostScript Print Configuration Properties