Display Device Context Defaults

Upon first creating a display DC, Windows assigns default values for the attributes (that is, drawing objects, colors, and modes) that comprise the DC. The following table shows the default values for the attributes of a display DC.

Attribute Default value
Background color Background color setting from Windows Control Panel (typically, white).
Background mode OPAQUE.
Bitmap None.
Brush WHITE_BRUSH.
Brush origin (0,0).
Clipping region Entire window or client area with the update region clipped, as appropriate. Child and pop-up windows in the client area may also be clipped.
Palette DEFAULT_PALETTE.
Current pen position (0,0).
Device origin Upper left corner of the window or the client area.
Drawing mode R2_COPYPEN.
Font SYSTEM_FONT (SYSTEM_FIXED_FONT for applications written to run with Windows versions 3.0 and earlier).
Intercharacter spacing 0.
Mapping mode MM_TEXT.
Pen BLACK_PEN.
Polygon-fill mode ALTERNATE.
Stretch mode BLACKONWHITE.
Text color Text color setting from Control Panel (typically, black).
Viewport extent (1,1).
Viewport origin (0,0).
Window extent (1,1).
Window origin (0,0).

An application can modify the values of the display DC attributes by using selection and attribute functions, such as SelectObject, SetMapMode, and SetTextColor. For example, an application can modify the default units of measure in the coordinate system by using SetMapMode to change the mapping mode.

Changes to the attribute values of a common, parent, or window DC are not permanent. When an application releases these DCs, the current selections, such as mapping mode and clipping region, are lost as the context is returned to the cache. Changes to a class or private DC persist indefinitely. To restore them to their original defaults, an application must explicitly set each attribute.