Conditionally Required Graphics Driver Functions

Besides the functions that are always required, certain other functions may be required, depending on how a driver is implemented. The conditionally-required functions are listed in the following table. If the driver manages its own primary surface (using the EngCreateDeviceSurface function to get a handle to the surface), or its own offscreen bitmaps, the driver must also support several drawing functions. Drivers writing to standard format DIBs usually allow GDI to manage most or all of these operations. Displays that support settable palettes must also support the DrvSetPalette function.

It is more common for a printer driver than a display driver to define or draw fonts. A display driver is not required to handle fonts. If the hardware has a resident font, the driver must supply information to GDI about this font. This information includes font metrics, mappings from Unicode to individual glyph identities, individual glyph attributes, and kerning tables.

Entry Point When Required Description

DrvCopyBits

Device-managed surfaces

Translates between device-managed raster surfaces and GDI standard-format bitmaps.

DrvDescribePixelFormat

Displays that support windows with different pixel formats on a single surface

Describes a PDEV's pixel format.

DrvGetTrueTypeFile

TrueType font drivers

Gives GDI access to a memory-mapped TrueType font file.

DrvLoadFontFile

Font drivers

Specifies file to use for font realizations.

DrvQueryFont

Printer drivers

Retrieves a GDI structure for a given font.

DrvQueryFontCaps

Font drivers

Asks driver for font driver capabilities.

DrvQueryFontData

Printer drivers

Retrieves information about a realized font.

DrvQueryFontFile

Font drivers

Asks driver for font file information.

DrvQueryFontTree

Printer drivers

Queries a tree structure defining one of three types of font mapping.

DrvQueryTrueTypeOutline

TrueType font drivers

Returns TrueType glyph handles to GDI.

DrvQueryTrueTypeTable

TrueType font drivers

Gives GDI access to TrueType font files.

DrvResetPDEV

Devices that allow mode changes in documents

Transfers driver state from old PDEV to new PDEV.

DrvSetPalette

Displays that support settable palettes

Realizes the palette for a specified device.

DrvSetPixelFormat

Displays that support windows with different pixel formats on a single surface

Sets a window's pixel format.

DrvStrokePath

Device-managed surfaces

Renders a path on the display.

DrvSwapBuffers

Drivers that support a pixel format with double buffering

Displays contents of a surface's hidden buffer.

DrvTextOut

Device-managed surfaces or drivers that define fonts

Renders a set of character images (glyphs) at specified positions.

DrvUnloadFontFile

Font drivers

Informs driver that a font file is not needed.