int GetDeviceCaps( int nIndex ) const;
nIndex
Specifies the item to return. It can be any one of the following values:
DRIVERVERSION
Version number; for example, 0x100 for 1.0.
TECHNOLOGY
Device technology. It can be any one of the following values:
Value | Meaning |
DT_PLOTTER | Vector plotter |
DT_RASDISPLAY | Raster display |
DT_RASPRINTER | Raster printer |
DT_RASCAMERA | Raster camera |
DT_CHARSTREAM | Character stream |
DT_METAFILE | Metafile |
DT_DISPFILE | Display file |
HORZSIZE
Width of the physical display (in millimeters).
VERTSIZE
Height of the physical display (in millimeters).
HORZRES
Width of the display (in pixels).
VERTRES
Height of the display (in raster lines).
LOGPIXELSX
Number of pixels per logical inch along the display width.
LOGPIXELSY
Number of pixels per logical inch along the display height.
BITSPIXEL
Number of adjacent color bits for each pixel.
PLANES
Number of color planes.
NUMBRUSHES
Number of device-specific brushes.
NUMPENS
Number of device-specific pens.
NUMFONTS
Number of device-specific fonts.
NUMCOLORS
Number of entries in the device's color table.
ASPECTX
Relative width of a device pixel as used for line drawing.
ASPECTY
Relative height of a device pixel as used for line drawing.
ASPECTXY
Diagonal width of the device pixel as used for line drawing.
PDEVICESIZE
Size of the PDEVICE internal data structure.
CLIPCAPS
Flag that indicates the clipping capabilities of the device. It is 1 if the device can clip to a rectangle, 0 if it cannot.
SIZEPALETTE
Number of entries in the system palette. This index is valid only if the device driver sets the RC_PALETTE bit in the RASTERCAPS index. It is available only if the driver version is 3.0 or higher.
NUMRESERVED
Number of reserved entries in the system palette. This index is valid only if the device driver sets the RC_PALETTE bit in the RASTERCAPS index and is available only if the driver version is 3.0 or higher.
COLORRES
Actual color resolution of the device in bits per pixel. This index is valid only if the device driver sets the RC_PALETTE bit in the RASTERCAPS index and is available only if the driver version is 3.0 or higher.
RASTERCAPS
Value that indicates the raster capabilities of the device, as shown in the following list:
Capability | Meaning |
RC_BANDING | Requires banding support |
RC_BITBLT | Capable of transferring bitmaps |
RC_BITMAP64 | Capable of supporting bitmaps larger than 64K |
RC_DI_BITMAP | Capable of supporting SetDIBits and GetDIBits |
RC_DIBTODEV | Capable of supporting the SetDIBitsToDevice function |
RC_FLOODFILL | Capable of performing flood fills |
RC_GDI20_OUTPUT | Capable of supporting Windows version 2.0 features |
RC_PALETTE | Palette-based device |
RC_SCALING | Capable of scaling |
RC_STRETCHBLT | Capable of performing the StretchBlt function |
RC_STRETCHDIB | Capable of performing the StretchDIBits function |
CURVECAPS
A bitmask that indicates the curve capabilities of the device. The bits have the following meanings:
Bit | Meaning |
0 | Device can do circles |
1 | Device can do pie wedges |
2 | Device can do chord arcs |
3 | Device can do ellipses |
4 | Device can do wide borders |
5 | Device can do styled borders |
6 | Device can do borders that are wide and styled |
7 | Device can do interiors |
The high byte is 0.
LINECAPS
A bitmask that indicates the line capabilities of the device. The bits have the following meanings:
Bit | Meaning |
0 | Reserved |
1 | Device can do polyline |
2 | Reserved |
3 | Reserved |
4 | Device can do wide lines |
5 | Device can do styled lines |
6 | Device can do lines that are wide and styled |
7 | Device can do interiors |
The high byte is 0.
POLYGONALCAPS
A bitmask that indicates the polygonal capabilities of the device. The bits have the following meanings:
Bit | Meaning |
0 | Device can do alternate fill polygon |
1 | Device can do rectangle |
2 | Device can do winding number fill polygon |
3 | Device can do scanline |
4 | Device can do wide borders |
5 | Device can do styled borders |
6 | Device can do borders that are wide and styled |
7 | Device can do interiors |
The high byte is 0.
TEXTCAPS
A bitmask that indicates the text capabilities of the device. The bits have the following meanings:
Bit | Meaning |
0 | Device can do character output precision |
1 | Device can do stroke output precision |
2 | Device can do stroke clip precision |
3 | Device can do 90-degree character rotation |
4 | Device can do any character rotation |
5 | Device can do scaling independent of x and y |
6 | Device can do doubled character for scaling |
7 | Device can do integer multiples for scaling |
8 | Device can do any multiples for exact scaling |
9 | Device can do double-weight characters |
10 | Device can do italicizing |
11 | Device can do underlining |
12 | Device can do strikeouts |
13 | Device can do raster fonts |
14 | Device can do vector fonts |
15 | Reserved; must be returned 0 |
Retrieves device-specific information about a given display device. The nIndex parameter specifies the type of information desired.
The value of the desired item.
::GetDeviceCaps