Функция DrvGetGlyphMode (winddi.h)
Функция DrvGetGlyphMode сообщает GDI, как кэшировать сведения о глифах.
Синтаксис
ULONG DrvGetGlyphMode(
[in] DHPDEV unnamedParam1,
[in] FONTOBJ *unnamedParam2
);
Параметры
[in] unnamedParam1
Обработка структуры PDEV физического устройства.
[in] unnamedParam2
Указатель на структуру FONTOBJ , которую можно запрашивать для поиска размера шрифта, преобразования и других атрибутов шрифта.
Возвращаемое значение
DrvGetGlyphMode возвращает одно из следующих значений:
Код возврата | Описание |
---|---|
|
GDI должен кэшировать все данные глифов для этого шрифта. |
|
Устройство кэширует шрифты самостоятельно, поэтому GDI должен кэшировать только дескрипторы глифов для этого шрифта. |
|
GDI должен кэшировать структуры PATHOBJ для этого шрифта. |
Комментарии
GDI вызывает подпрограмму DrvGetGlyphMode драйвера для определения диапазона сведений о шрифтах, которые должны быть кэшированы для определенного шрифта; То есть DrvGetGlyphMode определяет, что GDI хранит в своем кэше шрифтов. Устройство, которое кэширует шрифты самостоятельно, должно возвращать FO_HGLYPHS, чтобы свести к минимуму требования к хранилищу шрифта.
GDI вызывает DrvGetGlyphMode для каждой реализации шрифта. Например, драйверу может потребоваться скачать структуру для точек размером больше 12 точек, а растровые изображения — для шрифтов меньшего размера. Однако GDI оставляет за собой право отклонить этот запрос.
Чтобы определить фактическую форму глифов, драйвер должен проверка бит RASTER_FONTTYPE элемента flFontType структуры FONTOBJ. Если этот бит задан, GDI отправляет растровые изображения; в противном случае отправляет структуры PATHOBJ .
Во время вызова DrvGetGlyphMode связанный FONTOBJ не полностью работает. GDI гарантирует только правильность структуры IFIMETRICS и преобразования от ional-to-device.
DrvGetGlyphMode — это необязательная функция драйвера. Если эта функция не указана, GDI по умолчанию будет хранить растровые шрифты.
Требования
Требование | Значение |
---|---|
Целевая платформа | Персональный компьютер |
Верхняя часть | winddi.h (включая Winddi.h) |