Таблица 12.10. Значения флажков GetDCEx |
|||||||||||||||||||
Значение |
Описание |
||||||||||||||||||
DCX_CACHE |
Перезаписать значения CS_OWNDC и CS_CLASSDC, возвратив контекст устройства из кэша. |
||||||||||||||||||
DCX_CUPOflLDREN |
Исключить видимые области всех дочерних окон, расположенных под окном, которое обозначено параметром hWnd. |
||||||||||||||||||
DCX_CLIPSIBLINGS |
Исключить видимые области всех окон того же уровня, расположенных над окном, которое обозначено параметром hWnd. |
||||||||||||||||||
DCX_DEFAULTCUP |
Возвратить контекст устройства с использованием предусмотренных по умолчанию флажков отсечения, которые определены в стилях WS CLIPCHILDREN, WS CLIPSIBLINGS и CS_PARENTDC. |
||||||||||||||||||
DCX_EXCLUDERGN |
Исключить из видимой области возвращенного контекста устройства область отсечения, обозначенную параметром hrgnClip. |
||||||||||||||||||
DCX_EXCLUDEUPDATE |
Исключить область обновления из видимой области возвращенного контекста устройства. |
||||||||||||||||||
DCX_INTERSECTRGN |
Область отсечения, которая обозначена параметром hrgnClip, пересекается с видимой областью возвращенного контекста устройства. |
||||||||||||||||||
DCX_INTERSECTUPDATE |
Область обновления пересекается с видимой областью возвращенного контекста устройства. |
||||||||||||||||||
DCX_LOCKWINDOWUPDATE |
Разрешить вывод, даже если в настоящее время действует вызов функции LockWindowUpdate, который в ином случае запрещает вывод в это окно. Применяется для вывода в окно в процессе отслеживания событий. |
||||||||||||||||||
GetDCOrgEx • Windows 98 + Windows 2000 |
|||||||||||||||||||
Описание |
Функция GetDCOrgEx получает начало координат заключительного преобразования для указанного контекста устройства (DC). Началом координат заключительного преобразования называется смещение, применяемое системой Windows для преобразования координат устройства в клиентские координаты. |
||||||||||||||||||
Синтаксис |
BOOL GetDCOrgEx( HDC hDC, LPPOINT IpPoint ) |
||||||||||||||||||
Параметры |
|||||||||||||||||||
hDC |
HDC. Контекст устройства, для которого должно быть определено начало координат заключительного преобразования. |
||||||||||||||||||
Значение |
Описание |
||||||||||||||||||
DCX_NORECOMPUTE |
Если в кэше не найдено точное соответствие заданному контексту устройства, возвратить значение NULL, а не создавав новый контекст устройства. При использовании с DCX _ NORESETATTRS в приложении можно определить, нужно л> повторно выбрать какие-либо специальные атрибуты. |
||||||||||||||||||
DCX_NORESETATTRS |
Не переустанавливать атрибуты этого контекста устройства в значения, заданные по умолчанию, при освобождении контекст; устройства. |
||||||||||||||||||
DCX_PARENTCLIP |
Использовать видимую область родительского окна. Начало координат контекста устройства совмещается с левым верхним углом окна, которое обозначено параметром hWnd. |
||||||||||||||||||
DCX_USESTYLE |
Функция должна вычислить значение параметра flags с учетом стилей класса окна, которое обозначено параметром hWnd. |
||||||||||||||||||
DCX_VALIDATE |
При использований с DCX_INTERSECTUPDATE контекст устройств; должен быть полностью объявлен действительным. |
||||||||||||||||||
DCX_WINDOW |
Возвратить контекст устройства, соответствующий прямоугольно области окна, а не клиентской прямоугольной области. |
||||||||||||||||||
Возвращаемое значение |
HDC. В случае успешного выполнения — дескриптор контекста устройства для данного окна; в ином случае функция возвращает значение NULL, указывая, что параметр h Wnd является недопустимым. |
||||||||||||||||||
Включаемый файл |
wingdi.h |
||||||||||||||||||
См. также |
GetDC, ReleaseDC |
||||||||||||||||||
Пример |
В примере, показанном на рис. 12.3, в приложении для получения контекста устройства клиентской области окна, за исключением определенной области, применяется функция GetDCEx, когда пользователь выбирает пункт меню Test!. Затем в клиентской области закрашивается серым цветом прямоугольник, который обозначает исключенную область. |
||||||||||||||||||
См. \local-sources\chapl2\12-09.txt |
|||||||||||||||||||
Возвращаемое значение |
HDC. В случае успешного выполнения — контекст устройства для клиентской области данного окна; в ином случае возвращаемое значение — NULL. |
||||||||||||||||||
Включаемый файл |
wingdi.h |
||||||||||||||||||
См. также |
BeginPaint, ReleaseDC, RegisterClass |
||||||||||||||||||
Пример |
См. пример для функции EnumFontFamilies. |
||||||||||||||||||
GetDCEx • Windows 98 • Windows 2000 |
|||||||||||||||||||
Описание |
Функция GetDCEx аналогична функции GetDC, за исключением того, что приложение контролирует отсечение в клиентской области и способ его выполнения. |
||||||||||||||||||
Синтаксис |
HDC GetDCEx( HWND hWnd, HRGN hrgnClip, DWORD flags ) |
||||||||||||||||||
Параметры |
|||||||||||||||||||
hWnd |
HWND. Окно, для которого должен быть получен контекст устройства. |
||||||||||||||||||
hrgnClip |
HRGN. Область отсечения, которая может быть объединена с видимой областью клиентского окна. |
||||||||||||||||||
flags |
DWORD. Определяет способ создания контекста устройства. Этот параметр может представлять собой комбинацию значений, перечисленных в табл. 12.10. |
||||||||||||||||||
Инлекс |
Описание |
||||||||||||||||||
COLORMGMTCAPS |
(Windows 2000) Указывает возможности устройства по управлению цветом. |
||||||||||||||||||
Возможность |
Описание |
||||||||||||||||||
CM_CMYK_COLOR |
Устройство может воспринимать профиль цвета ICC цветового пространства CMYK. |
||||||||||||||||||
CM_DEVICEJCM |
Устройство может выполнять согласование цветов изображения (ICM — image color matching) либо в драйвере устройства, либо в самом устройстве. |
||||||||||||||||||
CM_GAMMA_RAMF |
* Устройство поддерживает функции GetDeviceGammaRamp и SetDeviceGammaRamp. |
||||||||||||||||||
CM_NONE |
Устройство не поддерживает ICM. |
||||||||||||||||||
CURVECAPS Возможности вывода кривых устройством. Возвращаемое значение может представлять собой комбинацию следующих флажков: |
|||||||||||||||||||
Значение |
Описание |
||||||||||||||||||
CC_CHORD |
Устройство может выводить дуги хорды. |
||||||||||||||||||
CC_CRCLES |
Устройство может выводить окружности. |
||||||||||||||||||
CC_ELLIPSES |
Устройство может выводить эллипсы. |
||||||||||||||||||
CCJNTERIORS |
Устройство может закрашивать внутренние области. |
||||||||||||||||||
CC_NONE |
Устройство не поддерживает кривые. |
||||||||||||||||||
CC_PIE |
Устройство может выводить сектора круга. |
||||||||||||||||||
CC_ROUNDRECT |
Устройство может выводить скругленные прямоугольники . |
||||||||||||||||||
CC_STYLED |
Устройство может выводить стилизованные рамки. |
||||||||||||||||||
CC_WDE |
Устройство может выводить широкие рамки. |
||||||||||||||||||
CC_WIDESTYLED |
Устройство может выводить широкие стилизованные рамки. |
||||||||||||||||||
DESKTOPHORZRES |
(Только Windows 2000) Ширина виртуального рабочего стола в пикселях. Это значение может превышать HORZRES, если устройство поддерживает виртуальный рабочий стол или несколько дисплеев. |
||||||||||||||||||
DESKTOPVERTRES |
(Только Windows 2000) Высота виртуального рабочего стола в пикселях. |
||||||||||||||||||
DRIVER VERSION |
Версия драйвера устройства. |
||||||||||||||||||
HORZRES |
Ширина экрана в пикселях. |
||||||||||||||||||
HORZSIZE |
Ширина физического экрана в миллиметрах. |
||||||||||||||||||
LINECAPS |
Возможности вывода линий устройством. Возвращаемое значение может представлять собой комбинацию следующих флажков: |
||||||||||||||||||
Значение |
Описание |
||||||||||||||||||
LCJNTERIORS |
Устройство может закрашивать внутренние области. |
||||||||||||||||||
LC_MARKER |
Устройство может выводить маркер. |
||||||||||||||||||
LC_NONE |
Устройство не поддерживает линии. |
||||||||||||||||||
LC_POLYLINE |
Устройство может выводить ломаную линию. |
||||||||||||||||||
Таблица 12.11. Значения параметра nlndex функции GetDeviceCaps |
|||||||||||||||||||
Инлекс |
Описание |
||||||||||||||||||
ASPECTX |
Относительная ширина пикселя устройства, используемого для вывода линии. |
||||||||||||||||||
ASPECTXY |
Ширина по диагонали пикселя устройства, используемого для вывода линии. |
||||||||||||||||||
ASPECTY |
Относительная высота пикселя устройства, используемого для вывода линии. |
||||||||||||||||||
BITSPIXEL |
Число смежных битов цвета для каждого пикселя. |
||||||||||||||||||
BLTALIGNMENT |
(Только Windows 2000) Предпочтительное выравнивание вывода по горизонтали, выраженное целым числом пикселей. Для обеспечения максимальной производительности вывода окно должно быть выровнено по горизонтали по границе, кратной этому значению. Значение 0 указывает, что устройство оборудовано ускорителем и может применяться любое выравнивание. |
||||||||||||||||||
CLIPCAPS |
Флажок, который указывает возможности отсечения устройства. Допустимы следующие возвращаемые значения: |
||||||||||||||||||
Возможность Описание |
|||||||||||||||||||
CP_NONE |
Устройство не может отсекать вывод. |
||||||||||||||||||
CP_RECTANGLE |
Устройство может отсекать вывод в прямоугольную область |
||||||||||||||||||
CP_REGION32 |
Устройство может отсекать вывод в любую область |
||||||||||||||||||
COLORRES |
Фактическая разрешающая способность устройства по цвету, в битах на пиксель. Это значение может применяться, только если драйвером устройства установлен бит RC_P ALETTE в индексе RASTERCAPS. |
||||||||||||||||||
IpPoint |
LPPOINT. Указатель на структуру POINT, в которую должны быть записаны координаты начала координат заключительного преобразования. |
||||||||||||||||||
Возвращаемое значение |
BOOL. В случае успешного выполнения — TRUE; в ином случае возвращаемое значение — FALSE. |
||||||||||||||||||
Включаемый файл |
S wingdi.h |
||||||||||||||||||
См. также |
CreateIC |
||||||||||||||||||
Пример |
См. пример для функции GetDCEx |
||||||||||||||||||
GetDeviceCaps • Windows 98 • Windows 2000 |
|||||||||||||||||||
Описание |
Функция GetDeviceCaps выбирает определенную информацию об указанном устройстве, например, эта функция позволяет узнать, можно ли печатать на устройстве графические изображения, какова разрешающая способность экрана и т.д. |
||||||||||||||||||
Синтаксис |
int GetDeviceCaps( HDC hDC, int nlndex ) |
||||||||||||||||||
Параметры |
|||||||||||||||||||
hDC |
HDC. Дескриптор контекста устройства (DC). |
||||||||||||||||||
п Index |
int. Информация, которая должна быть возвращена функцией. Этот параметр может иметь одно из значений, приведенных в табл. 12.11. |
||||||||||||||||||
Значение |
Описание |
||||||||||||||||||
LC_POLYMARKER |
Устройство может выводить несколько маркеров. |
||||||||||||||||||
LC_STYLED |
Устройство может выводить стилизованные линии. |
||||||||||||||||||
LC_WIDE |
Устройство может выводить широкие линии. |
||||||||||||||||||
LC_WIDESTYLED |
Устройство может выводить широкие стилизованные линии. |
||||||||||||||||||
LOGPIXELSX |
Число пикселей на логический дюйм по ширине экрана. |
||||||||||||||||||
LOGPIXELSY |
Число пикселей на логический дюйм по высоте экрана. |
||||||||||||||||||
NUMBRUSHES |
Число кистей, зависящих от устройства. |
||||||||||||||||||
NUMCOLORS |
Число входов в таблице цветов устройства. |
||||||||||||||||||
NUMFONTS |
Число шрифтов, зависящих от устройства. |
||||||||||||||||||
NUMPENS |
Число перьев, зависящих от устройства. |
||||||||||||||||||
NUMRESERVED |
Число зарезервированных входов в системной палитре; это значение может применяться, только если драйвером устройства установлен бит RC_PALETTE в индексе RASTERCAPS. |
||||||||||||||||||
PDEVICESIZE |
Зарезервированное значение. |
||||||||||||||||||
PHYSICALHEIGHT |
Высота физической страницы в пикселях. |
||||||||||||||||||
PHYSICALOFFSETX |
Смещение в пикселях в направлении X от левого верхнего угла физической страницы, где фактически начинается печать или вывод. |
||||||||||||||||||
PHYSICALOFFSETY |
Смещение в пикселях в направлении Y от левого верхнего угла физической страницы, где фактически начинается печать или вывод. |
||||||||||||||||||
PHYSICALWIDTH |
Ширина физической страницы в пикселях. |
||||||||||||||||||
PLANES |
Число цветовых плоскостей. |
||||||||||||||||||
POLYGONALCAPS |
Возможности вывода многоугольников устройством. Возвращаемое значение может представлять собой комбинацию следующих флажков: |
||||||||||||||||||
Значение |
Описание |
||||||||||||||||||
PC_INTERIORS |
Устройство может закрашивать внутренние области. |
||||||||||||||||||
PC_NONE |
Устройство не поддерживает многоугольники. |
||||||||||||||||||
PC_POLYGON |
Устройство может выводить многоугольники, заполняя их с учетом чередования сторон. |
||||||||||||||||||
PC_RECT ANGLE |
Устройство может выводить прямоугольники. |
||||||||||||||||||
PC_SCANLINE |
Устройство может выводить отдельную строку развертки. |
||||||||||||||||||
PC_STYLED |
Устройство может выводить стилизованные рамки. |
||||||||||||||||||
PC_TRAPEZOID |
Устройство может выводить трапеции. |
||||||||||||||||||
PC_WIDE |
Устройство может выводить широкие рамки. |
||||||||||||||||||
PC_WIDESTYLED |
Устройство может выводить широкие стилизованные рамки. |
||||||||||||||||||
PC_WINDPOLYGON |
Устройство может выводить многоугольники, заполняя их с учетом числа кручения. |
||||||||||||||||||
Инлекс Описание |
|||||||||||||||||||
RASTERCAPS Растровые возможности устройства. Возвращаемое значение может представлять собой комбинацию следующих флажков: |
|||||||||||||||||||
Возможность |
Описание |
||||||||||||||||||
RC_BANDING |
Требует поддержки разбиения на полосы. |
||||||||||||||||||
RC_BITBLT |
Способно передавать растровые изображения. |
||||||||||||||||||
RCJBITMAP64 |
Способно поддерживать растровые изображения, превышающие по размерам 64 Кб. |
||||||||||||||||||
RC_M_BITMAP |
Способно поддерживать функции SetDIBtts и GetDIBrts. |
||||||||||||||||||
RCJMBTODEV |
Способно поддерживать функцию SetDIBttsToDevice. |
||||||||||||||||||
RC_DEVBITS |
Способно поддерживать аппаратно-зависимые растровые изображения. |
||||||||||||||||||
RC_FLOODHLL |
Способно осуществлять заполнение заливкой. |
||||||||||||||||||
RC_NEWDffi |
Способно поддерживать аппаратно-независимый формат растрового изображения, отличный от формата с 1, 4, 8 и 24 битами на пиксель. |
||||||||||||||||||
RC_NONE |
Устройство не имеет растровых возможностей. |
||||||||||||||||||
RC_OP_DX_OUTPUT |
Способно заливать фон кроющей краской одновременно с выводом глифов символов. Поддерживает массив Ох функции ExtTextOut. |
||||||||||||||||||
RC_PALETTE |
Указывает на устройство, действующее на основе палитры. |
||||||||||||||||||
RC_SAVEBITMAP |
Способно сохранить одно растровое изображение, снятое с дисплея, или восстановить на дисплее одно, ранее сохраненное растровое изображение. |
||||||||||||||||||
RC_SCALING |
Способно к масштабированию. |
||||||||||||||||||
RC_STRETCHBLT |
Способно выполнять функцию StretchBtt. |
||||||||||||||||||
RC_STRETCHDIB |
Способно выполнять функцию StretchDIBits. |
||||||||||||||||||
SCALINGFACTORX |
Коэффициент масштабирования для оси ж принтера. |
||||||||||||||||||
SCALINGFACTORY |
Коэффициент масштабирования для оси у принтера. |
||||||||||||||||||
SHADEBLENDCAPS |
Указывает на возможности устройства по затемнению и микшированию. |
||||||||||||||||||
Возможность |
Описание |
||||||||||||||||||
SB_CONST_ALPHA |
Обрабатывает член SourceConstantAlpha структуры BLENDFUNCTION. |
||||||||||||||||||
SB_GRAD_RECT |
Способно создавать градиентный прямоугольник. |
||||||||||||||||||
SB_GRAD_TRI |
Способно создавать градиентный треугольник. |
||||||||||||||||||
SB_NONE |
Устройство не поддерживает ни одну из этих возможностей. |
||||||||||||||||||
SB_PIXEL_ALPHA |
Способно выполнять альфа-микширование в каждом пикселе. |
||||||||||||||||||
SB_PREMULT_ALPHA |
Способно выполнять альфа-микширование после предварительной обработки пикселей. |
||||||||||||||||||
Индекс |
Описание |
||||||||||||||||||
SIZEPALETTE |
Число входов в системной палитре; это значение может применяться только при условии установки драйвером устройства бита RC PALETTE в индексе RASTERCAPS. |
||||||||||||||||||
TECHNOLOGY |
Технология устройства. Если параметр hDC обозначает контекст устройства расширенного метафайла, то технологией устройства считается соответствующее значение для рассматриваемого устройства, переданное функции CreateEnhMetaFile. Для определения того, относится ли данный контекст устройства к расширенному метафайлу, применяется функция GetObjectType. Допустимы следующие возвращаемые значения: |
||||||||||||||||||
Значение |
Описание |
||||||||||||||||||
DT_CHARSTREAM |
Поток символов. |
||||||||||||||||||
DT_DBPFILE |
Файл дисплея. |
||||||||||||||||||
DT_METAFILE |
Метафайл. |
||||||||||||||||||
DT_PLOTTER |
Векторный графопостроитель. |
||||||||||||||||||
DT_RASCAMERA |
Растровая камера. |
||||||||||||||||||
DT_RASDISPLAY |
Растровый дисплей. |
||||||||||||||||||
DT_RASPRINTER |
Растровый принтер |
||||||||||||||||||
TEXTCAPS |
Текстовые возможности устройства. Возвращаемое значение может представлять собой комбинацию следующих флажков: |
||||||||||||||||||
Бит |
Описание |
||||||||||||||||||
TC_CP_STROKE |
Устройство способно обеспечить точность вырезки на уровне отдельного штриха. |
||||||||||||||||||
TC_CR_90 |
Устройство способно поворачивать символы на угол 90°. |
||||||||||||||||||
TC_CR_ANY |
Устройство способно поворачивать символы на любой угол. |
||||||||||||||||||
TC_EA_DOUBLE |
Устройство может выводить символы с двойным весом. |
||||||||||||||||||
TC_IA_ABLE |
Устройство может выводить символы курсивом. |
||||||||||||||||||
TC_OP_CHARACTER |
Устройство способно обеспечить точность вывода на уровне отдельного символа. |
||||||||||||||||||
TC_OP_STROKE |
Устройство способно обеспечить точность вывода на уровне отдельного штриха. |
||||||||||||||||||
TC_RA_ABLE |
Устройство может выводить растровые шрифты. |
||||||||||||||||||
TC_RESERVED |
Зарезервированное значение; должно быть равно 0. |
||||||||||||||||||
TC_SA_CONTIN |
Устройство позволяет использовать любые коэффициенты для точного масштабирования символов. |
||||||||||||||||||
TC_SA_DOUBLE |
Устройство способно удваивать символы при масштабировании. |
||||||||||||||||||
TC_SA_INTEGER |
Устройство позволяет использовать для масштабирования символов только целочисленные коэффициенты |
||||||||||||||||||
TC_SCROLLBLT |
Устройство не может выполнять прокрутку с использованием передачи двоичных блоков. |
||||||||||||||||||
TC_SF_X_YINDEP |
Устройство способно выполнять масштабирование отдельно в направлениях х и у. |
||||||||||||||||||
TC_SO_ABLE |
Устройство может выводить перечеркнутые символы. |
||||||||||||||||||
TC_UA_ABLE |
Устройство может выводить подчеркнутые символы. |
||||||||||||||||||
TC_VA_ABLE |
Устройство может выводить векторные шрифты. |
||||||||||||||||||
VERTRES |
Высота экрана в строках растра. |
||||||||||||||||||
VERTSIZE |
Высота экрана в миллиметрах. |
||||||||||||||||||
VREFRESH |
(Только Windows 2000) Для устройств отображения текущая частота регенерации по вертикали в герцах. Значение частоты регенерации по вертикали, равное 0 или 1 , представляет заданную по умолчанию частоту регенерации аппаратного устройства отображения. |
||||||||||||||||||
Возвращаемое |
значение int. Значение желаемого элемента. |
||||||||||||||||||
Включаемый файл |
wingdi.h |
||||||||||||||||||
См. также |
CreateIC, CreateDC, GetDC |
||||||||||||||||||
Пример |
См. пример для функции CreatelC. |
||||||||||||||||||
GetFontData • Windows 98 + Windows 2000 |
|||||||||||||||||||
Описание |
Функция GetFontData выбирает данные метрики для шрифта TrueType. В приложении можно выбрать весь файл шрифта, указав в качестве параметров dwTable, dwOffset и cbData значение 0. |
||||||||||||||||||
Синтаксис |
DWORD GetFontData( HDC hDC, DWORD dwTable, DWORD dwOffset, LPVOID IpvBuffer, DWORD cbData ) |
||||||||||||||||||
Параметры |
|||||||||||||||||||
hDC |
HDC. Дескриптор контекста устройства. |
||||||||||||||||||
dwTable |
DWORD. Имя таблицы метрики шрифта, из которой должны быть получены данные о шрифте. Если этот параметр равен 0, выборка информации происходит с начала файла шрифта. |
||||||||||||||||||
dwOffset |
DWORD. Смещение от начала таблицы метрики шрифта до того места, где функция должна начать выборку информации. Если этот параметр равен 0, выборка информации происходит с начала файла шрифта. |
||||||||||||||||||
IpvBuffer |
LPVOID. Указатель на буфер, в который должна быть записана информация о шрифте. Если этот параметр установлен равным NULL, возвращается размер буфера, необходимый для записи данных шрифта. |
||||||||||||||||||
cbData |
DWORD. Объем в байтах информации, которая должна быть получена. Если значение этого параметра установлено равным 0, возвращается размер данных, указанных в параметре dwTable. |
||||||||||||||||||
Возвращаемое значение |
DWORD. Число возвращенных байтов. В случае возникновения ошибки возвращаемое значение — GDI_ERROR. |
||||||||||||||||||
Включаемый файл |
wingdi.h |
||||||||||||||||||
См. также |
GetTextMetrics, GetOutlineTextMetrics |
||||||||||||||||||
Пример |
В следующем примере показано использование функции GetFontData для выборки данных шрифта, который может быть внедрен в документ. |
||||||||||||||||||
См. \local-sov |
irces\chapl2\12-10. txt |
||||||||||||||||||
GetFontLanquaqelnfo • Windows 98 • Windows 2000 |
|||||||||||||||||||
Описание |
Функция GetFontLanguagelnfo возвращает информацию о выбранном в настоящее время шрифте для контекста устройства отображения. В приложении можно получить эту информацию и вызвать функцию GetCharacterPlacement для подготовки символьной строки к отображению. |
||||||||||||||||||
Синтаксис |
DWORD GetFontLanguageInfo( HDC hDC ) |
||||||||||||||||||
Параметры |
|||||||||||||||||||
hDC |
HDC. Дескриптор контекста устройства отображения. |
||||||||||||||||||
Возвращаемое значение |
DWORD. Характеристики выбранного шрифта. Если шрифт нормализован и может рассматриваться как простой шрифт для латинских языков, возвращаемое значение — 0. В случае возникновения ошибки возвращаемое значение — GCP_ERROR В ином случае функция возвращает комбинацию значений, перечисленных в табл. 12.12; эту комбинацию после применения маски FLI_MASK можно передавать непосредственно функции GetCharacterPlacement. |
||||||||||||||||||
Включаемый файл |
wingdi.h |
||||||||||||||||||
См. также |
GetCharacterPlacement |
||||||||||||||||||
Таблица 12. 12. Возвращаемые значения функции GetFontLanguagelnfo |
|||||||||||||||||||
Значение |
Описание |
||||||||||||||||||
GCP_DBCS |
Набор символов является двухбайтовым (DBCS — double-byte character set). |
||||||||||||||||||
GCP_DIACRmC |
Шрифт содержит диакритические глифы. |
||||||||||||||||||
FLI_GLYPHS |
Шрифт содержит дополнительные глифы, к которым обычно нельзя получить доступ с использованием кодовой страницы. Для доступа к глифам применяется функция GetCharacterPlacement. |
||||||||||||||||||
GCP_GLYPHSHAPE |
Шрифт содержит несколько глифов в расчете на кодовую точку или на комбинацию кодовых точек (обеспечивает изменение формы литеры и/ или создание лигатур), а также содержит расширенные таблицы глифов, позволяющие предоставить дополнительные глифы для дополнительных форм. Если задано это значение, при вызове функции GetCharacterPlacement должен использоваться массив /pG/yphs, а при выводе строки функции ExtTextOut должно быть передано значение ETO_GLYPHINDEX. |
||||||||||||||||||
GCP_KASH1DA |
Шрифт позволяет использовать кашиды (протяжки, предусмотренные в арабском письме). |
||||||||||||||||||
GCPJ.IGATE |
Шрифт содержит глифы создания лигатур, которыми могут быть заменены конкретные комбинации символов. |
||||||||||||||||||
GCP_REORDER |
В состав шрифта входят символы, которые требуют переупорядочения при отображении, например буквы еврейского или арабского алфавита. |
||||||||||||||||||
GCP_USEKERNING |
Шрифт содержит таблицу регулирования межсимвольного промежутка (апроша) в характерных сочетаниях пар знаков, которая может использоваться для выбора лучшего интервала между символами и глифами. |
||||||||||||||||||
Пример |
В следующем примере показано, как использовать в приложении функцию GetFontLanguagelnfo для определения того, поддерживается ли двухбайтовый набор символов шрифтом, выбранным для контекста устройства. |
||||||||||||||||||
См. \local-soi |
irces\chap!2\12-ll . txt |
||||||||||||||||||
GetGraphicsMode • Windows 98 4 Windows 2000 |
|||||||||||||||||||
Описание |
Функция GetGraphicsMode позволяет определить текущий графический режим для указанного контекста устройства. |
||||||||||||||||||
Синтаксис |
rat GetGraphicsMode( HDC hDC) |
||||||||||||||||||
Параметры |
|||||||||||||||||||
hDC |
HDC. Обозначает контекст устройства. |
||||||||||||||||||
Возвращаемое значение |
int. В случае успешного выполнения функции, возвращаемое значение — текущий графический режим. Если текущий графический режим является совместимым с Windows 3.x, возвращаемое значение — GM_COMPATIBLE. В этом графическом режиме приложение не может устанавливать или изменять универсальное преобразование для указанного контекста устройства. Это — единственный режим, поддерживаемый в Windows 98. В Windows 2000 может быть установлено значение GM_ADVANCED, которое указывает, что текущий режим является расширенным графическим режимом. В этом графическом режиме приложение может устанавливать или изменять универсальное преобразование для указанного контекста устройства. |
||||||||||||||||||
Включаемый файл |
wingdi.h |
||||||||||||||||||
См. также |
SetGraphicsMode |
||||||||||||||||||
GetMapMode • Windows 98 • Windows 2000 |
|||||||||||||||||||
Описание |
Функция GetMapMode позволяет определить текущий режим отображения. В приложении эта функция обычно используется с окнами, которые включают стиль CS_OWNDC. Это позволяет отслеживать в окне изменения контекста устройства, определив приватную область памяти для этого контекста устройства. |
||||||||||||||||||
Синтаксис |
hit GetMapMode( HDC hDC ) |
||||||||||||||||||
Параметры |
|||||||||||||||||||
hDC |
HDC. Дескриптор контекста устройства. |
||||||||||||||||||
Возвращаемое значение |
int. В случае успешного выполнения — режим отображения; в ином случае возвращаемое значение — 0. Значения разных режимов отображения приведены в описании функции Set Map Mode. |
||||||||||||||||||
Включаемый файл |
wingdi.h |
||||||||||||||||||
См. также |
SetMapMode |
||||||||||||||||||
Пример |
См. пример для функции SetMapMode. |
||||||||||||||||||
GetSystemMetrics • Windows 98 * Windows 2000 |
|||||||||||||||||||
Описание |
Функция GetSystemMetrics позволяет определить характеристики элемента отображения Windows или установки конфигурации системы. Все размеры даны в пикселях. |
||||||||||||||||||
Синтаксис |
int GetSystemMetrics( int nlndex ) |
||||||||||||||||||
Параметры |
|||||||||||||||||||
nIndex |
int. Характеристики или установки конфигурации системы, которые должны быть возвращены функцией. Этот параметр должен иметь одно из значений, перечисленных в табл. 12.13. |
||||||||||||||||||
Таблица 12. 13. Значения параметра nlndex функции GetSystemMetrics |
|||||||||||||||||||
Значение |
Описание |
||||||||||||||||||
SM_ARRANGE |
Флажки, указывающие, как система упорядочивает свернутые окна. Возвращаемое значение состоит из исходной позиции и направления. Исходная позиция может иметь одно из следующих значений: |
||||||||||||||||||
Значение |
Описание |
||||||||||||||||||
ARW_BOTTOMLEFT |
Начинать упорядочение с левого нижнего угла экрана (позиция, заданная по умолчанию). |
||||||||||||||||||
ARW_BOTTOMRIGH1 |
' Начинать упорядочение с правого нижнего угла экрана. |
||||||||||||||||||
ARW_HIDE |
Скрывать свернутые окна, перемещая их за пределы видимой области экрана. |
||||||||||||||||||
ARW_STARTRIGHT |
То же, что и ARW_BOTTOMRIGHT. |
||||||||||||||||||
ARW_STARTTOP |
Начинать упорядочение с левого верхнего угла экрана. |
||||||||||||||||||
ARW_TOPLEFT |
То же, что и ARW_STARTTOP. |
||||||||||||||||||
ARW_TOPRIGHT |
Начинать упорядочение с правого верхнего угла экрана. Флажок эквивалентен комбинации ARW_STARTTOP | ARW_STARTRIGHT. |
||||||||||||||||||
Направление, в котором происходит упорядочение, может иметь одно из следующих значений: |
|||||||||||||||||||
Значение |
Описание |
||||||||||||||||||
ARW_DOWN |
Упорядочивать по вертикали, сверху вниз. |
||||||||||||||||||
ARW_LEFT |
Упорядочивать по горизонтали, слева направо. |
||||||||||||||||||
ARW_RIGHT |
Упорядочивать по горизонтали, справа налево. |
||||||||||||||||||
ARW_UP |
Упорядочивать по вертикали, снизу вверх. |
||||||||||||||||||
SM_CLEANBOOT |
Значение, которое указывает, как произошел запуск системы: |
||||||||||||||||||
0 |
Нормальная начальная загрузка. |
||||||||||||||||||
1 |
Начальная загрузка в режиме защиты от сбоев. |
||||||||||||||||||
2 |
Начальная загрузка в режиме защиты от сбоев с поддержкой сети. |
||||||||||||||||||
SM_CMETRICS |
Число системных показателей и флажков. |
||||||||||||||||||
SM_CMONITORS |
Число устройств отображения на рабочем столе. |
||||||||||||||||||
SM CMOUSEBUTTONS |
Число кнопок мыши или 0, если мышь не установлена. |
||||||||||||||||||
SM CXBORDER |
Ширина одинарной рамки в пикселях. |
||||||||||||||||||
SM_CYBORDER |
Высота одинарной рамки в пикселях. |
||||||||||||||||||
SM_CXCURSOR |
Ширина стандартных растровых изображений курсора в пикселях. |
||||||||||||||||||
SM_CYCURSOR |
Высота стандартных растровых изображений курсора в пикселях. |
||||||||||||||||||
SM_CXDLGFRAME |
Этот параметр является устаревшим; в Windows 98 и последующих версиях вместо него должен применяться SM_CXFIXEDFRAME. |
||||||||||||||||||
SM_CYDLGFRAME |
Этот параметр является устаревшим; в Windows 98 и последующих версиях вместо него должен применяться SM CYFIXEDFRAME. |
||||||||||||||||||
SM_CXDOUBLECLK |
Ширина в пикселях прямоугольной области, внутри которой должны произойти два последовательных щелчка мыши, чтобы был зафиксирован двойной щелчок. |
||||||||||||||||||
SM_CYDOUBLECLK |
Высота в пикселях прямоугольной области, внутри которой должны произойти два последовательных щелчка мыши, чтобы был зафиксирован двойной щелчок. |
||||||||||||||||||
SM_CXDRAG |
Ширина в пикселях прямоугольной области, применяемой для обнаружения начала операции перетаскивания. |
||||||||||||||||||
SM_CYDRAG |
Высота в пикселях прямоугольной области, применяемой для обнаружения начала операции перетаскивания. |
||||||||||||||||||
SM_CXEDGE |
Ширина края (двойной рамки) в пикселях. |
||||||||||||||||||
SM_CYEDGE |
Высота края (двойной рамки) в пикселях. |
||||||||||||||||||
SM_CXFIXEDFRAME |
Ширина в пикселях рамки окна, которое имеет стиль WS DLGFRAME. |
||||||||||||||||||
SM_CYFIXEDFRAME |
Высота в пикселях рамки окна, которое имеет стиль WS_DLGFRAME. |
||||||||||||||||||
SM_CXFRAME |
Этот параметр является устаревшим; в Windows 98 и последующих версиях вместо него должен применяться SM_CXSIZEFRAME. |
||||||||||||||||||
SM_CYFRAME |
Этот параметр является устаревшим; в Windows 98 и последующих версиях вместо него должен применяться SM_CYSIZEFRAME. |
||||||||||||||||||
SM_CXFULLSCREEN |
Заданная по умолчанию ширина в пикселях клиентской области развернутого окна верхнего уровня. |
||||||||||||||||||
SM_CYFULLSCREEN |
Заданная по умолчанию высота в пикселях клиентской области развернутого окна верхнего уровня. |
||||||||||||||||||
SM_CXICON |
Ширина большой пиктограммы в пикселях. |
||||||||||||||||||
SM_CYICON |
Высота большой пиктограммы в пикселях. |
||||||||||||||||||
SM_CXICONSPACING |
Ширина в пикселях ячейки координатной сетки для элементов, представляемых в виде больших пиктограмм. Это значение всегда больше или равно SM_CXICON. |
||||||||||||||||||
SM_CYICONSPACING |
Высота в пикселях ячейки координатной сетки для элементов, представляемых в виде больших пиктограмм. Это значение всегда больше или равно SM__CYICON. |
||||||||||||||||||
SM_CXMAXIMIZED |
Заданная по умолчанию ширина развернутого окна верхнего уровня в пикселях. |
||||||||||||||||||
SM_C /MAXIMIZED |
Заданная по умолчанию высота развернутого окна верхнего уровня в пикселях. |
||||||||||||||||||
SM_CXMAXTRACK |
Заданная по умолчанию максимальная ширина окна, которое имеет заголовок и рамки установления размеров. |
||||||||||||||||||
SM_CYMAXTRACK |
Заданная по умолчанию максимальная высота окна, которое имеет заголовок и рамки установления размеров. |
||||||||||||||||||
SM_CXMENUCHECK |
Ширина в пикселях заданного по умолчанию растрового изображения отметки меню. |
||||||||||||||||||
SM_CYMENUCHECK |
Высота в пикселях заданного по умолчанию растрового изображения отметки меню. |
||||||||||||||||||
SM_CXMENUSIZE |
Ширина кнопок строки меню в пикселях. |
||||||||||||||||||
SM_CYMENUSIZE |
Высота кнопок строки меню в пикселях. |
||||||||||||||||||
SM_CXMIN |
Устаревший параметр. То же, что и SM_CXMINTRACK. |
||||||||||||||||||
SM_CYMIN |
Устаревший параметр. То же, что и SM_CYMINTRACK. |
||||||||||||||||||
SM_CXMINIMIZED |
Ширина нормального свернутого окна в пикселях. |
||||||||||||||||||
SM_CYMINIMIZED |
Высота нормального свернутого окна в пикселях. |
||||||||||||||||||
SM_CXMINSPACING |
Ширина ячейки координатной сетки для свернутых окон в пикселях. Это значение всегда больше или равно SM_CXMINIMIZED. |
||||||||||||||||||
SM_CYMINSPACING |
Высота ячейки координатной сетки для свернутых окон в пикселях. Это значение всегда больше или равно SM_CYMINIMIZED. |
||||||||||||||||||
SM_CXMINTRACK |
Заданная по умолчанию минимальная ширина окна с заголовком и рамками установления размеров. |
||||||||||||||||||
SM_CYMINTRACK |
Заданная по умолчанию минимальная высота окна с заголовком и рамками установления размеров. |
||||||||||||||||||
SM_CXSCREEN |
Ширина экрана в пикселях. |
||||||||||||||||||
SM_CYSCREEN |
Высота экрана в пикселях. |
||||||||||||||||||
SM_CXSIZE |
Ширина кнопок заголовка в пикселях. |
||||||||||||||||||
SM_CYSIZE |
Высота кнопок заголовка в пикселях. |
||||||||||||||||||
SM_CXSIZEFRAME |
Ширина в пикселях рамки окна, которое имеет стиль WS_THICKFRAME. |
||||||||||||||||||
SM_CYSIZEFRAME |
Высота в пикселях рамки окна, которое имеет стиль WSJTHICKFRAME. |
||||||||||||||||||
SM CXSMICON |
Рекомендуемая ширина малой пиктограммы в пикселях. |
||||||||||||||||||
SM_CYSMICON |
Рекомендуемая высота малой пиктограммы в пикселях. |
||||||||||||||||||
SM_CXSMSIZE |
Ширина малых кнопок заголовка в пикселях. |
||||||||||||||||||
SM_CYSMSIZE |
Высота малых кнопок заголовка в пикселях. |
||||||||||||||||||
SM_CXVIRTUALSCREEN |
Ширина виртуального экрана в пикселях. |
||||||||||||||||||
SM_CYVIRTUALSCREEN |
Высота виртуального экрана в пикселях. |
||||||||||||||||||
SM_CXVSCROLL |
Ширина вертикальной линейки прокрутки в пикселях. |
||||||||||||||||||
SM_CYVSCROLL |
Высота растрового изображения стрелки на вертикальной линейке прокрутки в пикселях. |
||||||||||||||||||
SM CXHSCROLL |
Ширина растрового изображения стрелки на горизонтальной линейке прокрутки в пикселях. |
||||||||||||||||||
SM_CYHSCROLL |
Высота горизонтальной линейки прокрутки в пикселях. |
||||||||||||||||||
SM_CXHTHUMB |
Заданная по умолчанию ширина ползунка на горизонтальной линейке прокрутки в пикселях. |
||||||||||||||||||
SM_CYVTHUMB |
Заданная по умолчанию высота ползунка на вертикальной линейке прокрутки в пикселях. |
||||||||||||||||||
SM_CYCAPTION |
Высота нормальной области заголовка в пикселях. |
||||||||||||||||||
SM_CYKANJIWINDOW |
Для версии Windows с двухбайтовым набором символов (DBCS) высота окна японских иероглифов кандзи в нижней части экрана. |
||||||||||||||||||
SM_CYMENU |
Высота однострочной строки меню в пикселях. |
||||||||||||||||||
SM_CYSMCAPTION |
Высота малого заголовка в пикселях. |
||||||||||||||||||
SM_DBCSENABLED |
TRUE, если установлена версия пользовательской программы USER.EXE для двухбайтового набора символов (DBCS); в ином случае — FALSE. |
||||||||||||||||||
SM_DEBUG |
TRUE, если установлена отладочная версия пользовательской программы USER.EXE; в ином случае — FALSE. |
||||||||||||||||||
SMJMMENABLED |
TRUE, если разрешены средства диспетчера метода ввода/ редактора метода ввода (Input Method Manager/Input Method Editor); в ином случае — FALSE. |
||||||||||||||||||
SM_HIGHCONTRAST |
TRUE, если пользователь нуждается в отображении визуальной информации с высоким контрастом между основным и фоновым изображением; в ином случае — FALSE. |
||||||||||||||||||
SM_KEYBOARDPREF |
TRUE, если пользователю необходимо использовать клавиатуру вместо мыши и требуется, чтобы в приложении были отображены клавиатурные интерфейсы, которые при других обстоятельствах были бы скрыты; в ином случае — FALSE. |
||||||||||||||||||
SM_MENUDROP ALIGNMENT |
TRUE, если всплывающие меню выравниваются по правому краю относительно соответствующего элемента строки меню; FALSE, если они выравниваются по левому краю. |
||||||||||||||||||
SM_MIDEASTENABLED |
TRUE, если в системе разрешено применение еврейского или арабского языков. |
||||||||||||||||||
SM_MOUSEPRESENT |
TRUE, если мышь установлена; в ином случае — FALSE. |
||||||||||||||||||
SM MOUSEWHEELPRESENT |
TRUE, если установлена мышь с колесиком; в ином случае — FALSE. |
||||||||||||||||||
SM_NETWORK |
Если сеть доступна, установлен наименьший значащий бит; в ином случае он очищен. Другие биты зарезервированы для использования в будущем. |
||||||||||||||||||
SM_PENWINDOWS |
TRUE, если установлены расширения Microsoft Windows для работы с пером; в ином случае — FALSE. |
||||||||||||||||||
SM_REMOTESESSK>N |
TRUE, если вызывающий процесс связан с сеансом клиента терминальных служб Terminal Services; в ином случае — FALSE. |
||||||||||||||||||
SM_SAMEDISPLAYFORMAT |
TRUE, если все устройства отображения имеют одинаковый формат цвета; в ином случае — FALSE. |
||||||||||||||||||
SM_SCREENREADER |
TRUE, если выполняется утилита обзора- экрана, в ином случае — FALSE. Утилита обзора экрана направляет текстовую информацию на такое устройство вывода, как синтезатор речи или дисплей Брайля (для слепых). Если этот флажок установлен, приложение должно представить пользователю информацию в текстовом виде в тех ситуациях, когда при иной установке флажка оно представило бы информацию графически. |
||||||||||||||||||
SM_SECURE |
TRUE, если применяются средства защиты; в ином случае — FALSE. |
||||||||||||||||||
SM_SHOWSOUNDS |
TRUE, если пользователю необходимо, чтобы приложение представило информацию в визуальной форме в тех ситуациях, когда при иной установке флажка оно представило бы информацию только в звуковой форме; в ином случае — FALSE. |
||||||||||||||||||
SM_SLOWMACHINE |
TRUE, если компьютер имеет процессор с низкой производительностью; в ином случае — FALSE. |
||||||||||||||||||
SM_SWAPBUTTON |
TRUE, если значения левой и правой кнопок мыши изменены на противоположные; в ином случае — FALSE. |
||||||||||||||||||
SM_XVIRTUALSCREEN |
Левая сторона виртуального экрана. |
||||||||||||||||||
SM_YVIRTUALSCREEN |
Верхняя часть виртуального экрана. |
||||||||||||||||||
Возвращаемое значение |
|||||||||||||||||||
int. Затребованный параметр системы или конфигурации. |
|||||||||||||||||||
Включаемый файл |
winuser.h |
||||||||||||||||||
См. также |
GetDeviceCaps |
||||||||||||||||||
Пример |
См. пример для функции GetWindowDC. |
||||||||||||||||||
GetViewportExtEx • Windows 98 • Windows 2000 |
|||||||||||||||||||
Описание |
Функция GetViewportExtEx выбирает экстенты х и у текущей области про» смотра для контекста устройства (DC). Режимы отображения MM_ISOTROPIC и MM_ANISOTROPIC позволяют задать логическую систему координат контекста устройства с любым произвольным коэффициентом масштабирования по отношению к физическому устройству. Для определения текущего масштабирования одновременно применяются функции GetViewportExtEx и GetWindowExtEx. Коэффициент масштабирования представляет собой отношение экстента области просмотра к экстенту окна. |
||||||||||||||||||
Синтаксис |
BOOL GetViewportExtEx( HDC hDC, LPSIZE IpSize ) |
||||||||||||||||||
Параметры |
|||||||||||||||||||
hDC |
HDC. Дескриптор контекста устройства. |
||||||||||||||||||
IpSize |
LPSIZE. Указатель на структуру SIZE. В эту структуру будут помещен значения экстентов * и у в единицах длины устройства. |
||||||||||||||||||
Возвращаемое значение |
BOOL. В случае успешного выполнения — TRUE; в ином случае возвр»1 щаемое значение — FALSE. |
||||||||||||||||||
Включаемый файл |
wingdi.h |
||||||||||||||||||
См. также |
GetWindowExtEx, GetViewportOrgEx |
||||||||||||||||||
Пример |
См. пример для функции SetMapMode, |
||||||||||||||||||
GetViewportOrgEx • Windows 98 • Windows 2000 |
|||||||||||||||||||
Описание |
Функция GetViewportOrgEx выбирает координаты х и у начала координа области просмотра для контекста устройства (DC). Система Windows пс зволяет применять два смещения к началу координат (точка с координатами 0,0) логической системы координат. Функция SetWindowOrgEx устанавливает первое смещение, которое называется "началом координат окна". Функция SetViewportOrgEx устанавливает второе смещение, которое называется "началом координат области просмотра". Начало координат области просмотра располагается относительно начала координат окна, поэтому начало координат области просмотра можно рассматривать как смещение по отношению к другому смещению. |
||||||||||||||||||
Синтаксис |
BOOL GetViewportOrgEx( HDC hDC, LPPOINT IpPoint ) |
||||||||||||||||||
Параметры |
|||||||||||||||||||
hDC |
HDC. Дескриптор контекста устройства. |
||||||||||||||||||
IpPoint |
LPPOINT. Указатель на структуру POINT, которая принимает координаты начала координат. |
||||||||||||||||||
Возвращаемое значение |
BOOL. В случае успешного выполнения — TRUE; в ином случае возвращаемое значение — FALSE. |
||||||||||||||||||
Включаемый файл |
wingdi.h |
||||||||||||||||||
См. также |
GetWindowOrgEx, GetViewportExtEx |
||||||||||||||||||
Пример |
В следующем примере, показанном на рис. 12.4, создается окно с приватным контекстом устройства (для класса окна указан стиль CS_OWNDC). При получении каждого сообщения WM_SIZE программа в режиме отображения MM ISOTROPIC переустанавливает коэффициенты масштабирования логического устройства, а также начало координат окна и начало координат области просмотра. Начало координат области просмотра совмещается с левым нижним углом окна, а начало координат окна сдвигается на 10 единиц длины. Поскольку после вызова функции SetWindowOrgEx начало координат окна всегда сдвигается на 10 единиц длины и в горизонтальном, и в вертикальном направлениях, создается впечат- |
||||||||||||||||||
Уважаемый посетитель!
Чтобы распечатать файл, скачайте его (в формате Word).
Ссылка на скачивание - внизу страницы.