int GetDeviceCaps( int nIndex ) const;
Возвращаемое значение
Значение запрошенной возможности, если функция успешна.
Параметры
nIndex
Определяет тип информации, чтобы возвратить. Это может быть любое из следующих значений:
DRIVERVERSION Номер версии. Например 0x100 для 1.0.
TECHNOLOGY Технология устройства. Это может быть любой из следующего:
- DT_PLOTTER - Векторный графопостроитель
- DT_RASDISPLAY - Растровый дисплей
- DT_RASPRINTER - Растровый принтер
- DT_RASCAMERA - Растровая камера
- DT_CHARSTREAM - Символьный поток
- DT_METAFILE - Метафайл
- DT_DISPFILE - Дисплейный файл
HORZSIZE Ширина физического дисплея (в милиметрах).
VERTSIZE Высота физического дисплея (в милиметрах).
HORZRES Ширина дисплея (в пикселях).
VERTRES Высота дисплея (в растровых строках).
LOGPIXELSX Число пикселей на логический дюйм по ширине дисплея.
LOGPIXELSY Число пикселей на логический дюйм по высоте дисплея.
BITSPIXEL Число смежных цветных битов для каждого пикселя.
PLANES Количество цветных плоскостей.
NUMBRUSHES Число зависящих от устройства кистей.
NUMPENS Число зависящих от устройства перьев.
NUMFONTS Число зависящих от устройства шрифтов.
NUMCOLORS Число входов в таблице цветов устройства.
ASPECTX Относительная ширина пикселя устройства которая используется для линий рисунка.
ASPECTY Относительная высота пикселя устройства которая используется для линий рисунка.
ASPECTXY Диагональная ширина пикселя устройства как используется для линий рисунка.
PDEVICESIZE Размер PDEVICE внутренней структуры данных.
CLIPCAPS Возможности отсечения устройства. Это может быть один из следующего:
- CP_NONE - Вывод не отсечен.
- CP_RECTANGLE - Вывод отсечен к прямоугольникам.
- CP_REGION - Вывод отсечен к областям.
SIZEPALETTE Число входов в палитре системы. Этот индекс допустим только, если драйвер устройства устанавливает
RC_PALETTE бит в индексе
RASTERCAPS.
NUMRESERVED Число зарезервированных входов в палитре системы. Этот индекс допустим только, если драйвер устройства устанавливает
RC_PALETTE бит в индексе
RASTERCAPS.
COLORRES Фактическая цветная разрешающая способность устройства в битах на пиксель. Этот индекс допустим только, если драйвер устройства устанавливает
RC_PALETTE бит в индексе
RASTERCAPS.
RASTERCAPS Значение, которое указывает растровые возможности устройства. Это может быть комбинация следующего:
- RC_BANDING - Требует поддержки связи.
- RC_BIGFONT - Поддерживает шрифты больше чем 64КБ.
- RC_BITBLT - Способный к пересылке точечных рисунков.
- RC_BITMAP64 - Поддерживает точечные рисунки больше чем 64КБ.
- RC_DEVBITS - Поддерживает точечные рисунки устройства.
- RC_DI_BITMAP - Способный к обеспечению SetDIBits и функций GetDIBits Windows.
- RC_DIBTODEV - Способный к обеспечению функции SetDIBitsToDevice Windows.
- RC_FLOODFILL - Способный к выполнению полного заполнения.
- RC_GDI20_OUTPUT - Способный к обеспечению Windows версия 2.0 свойства.
- RC_GDI20_STATE - Включает блок состояния в контекст устройства.
- RC_NONE - Не поддерживает никакие растровые операции.
- RC_OP_DX_OUTPUT - Поддерживает непрозрачность и DX массив.
- RC_PALETTE - Определяет устройство базовой палитры.
- RC_SAVEBITMAP - Способный к сохранению точечных рисунков локально.
- RC_SCALING - Способный к масштабированию.
- RC_STRETCHBLT - Способный к выполнению StretchBlt функции.
- RC_STRETCHDIB - Способный к выполнению функции StretchDIBits Windows.
CURVECAPS Возможности кривой устройства. Это может быть комбинация следующего:
- CC_CIRCLES - Поддерживает круги.
- CC_PIE - Поддерживает секторы круга.
- CC_CHORD - Поддерживает хорды.
- CC_ELLIPSES - Поддерживает эллипсы.
- CC_WIDE - Поддерживает широкие рамки.
- CC_STYLED - Поддерживает стили рамок.
- CC_WIDESTYLED - Поддерживает широкие стили рамки.
- CC_INTERIORS - Поддерживает внутреннее заполнения.
- CC_ROUNDRECT - Поддерживает прямоугольники с округленными углами.
LINECAPS Возможности линии которые устройство поддерживает. Это может быть комбинация следующего:
- LC_NONE - Не поддерживает никакие линии.
- LC_POLYLINE - Поддерживает ломаные линии.
- LC_MARKER - Поддерживает маркеры.
- LC_POLYMARKER - Поддерживает последовательности точек.
- LC_WIDE - Поддерживает широкие линии.
- LC_STYLED - Поддерживает стили линий.
- LC_WIDESTYLED - Поддерживает широкие стили линий.
- LC_INTERIORS - Поддерживает внутреннее заполнение.
POLYGONALCAPS Возможности полигонов которые устройство поддерживает. Это может быть комбинация следующего:
- PC_NONE - Не поддерживает никакие многоугольники.
- PC_POLYGON - Поддерживает заполненные многоугольники.
- PC_RECTANGLE - Поддерживает прямоугольники.
- PC_WINDPOLYGON - Поддерживает многоугольники с волнистой штриховкой.
- PC_SCANLINE - Поддерживает одинарные линии.
- PC_WIDE - Поддерживает широкие границы.
- PC_STYLED - Поддерживает стили границы.
- PC_WIDESTYLED - Поддерживает широкие стили границы.
- PC_INTERIORS - Поддерживает внутреннее заполнение.
TEXTCAPS Текстовые возможности устройства которые оно поддерживает. Это может быть комбинация следующего:
- TC_OP_CHARACTER - Поддерживает точный вывод шрифтов, то есть устройство может помещать шрифты устройства в любое расположение пикселя. Это требуется для любого устройства с шрифтами устройства.
- TC_OP_STROKE - Поддерживает точность вывода штриха, которая указывает, что устройство может опускать любой штриховой из шрифта устройства.
- TC_CP_STROKE - Поддерживает точную отсечку шрифтов, которая указывает, что устройство может отсекать шрифты устройства к границе пикселя.
- TC_CR_90 - Поддерживает символьное вращение на 90 градусом, которое указывает, что устройство может вращать символы только на 90 градусов одновременно.
- TC_CR_ANY - Вращение символа в любой степени, которая указывает устройство, может вращать шрифты устройства на любой угол.
- TC_SF_X_YINDEP - Поддерживает масштабирование, независящее от x и направления y, который указывает, что устройство может масштабировать шрифты устройства отдельно в x и y направлениях.
- TC_SA_DOUBLE - Поддерживает удвоенные символы для масштабирования, которое указывает, что устройство может удвоить размер шрифтов устройства.
- TC_SA_INTEGER - Поддерживает целочисленные множители для масштабирования, которое указывает, что устройство может масштабировать размер шрифтов устройства в любом целочисленном множителе.
- TC_SA_CONTIN - Поддерживает любые множители для точного масштабирования, которое указывает, что устройство может масштабировать шрифты устройства любым количеством, но все еще сохранять x и y отношения(коэффициенты).
- TC_EA_DOUBLE - Поддерживает символы с двойным весом, который указывает, что устройство может делать шрифты устройства полужирными. Если этот бит не установлен для драйверов принтера, GDI пытается создавать полужирные шрифты устройства, печатая их дважды.
- TC_IA_ABLE - Поддерживает курсив, который указывает, что устройство может делать курсив шрифтов устройства.Если этот бит не установлен, GDI принимает, что курсив не доступен.
- TC_UA_ABLE - Поддерживает подчеркивание, которое указывает, что устройство может подчеркивать шрифты устройства. Если этот бит не установлен, GDI создает подчеркивания для шрифтов устройства.
- TC_SO_ABLE - Поддерживает перечеркивание, который указывает, что устройство может зачеркнутые шрифты устройства. Если этот бит не установлен, GDI создает перечеркивания для шрифтов устройства.
- TC_RA_ABLE - Поддерживает растровые шрифты, который указывает, что GDI должен перечислить любой растровый или TrueType шрифты, доступный для этого устройства в ответ на обращение к Функциям EnumFontFamilies Windows или EnumFonts. Если этот бит не установлен, GDI растровые или TrueType шрифты не перечисляются, когда эти функции вызваны.
- TC_VA_ABLE - Поддерживает векторные шрифты, который указывает, что GDI должен перечислить любые векторные шрифты, доступные для этого устройства в ответ на обращение к Функциям EnumFontFamilies Windows или EnumFonts. Это важно для векторных устройств только (то есть для графопостроителей). Драйверы дисплея (который должен быть способен использовать растровые шрифты) и растровые драйверы принтера всегда, перечисляют векторные шрифты, потому что GDI растеризует векторные шрифты перед посылкой им к драйверу.
- TC_RESERVED - Зарезервированный, должен быть 0.
Замечания
Получает широкий диапазон зависящей от устройств информации относительно устройства дисплея.