структура GETINFO_GLYPHSTRING (printoem.h)
Структура GETINFO_GLYPHSTRING используется в качестве входных данных для функции обратного вызова UNIFONTOBJ_GetInfo.
Синтаксис
typedef struct _GETINFO_GLYPHSTRING {
DWORD dwSize;
DWORD dwCount;
DWORD dwTypeIn;
PVOID pGlyphIn;
DWORD dwTypeOut;
PVOID pGlyphOut;
DWORD dwGlyphOutSize;
} GETINFO_GLYPHSTRING, *PGETINFO_GLYPHSTRING;
Члены
dwSize
Задает размер структуры GETINFO_GLYPHSTRING в байтах. Это значение предоставляется вызывающим UNIFONTOBJ_GetInfo.
dwCount
Указывает количество элементов в массивах, на которые указывает pGlyphIn и pGlyphOut. Это значение предоставляется вызывающим UNIFONTOBJ_GetInfo.
dwTypeIn
Задает тип массива описателя глифа, на который указывает pGlyphIn. Допустимые значения приведены следующим образом:
Ценность | Определение |
---|---|
TYPE_GLYPHHANDLE | Элементы массиваpGlyphIn имеют тип HGLYPH или обрабатываются глифом шрифта устройства. Для этого значения dwTypeInдопустимые значения для dwTypeOut TYPE_UNICODE или TYPE_TRANSDATA. |
TYPE_GLYPHID | Элементы массива pGlyphIn имеют тип DWORD и содержат идентификаторы глифов для скачанных глифов шрифтов TrueType. Для этого значения dwTypeInдопустимые значения для dwTypeOut являются TYPE_UNICODE или TYPE_GLYPHHANDLE. |
Предоставляется вызывающим UNIFONTOBJ_GetInfo.
pGlyphIn
Указатель на массив описателей глифов. Тип элемента массива указывается dwTypeIn. Это значение предоставляется вызывающим UNIFONTOBJ_GetInfo.
dwTypeOut
Указывает тип массива описателя глифа, на который указывает pGlyphOut. Допустимые значения приведены следующим образом:
Ценность | Определение |
---|---|
TYPE_GLYPHHANDLE | Элементы массива pGlyphOut имеют тип HGLYPH или обрабатывают глиф шрифта устройства. Это значение допустимо, только если dwTypeIn задано значение TYPE_GLYPHID. |
TYPE_TRANSDATA | Элементы массива pGlyphOut типа TRANSDATA. Это значение допустимо, только если dwTypeIn задано значение TYPE_GLYPHHANDLE. |
TYPE_UNICODE | Элементы массива pGlyph имеют тип WCHAR. Это значение допустимо, если dwTypeIn задано значение TYPE_GLYPHHANDLE или TYPE_GLYPHID. |
Предоставляется вызывающим UNIFONTOBJ_GetInfo.
pGlyphOut
Вызывающий указатель на пустой массив описателей глифов. Массив заполняется функцией обратного вызова Unidrv UNIFONTOBJ_GetInfo. Тип элемента массива указывается dwTypeOut. Этот указатель предоставляется вызывающим UNIFONTOBJ_GetInfo.
dwGlyphOutSize
Указывает размер буфера в байтах, на который указывает pGlyphOut. Этот элемент используется только в том случае, если dwTypeIn задано значение TYPE_GLYPHHANDLE и dwTypeOut имеет значение TYPE_TRANSDATA. Дополнительные сведения см. в следующем разделе "Примечания".
Замечания
Чтобы преобразовать массив описителей глифов из одного типа в другой, подключаемый модуль отрисовки может указать адрес структуры GETINFO_GLYPHSTRING при вызове функции обратного вызова Unidrv UNIFONTOBJ_GetInfo.
Если преобразование выполняется из TYPE_GLYPHHANDLE в TYPE_TRANSDATA, необходимо дважды вызвать UNIFONTOBJ_GetInfo.
Перед первым вызовом UNIFONTOBJ_GetInfoподключаемый модуль отрисовки заполняет dwSize, dwCount, dwTypeInи элементы pGlyphIn и задает для элемента dwGlyphOutSize значение нулю.
После возврата UNIFONTOBJ_GetInfo элемент dwGlyphOutSize содержит размер буфера, необходимого для хранения преобразованной строки.
Подключаемый модуль выделяет блок памяти размера, полученного в элементе dwGlyphOutSize, задает элемент pGlyphOut, указывающий на этот блок памяти, и вызывает UNIFONTOBJ_GetInfo еще раз. Затем UNIDRV преобразует строку из TYPE_GLYPHHANDLE в TYPE_TRANSDATA.
Значения, указанные подключаемым модулем отрисовки для элементов dwTypeInи pGlyphIn, обычно являются теми, которые ранее были получены в качестве dwTypeи параметров pGlyph методу IPrintOemUni::OutputCharStr.
Требования
Требование | Ценность |
---|---|
заголовка | printoem.h (include Printoem.h) |