Интерфейс графических устройств, страница 3

Таблица 12. 1. Функции интерфейса графических устройств

Функция

Назначение

AddForrtMemResourceEx

AddFontResource

AddFontResourceEx

Загружает ресурс шрифта из файла в систему в качестве приватного

CancelDC

Отменяет операцию, ожидающую выполнения в контексте устройства

ChangeDisplaySettings

Изменяет параметры настройки экрана

CreateCompatibleDC

Создает контекст устройства памяти, совместимый с данным

CreateDC

Создает контекст устройства для физического устройства (например,

CreateFont

Создает логический шрифт, готовый к использованию для вывода текста

CreateFontindirect

Создает логический шрифт из структуры  LOGFONT

CreateIC

Выбирает контекст устройства для физического устройства, но только в целях получения информации

CreateScalableFontResource

Создает файл ресурса для масштабируемого шрифта

DeleteOC

Удаляет контекст устройства, созданный с применением функции CreafeDC или CreateIC

DPtoLP

Преобразует для заданной точки координаты устройства в логические координаты

EnumDisplaySettings

Выбирает информацию о графических режимах устройства отображения

EnumFontFamiliesEx

Перечисляет все шрифты, которые соответствуют характеристикам шрифта, указанным в структуре LOGFONT

GetDC

Выбирает дескриптор контекста устройства для клиентской области окна

GetDCEx

Выбирает дескриптор контекста устройства для окна

GetDCOrgEx

Определяет экранные координаты для логического начала координат контекста устройства

GetOeviceCaps

Определяет возможности устройства

GetFontData

Выбирает данные метрики шрифта TrueType

GetFonttanguagelnfo

Определяет языковую принадлежность шрифта, выбранного в настоящее время для контекста устройства отображения

GetGraphicsMode

Определяет текущий графический режим устройства

GetMapMode

Определяет режим отображения, используемый контекстом устройства

GetSystemMetrics

Возвращает данные о размерах разных элементов окна на дисплее

GetViewportExtEx

Возвращает экстенты X и у текущей области просмотра для контекста устройства

GetViewportOrgEx

Возвращает координаты х и у начала координат области просмотра для контекста устройства

GetWindowDC

Возвращает данные о контексте устройства для всего окна

GeiWindowExtEx

Возвращает экстенты X и у окна для контекста устройства

GetWindowOrgEx

Выбирает координаты х и у начала координат окна для контекста устройстве

LPtoDP

Преобразует логические координаты точки в координаты устройства

OffsetViewportOrgEx

Изменяет начало координат области просмотра контекста   устройства с использованием горизонтальных и вертикальных смещений

OffsetWindowOrgEx

Изменяет начало координат окна контекста устройства с  использованием горизонтальных и вертикальных смещений

PfVisible

Определяет, находится ли точка внутри текущей области отсечения

RectVisible                                 

Определяет, имеет ли прямоугольная область точки внутри текущей области отсечения

ReJeaseDC                                 

Освобождает контекст устройства

RemoveFontMemResourceEx

Удаляет из системы шрифт, ранее загруженный из файла отображения памяти

RemoveFontResource              

Удаляет из системы шрифт и освобождает всю память, связанную с этим шрифтом

RemoveFontResourceEx          

Удаляет из системной таблицы шрифты, находящиеся в указанном файле

RestoreOC                                  

Восстанавливает старый контекст устройства, сохраненный с применением функции SaveDC

SaveDC                                        

Сохраняет контекст устройства для дальнейшего использования

ScaleViewportExtEx                 

Масштабирует область просмотра контекста устройства

ScaleWindowExtEx                  

Масштабирует экстенты окна контекста устройства

SelectObject                             

Выбирает объект в контекст устройства

SetGraphicsMode                    

Устанавливает графический режим для контекста устройства

SetMapMode                             

Изменяет режим отображения контекста устройства

SetMapperFlags                       

Определяет способ корректировки функциями CreateFont и CreateFontindirect размеров шрифта, не указанных в данных шрифта

SetViewportExtEx                      

Устанавливает экстенты х и у области просмотра для контекста устройства

SetViewportOrgEx                    

Устанавливает начало координат области просмотра контекста устройства

SetWindowExtEx                      

Устанавливает экстенты х и у окна для контекста устройства

SetWindowOrgEx                    

Устанавливает начало координат окна контекста устройства

WindowFromDC                       

Возвращает дескриптор окна, связанного с контекстом устройства отображения

AddFontMemResourceEx                    •   Windows 98   • Windows 2000

Описание

Функция AddFontMemResourceEx вводит в систему ресурс шрифта, извлеченный из образа, хранящегося в памяти. Эта функция позволяет приложению получить шрифт, который внедрен в документ или Web-страницу. Шрифты, введенные с помощью этой функции, всегда являются приватными по отношению к процессу, который вызвал функцию, и не могут '.   участвовать в перечислении.Образ в памяти может содержать несколько шрифтов. В случае успешного выполнения этой функции, параметр pcFonts представляет собой указатель на переменную типа DWORD, которая содержит число шрифтов, добавленных в систему.

Синтаксис

HANDLE AddFontMemResourceEx( PVOID pbFont, DWORD dwFoitt, PVOID pdv, DWORD* pcFonts )

Параметры

pbFont

PVOID. Указатель на ресурс шрифта.

dwFont

DWORD. Число байтов в ресурсе шрифта, который указан параметром pbFont.

pdv

PVOID. Зарезервированное значение; установлено равным нулю.

pcFonts

DWORD*. Указатель на переменную, которая принимает число установленных шрифтов.

Возвращаемое значение

HANDLE. В случае успешного выполнения возвращается дескриптор добавленного шрифта. Этот дескриптор служит уникальным идентификатором для установленных в системе шрифтов. В случае неудачного завершения возвращаемое значение — нуль.

Включаемый файл

wingdi.h

См. также

ReraoveFontMemResourceEx

AddFontResource                              * Windows 98   * Windows 2000

Описание

Функция AddFontResource вводит ресурс шрифта из файла в таблицу шрифтов Windows. Таблица шрифтов содержит данные о шрифтах, доступных для приложений Windows.

Синтаксис

int AddFontResource( LPCTSTR IpszFilename )

Параметры

IpszFilename

LPCTSTR. Указатель на символьную строку с нулевым символом в конце, которая содержит допустимое имя файла шрифта. В качестве имени файла может быть указан файл .FON ресурса шрифта, файл .FNT первичного растрового шрифта, файл .TTF первичного шрифта TrueType, файл .ТТС коллекции шрифтов TrueType, файл .OTF шрифта OpenType PostScript, файл .МММ ресурса шрифта Typel с несколькими базовыми шрифтами, файл .PFB двоичного представления шрифта Туре 1 , файл .PFM метрики шрифта Туре 1 или файл .FOT ресурса TrueType. Если в систему нужно ..ввести шрифт, данные которого должны быть получены из нескольких файлов ресурса, в качестве этого параметра необходимо указать имена всех этих файлов, разделив их символом канала (|).

Возвращаемое значение

int. В случае успешного выполнения — число добавленных шрифтов; в ином случае возвращаемое значение — 0.

Включаемый файл

wingdi.h

См. также

RemoveFontResource, FindResource, AddFontResourceEx

Соответствующие сообщения

Пример

Окнам верхнего уровня должно быть отправлено сообщение WM_FONTCHANGE, чтобы работающие программы получили информацию об изменении состава доступных шрифтов. В следующем примере показано, как ввести шрифт TrueType в систему при запуске приложения и удалить его после завершения работы приложения. Для извещения всех программ верхнего уровня о появлении нового шрифта применяется функция SendMessage.

AddFontResourceEx                             •  Windows 98   • Windows 2000

Описание

Функция AddFontResourceEx аналогична функции AddFontResource, за исключением того, что добавленные шрифты могут быть отмечены как приватные и не участвующие в перечислении.

Синтаксис

int AddFontResourceEx( LPCTSTR IpszHIename, DWORD dwFl, PVOID pdv )

Параметры

IpszFilename

LPCTSTR. Указатель на символьную строку с нулевым символом в конце, которая содержит допустимое имя файла шрифта. Дополнительная информация представлена в описании аналогичного параметра функции AddFontResource.

dwFl

DWORD. При значении этого параметра, равном FR_PRIVATE, новый шрифт устанавливается как приватный по отношению к вызывающему процессу. Если имя нового шрифта совпадает с именем общедоступного шрифта, будет выбран приватный шрифт. При значении этого параметра, равном FR_NOT_ENUM, ни один процесс, включая вызывающий, не может получить доступ к шрифту с помощью функции перечисления.

pdv

PVOID. Зарезервированное значение, установлено равным нулю.

Возвращаемое значение

int. В случае успешного выполнения — число добавленных шрифтов; в ином случае возвращаемое значение — 0.

Включаемый файл

wingdi.h

См. также

RemoveFontResourceEx, FindResource

CancelDC                                          • Windows 98   • Windows 2000

Описание

Функция CancelDC отменяет все операции, ожидающие выполнения в указанном контексте устройства (DC). Эта функция применяется в мно-гонитевых приложениях для отмены продолжительных операций рисования. Если одна нить инициализировала продолжительную операцию рисования, другая нить может отменить эту операцию, вызвав указанную функцию. В случае отмены операции затронутая нить возвращает сообщение об ошибке, и результат выполняемой ею операции рисования является неопределенным.

Синтаксис

BOOL CancelDC( HDC hDC )

Параметры

hDC

HDC. Контекст устройства (DC), в котором должны быть отменены операции, ожидающие выполнения.

Возвращаемое значение

BOOL В случае успешного выполнения — возвращаемое значение — TRUE; в ином случае возвращаемое значение — FALSE.

Включаемый файл

wingdi.h

См. также

CreateThread

ChangeDisplaySettings                       • Windows 98   • Windows 2000

Описание

Функция ChangeDisplaySettings изменяет установки дисплея, переводя его в указанный графический режим. Применение в качестве параметра этой функции структуры DEVMODE, заполненной с помощью функции

EnumDisplaySettings, позволяет обеспечить наличие в структуре DEVMODE только значений, которые поддерживаются драйвером дисплея. При таком динамическом изменении режима дисплея всем работающим приложениям направляется сообщение WM_DISPLAYCHANGE.

Синтаксис

LONG ChangeDisplaySettings( LPDEVMODE IpDevMode, DWORD dwfJags)

Параметры

IpDevMode

LPDEVMODE. Указатель на структуру DEVMODE с описанием графического режима, на который должен переключиться дисплей. В качестве начального значения члена dmSize должен быть установлен размер структуры DEVMODE в байтах. При смене режима используются значения членов dmBitsPerPel, dmPelsWidth, dmPelsHeight, dmDisplayFlags, dmPosition и dmDvsplay frequency. Определение структуры DEVMODE приведено в описании функции CreateDC далее в этой главе. Если этот параметр установлен равным NULL, применяются значения параметров, хранимые в системном реестре. Это — самый простой способ возвратиться в режим. предусмотренный по умолчанию, после его динамического изменения.

dwFlags

DWORD. Указывает, как должен измениться графический режим. Этот параметр может иметь одно или несколько значений, перечисленных в табл. 12.2.

Значение

Описание

0

Должен измениться графический режим для текущего экрана.

CDS_FULLSCREEN

Экран временно изменяется. При переходе на другой рабочий стол режим не переустанавливается.

CDS_GLOBAL

Установки параметров сохраняются в области глобальных установок параметров с тем, чтобы эти изменения распространялись на всех пользователей компьютера. В ином случае изменяются только установки для данного пользователя. Этот флажок является действительным, только если он указан с флажком CDS_UPDATEREGISTRY.

CDS_NOREST

Установки параметров сохраняются в системном реестре, но не вступают в силу. Этот флажок действителен, только если он указан с флажком CDS_UPDATEREGISTRY.

CDS_RESET

Установки параметров изменяются, даже если затребованные установки совпадают с текущими установками.

CDS SET PRIMARY

Данное устройство становится основным устройством.

CDS_TEST

Система проверяет, может ли быть установлен затребованный графический режим.

CDS_UPDATEREGISTRY

Графический режим для текущего экрана изменяется динамически и установки графического режима в системном реестре обновляются.