Driverless Printing by file transfer is one of the gateways to authenticated printing from devices belonging to unauthenticated anonymous users, where either native or IPP Everywhere printing support is lacking or where user trust cannot be enforced by a Single Sign-On User Domain. This situation is typical for a BYOD[32] context.
Web Print and Mail Print offer casual printing without a hassle, since users are familiar with either file uploading or email and no printer driver needs to be installed. Since rendering of the document content is not handled by a know-it-all printer driver, not all document types are supported. See Appendix G, Printable File Types for a list of supported types. Driverless File Transfer Print is also implemented in the SavaPage Android Print App and RESTful Print API.
Mail Print uses 127.0.0.1
(localhost) as the IP
address of the requesting user.
PDF files received from Driverless File Transfer Print are validated, repaired and processed before admitted as SafePages. These are the processing steps:
Uploaded PDF document is read to check validity.
If the PDF is assessed as invalid by the PDF library used by SavaPage, a repair is executed with pdftocairo. If repair fails, the document is rejected.
Although shown correctly as SafePages, PDF files might not have a completely valid PDF format. When these invalid PDFs are proxy printed, CUPS filtering may deliver Page Description Language (PDL) that incorrectly describes the PDF content. As a result, printed output will not be as expected. Text can be omitted, and in some cases we observed only a single blank page was printed. To prevent this situation, SavaPage tries to repair these files, which is a modest action with minor performance impact. Disclaimer: repair is a best-effort attempt and is no guarantee for success.
If PDF is encrypted, it is decrypted. QPDF is used for this step.
PDF font syntax is verified. If font errors are encountered, a repair is executed with pdftocairo, when not already executed in a previous step. When font errors persist, the PDF document is rejected.
Non-embedded/non-standard PDF fonts are embedded with best-fit fonts available on the host system.
This is because font embedding performed by CUPS/Ghostscript might result in missing text as explained in Step 1.
PDF is cleaned by executing pdftocairo command (when not already executed in a previous step) and optionally a “Ghostscript prepress” command.
This is because the pdf2ps filter as executed by CUPS/Ghostscript might result in missing text and annotations as explained in Step 1.
You can enable/disable each step with the following configuration properties:
Configuration property | Description |
---|---|
print-in.pdf.invalid.repair |
Set to |
print-in.pdf.encrypted.allow |
Set to Important: this property also applies when Section 14.10.2, “Printing Encrypted PDF” with a printer driver. Also see Section 4.11.13.9, “SafePages”. |
print-in.pdf.fonts.verify |
Set to |
print-in.pdf.fonts.verify.reject |
Set to |
print-in.pdf.fonts.embed |
Set to |
print-in.pdf.clean |
Set to This is a replacement for the deprecated "proxy-print.repair.enable" property. See Section 4.11.8, “Proxy Print”. |
print-in.pdf.prepress |
Set to |
Table 14.9. Driverless PDF Transfer Processing Configuration Properties
See Section 4.11.14, “Config Editor” on how to set this property.
The pdftocairo
and gs
command embeds all fonts, even standard PDF
fonts.
Driverless PDF Transfer statistics are shown on the Admin Web App Dashboard. The final result of a Driverless PDF Transfer Print on the display of fonts is shown in the SafePages Document Details popup dialog.
[32] Bring Your Own Device (BYOD) is the policy of permitting employees to bring personally owned mobile devices (laptops, tablets, and smart phones) to their workplace, and use those devices to access privileged company information and applications. The term is also used to describe the same practice applied to students using personally owned devices in an educational setting.