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 | TpGlyphIn 数组元素的类型为 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时,才使用此成员。 有关详细信息,请参阅以下“备注”部分。
言论
若要将字形说明符数组从一种类型转换为另一种类型,呈现插件可以在调用 Unidrv 的 UNIFONTOBJ_GetInfo 回调函数时提供GETINFO_GLYPHSTRING结构的地址。
如果从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) |