In Windows NT, the printer driver retrieves configuration information from the server and provides WYSIWYG (What You See Is What You Get) support for workstation applications. Some WYSIWYG applications, such as Microsoft Word for Windows, request the printer driver at application startup.
This section details how Windows NT printer drivers work and what components they are made of; for more information on how printer drivers work in the Windows NT print model, see "Clients," later in this chapter.
Printer drivers are composed of three separate files:
These three files work as a unit. For example, when you create a new printer in Print Manager, the interface driver enables you to pick the default resolution. It displays the proper choices because it queries the characterization data file for this information. When you print, the graphics driver queries the interface driver to find what resolution you chose, so that it can create the right printer commands to generate the resolution you specified.
Note The graphics driver, the interface driver, and most characterization data files are not binary compatible across processors. If Windows NT clients are to download the correct driver from a Windows NT print server, you must install drivers on the print server for each processor type that your clients have. For instance, if you have x86-based clients running Windows NT, and you have an Alpha AXP-based print server, you must install x86 printer drivers on the print server.
Windows NT includes three printer drivers: the Universal printer driver, a PostScript printer driver, and an HPGL/2 plotter driver.
The Universal printer driver is an improved version of the Windows 3.1 driver and supports raster-graphics printing. It includes support for scalable TrueType fonts, device fonts, compression/run length encoding (RLE), and Tag Image File Format (TIFF) version 4.0. It also includes mechanisms that provide for smaller, more efficient bitmaps. These mechanisms include ignoring whitespace and supporting rules, which are printable rectangles extracted from the bitmap and sent to the printer as a separate command as supported by Hewlett-Packard LaserJet and compatible printers.
The Windows NT PostScript driver supports Adobe version 4.0-compatible PostScript Printer Description (.PPD) files. (Windows NT does not use the .WPD or .MPD files used by Windows 3.1.) This driver supports key features, including binary transfer compression, from Level II.
The Windows NT plotter driver supports a variety of plotters that use the HPGL/2 language. Note that there is a significant difference between HPGL and HPGL/2, and that the output from the Windows NT plotter driver assumes that plotting device understands all of the enhancements built into the HPGL/2 language.
Characterization data files provide model-specific information about print devices. When hardware vendors release new print devices, a characterization data file for the new device is all you need to use that device with Windows NT. If Windows NT does not supply such a file for your print device, check the device's users' guide for a list of emulations. If your device emulates a device for which Windows NT supplies a driver, then you may be able to use this driver to get output.
Note If you use an emulation and your device does not function exactly like the device it emulates, then you may get incorrect output. If this happens, try sending the same output to the device for which the driver was designed. If the problem still occurs, contact the third-party driver vendor. If the problem is solved, contact your hardware vendor for information on correcting their emulation problems.
Raster minidrivers are actually DLLs. The Windows NT Raster printer driver can read most Windows 3.1 minidriver DLLs (those created for UNIDRV.DLL) directly with no porting required. Raster minidrivers contain printer-specific information but do not contain executable code, except for a few rare instances (such as Toshiba and C. Itoh drivers).
The PostScript driver uses standard Adobe PostScript .PPD files as characterization data files. These files include printer-specific information for a particular printer model and are available from the printer's manufacturer. Unlike Windows 3.1, the Windows NT PostScript printer driver can directly interpret .PPD files. Because PostScript printers are included with .PPD files, when new PostScript printers become available, they will be ready for use with Windows NT.
Plotter .PCD files are similar in function to raster minidrivers. They are dynamic link libraries (DLLs), which provide device-specific information to the graphics driver. Unlike raster minidrivers, .PCD files are specific to Windows NT: Windows NT cannot use plotter drivers built for Windows 3.1.
As a general rule, the third-party PostScript hardware vendors are responsible for creating new .PPD files. Included with this resource kit is a PRINTER.INF file you can modify to install newly released .PPD files.