3.2 UniTool and Sample Minidrivers

The Microsoft Windows Universal Printer Driver eases the effort to create and maintain printer drivers for raster printers for the Windows environment. The underlying principle of the Universal Printer Driver is to separate the printer-specific information from the Windows-specific information. Each printer will have a separate file that contains information on the capabilities of the printer. All executable driver code will reside in a separate common code library known as the Windows Universal Printer Driver.

Supporting a printer using the Universal Printer Driver Architecture requires the creation of a “minidriver.” The minidriver is a binary file that is created using the Windows-based printer-driver development tool UniTool. The minidriver file contains all of the printer-specific information for the printer. This information is all printer hardware oriented. It includes information such as supported paper sizes, font cartridges available, imageable page area, cursor-movement commands, and so on. It contains no Windows-specific information. The minidriver can optionally contain code to handle special features or problems with a specific printer.

The Universal Printer Driver for Windows 3.1 (UNIDRV.DLL) contains all of
the traditional code for translating output from the Windows Graphics Device
Interface (GDI) imaging model to the printer's specific text and graphics functions. The Universal Printer Driver relies on the information within the printer's minidriver to determine the basic technology of the printer and what its specific capabilities are.

For more information about creating minidrivers, see the Microsoft Windows Minidriver Development Guide.