V4 Printer Driver Configuration Architecture
The v4 printer driver model supports a greatly simplified configuration layer.
Unlike the case with v3 printer drivers, where the UI was strongly coupled with driver configuration, v4 printer drivers focus on providing PrintTicket, PrintCapabilities, and constraint functionality. A common configuration module, PrintConfig.dll, encapsulates the functionality that was previously available in the UnidrvUI and PS5UI core drivers.
Configuration File Formats
The Generic Printer Description (GPD) and PostScript Printer Description (PPD) file formats are unchanged with v4 printer drivers. Existing GPD and PPD files are compatible, however, all v4 printer drivers must additionally specify the following directives in their GPD or PPD file. These directives prevent the expression of features that are not natively supported by XPSDrv, such as N-up.
|File type||Required directive||Required value|
Note PPD-based drivers must not specify the *Include: msxpsinc.ppd directive as this is known to cause compatibility issues with some applications.
Mapping to the PrintSchema
Mapping features and options into the PrintSchema’s namespace is necessary in many cases. The mapping causes the PrintCapabilities documents generated by your driver to be more compatible with standard print UI and applications.
Some features and options are considered to be standard, and are automatically mapped into the PrintSchema’s namespace. These features and options are specified on MSDN and should not be remapped using *PrintSchemaKeywordMap. If not otherwise listed, drivers must use the *PrintSchemaKeywordMap directive on GPD-based drivers, or the *MSPrintSchemaKeywordMap directive on PPD-based drivers.