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.