Using Unitool, a developer who understands the hardware and command set for a printer can develop a minidriver by initializing its component data structures using the minidriver's Printer Data window. The minidriver's data structures are identified as follows:
| Structure | Description |
| COMPRESSMODE | Contains data compression mode commands. |
| CURSORMOVE | Indicates the limitations of the printer cursor-movement commands and contains command strings that move the printer's cursor. |
| DEVCOLOR | Describes the way in which a device handles color for both graphics and text. The DEVCOLOR structure can support devices that process color data by plane or by pixel. |
| DOWNLOADINFO | Contains command strings that download fonts. |
| FONTCART | Contains font cartridge commands and command strings that select the specified cartridge and identify the fonts on that cartridge. |
| FONTSIMULATION | Contains command strings that enable and disable bold, italic, underline, and strikethrough font simulations. |
| MODELDATA | Indicates the characteristics of a printer model (s). |
| PAGECONTROL | Contains command strings that initialize the printer, select the paper orientation, and so on. |
| PAPERDEST | Specifies the paper output bin that collects the pages and contains command strings that select the specified bin. |
| PAPERSIZE | Specifies the size dimensions of the printer paper and contains command strings that configure the printer for the specified paper size. |
| PAPERSOURCE | Contains command strings that identify the paper bin or feeding mechanism. |
| RECTFILL | Indicates the printer's rectangle fill capabilities and contains command strings that fill rectangular regions. |
| RESOLUTION | Indicates the horizontal and vertical raster graphics resolution that the printer supports and contains command strings that select the specified resolution. |