CUPS is a standards-based printing system for Mac OS X and other Unix-like operating systems. It provides the System V and Berkeley command line interfaces, and uses the Internet Printing Protocol ("IPP") as the basis for managing print jobs and queues. The Line Printer Daemon (LPD) Server Message Block (SMB), and AppSocket (a.k.a. JetDirect) protocols are also supported with reduced functionality. CUPS adds network printer browsing and PostScript Printer Description ("PPD") based printing options to support real world printing.
GNUlpr version 1.0 is a complete printing system based on LPR, and provides support for printer-specific options, GUI tools, and autoconfiguration. The 1.1 tree is a completely re-thought printing system. Rather than creating an all-powerful spooling daemon, it constructs a pipeline of "filter" programs to perform tasks (spooling, data stream type conversion, authentication, network protocols, etc.).
The OMNI printer driver provides support for over 450 printers using the Ghostscript framework. In addition, it provides a model for dynamically loading printer drivers and creating new devices by editing device description files, and simplifies new printer driver development by allowing for the subclassing of previous device features.
AA-lib is a low level gfx library just as many other libraries are. The main difference is that AA-lib does not require graphics device. In fact, there is no graphical output possible. AA-lib replaces those old-fashioned output methods with a powerful ASCII art renderer. The API is designed to be similar to other graphics libraries.