Printing: An Overview


The most important thing to understand about printing in Linux is that it is largely a conversion process. Whenever you issue a print command in an application, you are actually creating a PostScript (.ps) file that is sent to the printer. The problem is that most printers, except for relatively high-end laser printers, do not have the power to process PostScript commands directly.

To solve this problem, Peter Deutsch of Aladdin Enterprises wrote a program called Ghostscript and released it under an open source license, the Aladdin Free Public License (AFPL). Subsequently, another version was released under the GNU General Public License. The primary difference between the two licenses is that the AFPL does not allow for commercial distribution. Both versions (and a commercial version produced by Artifex) are still being produced, with AFPL Ghostscript at v8.11 and GPL Ghostscript at v7.05. CUPS incorporates a specially patched version of GPL Ghostscript, called ESP Ghostscript, that SUSE Linux uses in its distribution.

Ghostscript lets you view raw PostScript and Portable Document Format (PDF) files. With the right drivers, it can also convert them into files that non-PostScript printers can process.

This following steps describe what happens when you press Print:

1.

The data you want to print is stored in the print queue.

2.

The print spooler retrieves the data and sends it on to the print filter.

3.

The filter then determines whether the data is already in PostScript; if not, it converts it to PostScript.

4.

The PostScript data is then sent on directly to a PostScript printer (if that's available), or the filter runs Ghostscript.

5.

Ghostscript, in turn, uses its driver to convert the PostScript into another standard printer language. That data is then sent to the printer.

6.

When all the converted data is in the printer, the spooler deletes it from the print queue.



SUSE Linux 10 Unleashed
SUSE Linux 10.0 Unleashed
ISBN: 0672327260
EAN: 2147483647
Year: 2003
Pages: 332

flylib.com © 2008-2017.
If you may any questions please contact us: flylib@qtcs.net