UniDrv (Universal Printer Driver or Unidriver) is a
GDI
GDI may refer to:
Science and technology
* Gasoline direct injection, a type of fuel injection
* Graphics Device Interface, a component of Microsoft Windows
* Guanosine nucleotide dissociation inhibitor, a protein
Organisations
* Gabriel Dumont I ...
-based
Microsoft Windows
Windows is a Product lining, product line of Proprietary software, proprietary graphical user interface, graphical operating systems developed and marketed by Microsoft. It is grouped into families and subfamilies that cater to particular sec ...
universal
printer
Printer may refer to:
Technology
* Printer (publishing), a person
* Printer (computing), a hardware device
* Optical printer for motion picture films
People
* Nariman Printer (fl. c. 1940), Indian journalist and activist
* James Printer (1640 ...
driver and architecture for non-
PostScript
PostScript (PS) is a page description language and dynamically typed, stack-based programming language. It is most commonly used in the electronic publishing and desktop publishing realm, but as a Turing complete programming language, it c ...
printers. It is used to simplify driver development of non-PostScript printers (also called
Winprinters) for printer manufacturers. ''Unidrv'' allows the creation of a printer-specific minidriver in the form of a GPD (Generic Printer Description) file, similar to a
PPD file, which is much simpler than
kernel mode
In computer science, hierarchical protection domains, often called protection rings, are mechanisms to protect data and functionality from faults (by improving fault tolerance) and malicious behavior (by providing computer security).
Computer ...
driver development. Unidrv was introduced in
Windows 2000
Windows 2000 is a major release of the Windows NT operating system developed by Microsoft, targeting the server and business markets. It is the direct successor to Windows NT 4.0, and was Software release life cycle#Release to manufacturing (RT ...
and replaced the Raster Device Driver (RASDD) interface used in
Windows NT 4.0
Windows NT 4.0 is a major release of the Windows NT operating system developed by Microsoft, targeting the data server and personal workstation markets. It is the direct successor to Windows NT 3.51, and was released to manufacturing on July 3 ...
and earlier versions.
Overview
The concept behind Unidrv is that a complete printer driver need not be written by the hardware manufacturer; only a device-specific minidriver is required that uses the core printing functionality of the Unidrv engine. A minidriver can be a customization file, or a plug-in, that allows special rendering functions or customized UI options. Unidrv supports non-
PostScript
PostScript (PS) is a page description language and dynamically typed, stack-based programming language. It is most commonly used in the electronic publishing and desktop publishing realm, but as a Turing complete programming language, it c ...
printers driven by
PCL and PCL-like
page description language
In digital printing, a page description language (PDL) is a computer language that describes the appearance of a printed page in a higher level than an actual output bitmap (or generally raster graphics). An overlapping term is printer control ...
s.
Driver file details
The Unidriver is implemented as a set of
DLL and GPD files along with other printer-specific support files:
* ''UniDrv.dll'' is the printer graphics driver file for printer languages based on
raster graphics
upright=1, The Smiley, smiley face in the top left corner is a raster image. When enlarged, individual pixels appear as squares. Enlarging further, each pixel can be analyzed, with their colors constructed through combination of the values for ...
, including most
inkjet
Inkjet printing is a type of printer (computing), computer printing that recreates a digital image by propelling droplets of ink onto paper or plastic substrates. Inkjet printers were the most commonly used type of printer in 2008, and range f ...
and
dot matrix
A dot matrix is a 2-dimensional patterned Array data structure, array, used to represent characters, symbols and images. Most types of modern technology use dot matrices for display of information, including mobile phones, televisions, and pri ...
printer language
In digital printing, a page description language (PDL) is a computer language that describes the appearance of a printed page in a higher level than an actual output bitmap (or generally raster graphics). An overlapping term is printer control lan ...
s.
* ''UniDrvUI.dll'' is the configuration file. It displays the user interface for ''UniDrv.dll''.
* ''UniRes.dll'', ''StdNames.gpd'', ''TtfSub.gpd'' and some other support files.
* ''Raster minidriver'', which has the file name extension {{mono, .GPD, is the data file, and is also called the characterization file. The file name depends on the printer or printer family.
Newer ''Unidrv''-based
printer driver
In computers, a printer driver or a print processor is a piece of software on a computer that converts the data to be printed to a format that a printer can understand. The purpose of printer drivers is to allow applications to do printing with ...
s from some printer vendors, e.g.
Hewlett-Packard
The Hewlett-Packard Company, commonly shortened to Hewlett-Packard ( ) or HP, was an American multinational information technology company. It was founded by Bill Hewlett and David Packard in 1939 in a one-car garage in Palo Alto, California ...
, may contain many other support files to allow support for more printer-specific options.
Unidrv capabilities
The ''Unidriver'' is also called the raster driver because it supports raster (bitmap) graphics printing and is compatible with many printers. This driver supports the following features:
* Color printing at various depths, such as 4 bits per pixel (bpp), 8 bpp, and 24 bpp.
* Scalable
TrueType
TrueType is an Computer font#Outline fonts, outline font standardization, standard developed by Apple Inc., Apple in the late 1980s as a competitor to Adobe Inc., Adobe's PostScript fonts#Type 1, Type 1 fonts used in PostScript. It has become the ...
and
OpenType
OpenType is a format for scalable computer fonts. Derived from TrueType, it retains TrueType's basic structure but adds many intricate data structures for describing typographic behavior. OpenType is a registered trademark of Microsoft Corpora ...
fonts, device fonts (including double-byte), grayscale printing,
font substitution
Font substitution is the process of using one typeface in place of another when the intended typeface either is not available or does not contain glyphs for the required characters.
Font substitution can be aided by:
* classifying fonts into ...
,
run-length encoding
Run-length encoding (RLE) is a form of lossless data compression in which ''runs'' of data (consecutive occurrences of the same data value) are stored as a single occurrence of that data value and a count of its consecutive occurrences, rather th ...
(RLE), Tag Image File Format (
TIFF
Tag Image File Format or Tagged Image File Format, commonly known by the abbreviations TIFF or TIF, is an image file format for storing raster graphics images, popular among graphic artists, the publishing industry, and photographers. TIFF is w ...
) version 4.0, and Delta Row Compression (DRC).
* An extension interface that allows printer manufacturers to extend and customize the driver for specific models.
* Vector graphics languages HP-GL/2 and PCL-XL, monochrome, and color.
Determining if the printer driver is Unidrv-based
To determine whether a driver is ''Unidrv''-based, the following steps need to be taken on Windows:
# Click the ''Start button'', and then open the ''Printers'' folder.
# From the ''File'' menu, click ''Server Properties''.
# Click the ''Drivers'' tab.
# Select a driver, and then click ''Properties''.
# Observe the driver list in the ''Driver Properties'' dialog box. If ''UniDrv.dll'' appears on the list of files, the driver is ''Unidrv''-based.
Future
Starting with
Windows Vista
Windows Vista is a major release of the Windows NT operating system developed by Microsoft. It was the direct successor to Windows XP, released five years earlier, which was then the longest time span between successive releases of Microsoft W ...
, Microsoft intends XPSDrv to succeed Unidrv. The XPSDrv printer driver extends Microsoft's GDI-based, printer driver architecture to support consuming
Open XML Paper Specification
Open XML Paper Specification (also referred to as OpenXPS) is an open specification for a page description language and a fixed-document format. Microsoft developed it as the XML Paper Specification (XPS). In June 2009, Ecma International adop ...
(XPS) documents and is more modular and extensible. With an XPSDrv printer driver, the XPS Document format is used as a spool file format and as a document file format.
References
Microsoft Universal Printer Driver (UniDrv) MSDN References
Windows components