Workshop at Linux-Kongress 2002 Cologne, Germany:



Dissecting The CUPS Filtering System:
A Network Postscript RIP For non-PS Printers





Contents

     1. Printing via Windows NT print servers
         1.1. Client-side driver operation
         1.2. Server-side driver operation
     2. Windows client printing via UNIX print servers
         2.1. Client-side drivers: raw print jobs
         2.2. Server-side "drivers": none
     3. CUPS and Windows clients
         3.1. Client-side drivers: raw print jobs, just like in the past...
         3.2. Server-side "drivers": via client PostScript print files
         3.3. CUPS -- a PostScript RIP valid for 1.000++ non-PostScript printers
         3.4. PPDs to propagate print job options
     4. The CUPS-internal filtering system: a PostScript RIP
         4.1. The pre-filters
         4.2. The pstops-filter
         4.3. The pstoraster-filter
         4.4. The imagetoraster-filter
         4.5. The imagetops-filter
         4.6. The printer-specific filters
         4.7. Foomatic and the cupsomatic-"filter"
         4.8. Overall picture: CUPS-filters with Foomatic, Gimp-Print & TurboPrint plugged-in
     5. How it is controlled
         5.1. /etc/cups/mime.types -- rules to determine MIME types
         5.2. /etc/cups/mime.convs -- assignment of filters according to MIME types
     6. Practical Applications
         6.1. Stabilizing Windows Terminal Servers
         6.2. Achieving centralized accounting
     7. cupsaddsmb -- the easy way to share a CUPS driver to Windows clients
     8. A few figures about needed resources
     9. Summary
     A. APPENDIX
         A.1. CUPS Web Interface
         A.2. CUPS Browsing
         A.3. CUPS Commandline Interface
         A.4. CUPS GUI (KDEPrint)

 

by Kurt Pfeifle,

Network Printing Consultant,
Danka Deutschland GmbH,

Author of CUPS-FAQ and KDEPrint Handbook


 

CUPS, the Common UNIX Printing System, is thought by many to become an epoch making printing application -- for the Linux and UNIX realms of computing. What is not yet clearly seen: it could also -- in tandem with Samba's new features of RPC-based printer driver downloads -- make a big impact on Windows clients network printing in the future.

This paper dissects the inner workings of the CUPS filtering system and envisages a few ideas about its deployment as a print server of a new kind: not just spooling Windows client print files as "raw" jobs, but also processing them through its internal PostScript RIP (Raster Image Process) -- thusly providing more stability and job accounting features to its environment.