CDC::GetGlyphOutline
检索概述曲线或位图概述字符的当前字体。
DWORD GetGlyphOutline(
UINT nChar,
UINT nFormat,
LPGLYPHMETRICS lpgm,
DWORD cbBuffer,
LPVOID lpBuffer,
const MAT2* lpmat2
) const;
参数
nChar
指定信息将返回的字符。nFormat
指定函数将返回信息的格式。它可以是下列值之一: 0值
含义
GGO_BITMAP
返回标志符号位图。当函数返回时,缓冲区指向由 lpBuffer 包含行在双字边界开始的1位/像素位图。
GGO_NATIVE
使用组件的度量单位,返回曲线数据点。光栅器本机格式。当该值指定时,在 lpmat2 指定的所有变换被忽略。
当 nFormat 的值为0时,函数填充一 GLYPHMETRICS 结构,但不返回标志符号轮廓数据。
lpgm
指向 GLYPHMETRICS 在字符格描述标志符号位置的结构。cbBuffer
指定函数复制有关概述字符的消息缓冲区的大小。如果此值为0,并 nFormat 参数是 GGO_BITMAP 或 GGO_NATIVE 值,则函数返回缓冲区所需的大小。lpBuffer
指向函数复制有关概述字符的信息的缓冲区。如果 nFormat 指定 GGO_NATIVE 值,其中 TTPOLYGONHEADER 和 TTPOLYCURVE 结构形式,信息复制。如果此值为 NULL,并 nFormat 是 GGO_BITMAP 或 GGO_NATIVE 值,则函数返回缓冲区所需的大小。lpmat2
指向 MAT2 包含字符的一个变换矩阵的结构。即使 GGO_NATIVE 值为 nFormat,指定此参数不能是 NULL。
返回值
范围中,字节对于检索的信息,请 cbBuffer 为0或 lpBuffer,需要使用缓冲区是 NULL。否则,它是一个正值,如果函数运行成功,或者– 1,则出现错误。
备注
应用程序可以旋转以位图格式检索来指定2 x 2变换矩阵中的。lpmat2点的数据结构。
标志符号轮廓返回作为一系列轮廓线。每个轮廓线由许多 TTPOLYCURVE 结构后面的 TTPOLYGONHEADER 结构定义的要求描述该用例。所有点的形式返回 POINTFX 结构并表示绝对位置,不相对于移动。起点为由 TTPOLYGONHEADER 结构的 pfxStart 成员是轮廓线的轮廓开始的位置。下面的 TTPOLYCURVE 结构可以是一条记录或样条记录。一条记录一系列点;行绘制在点之间描述字符的轮廓。样条记录表示TrueType使用的二次贝塞尔样条曲线(即b)。
要求
Header: afxwin.h