Printer driver
|
In computers, a printer driver is a piece of software that converts the data to be printed to the form specific to a printer.
The purpose of printer drivers is to allow applications to do printing without being aware of the technical details of each printer model.
On UNIX systems, printer drivers are typically implemented as filters (see also printcap).
On MS-DOS, there have been no system-wide printer drivers; each application was shipped with its own printer drivers, which were essentially descriptions of printer commands. Printers, too, have been supplied with drivers for the most popular applications. In additions, applications included tools for editing printer description, in case there was no ready driver.
On Microsoft Windows and Macintosh systems, printer drivers make a part of GDI. Programs then use the same standard APIs to draw text and pictures both on screen and on paper. Printers which use GDI natively are commonly referred to as Winprinters and considered problematic for other operating systems.
Win32 APIs also allow applications to send data directly to spooler, bypassing the printer driver; however, no application seem to use this option.
Printer drivers should not be confused with print spoolers, that queue print jobs and send them to printer one after the other.
On UNIX systems, printer drivers are usually named front end and printer spoolers back end of the printing system.
Backends are also used to determinate the available devices. On startup each backend is asked for a list of devices it supports, and any information that is available. This allows the parallel backend to the spooler that an EPSON Stylus Color 600 printer is attached to parallel port 1, for example.