CDC::GetTextMetrics 是 MFC(Microsoft Foundation Classes)中的一个公共方法,用于获取当前设备上下文(Device Context,简称 DC)的字体信息。
BOOL GetTextMetrics(LPTEXTMETRIC lptm) const;

这个方法返回一个布尔值,指示是否成功获取字体信息。如果成功,lptm 将包含字体的度量信息,如字符高度、平均字符宽度等。

参数说明:
  •  lptm: 一个指向 TEXTMETRIC 结构的指针,用于接收字体的度量信息。


TEXTMETRIC 结构包含了有关字体的详细信息,例如:
typedef struct tagTEXTMETRIC {
    LONG tmHeight;
    LONG tmAscent;
    LONG tmDescent;
    LONG tmInternalLeading;
    LONG tmExternalLeading;
    LONG tmAveCharWidth;
    LONG tmMaxCharWidth;
    LONG tmWeight;
    LONG tmOverhang;
    LONG tmDigitizedAspectX;
    LONG tmDigitizedAspectY;
    TCHAR tmFirstChar;
    TCHAR tmLastChar;
    TCHAR tmDefaultChar;
    TCHAR tmBreakChar;
    BYTE tmItalic;
    BYTE tmUnderlined;
    BYTE tmStruckOut;
    BYTE tmPitchAndFamily;
    BYTE tmCharSet;
} TEXTMETRIC;

使用示例:
CDC dc; // 假设已经创建了一个 CDC 对象
TEXTMETRIC tm;
BOOL bResult = dc.GetTextMetrics(&tm);

if (bResult) {
    // 在这里,tm 包含字体的详细度量信息
} else {
    // 获取字体信息失败的处理
}

在这个示例中,tm 结构将包含有关当前设备上下文中选定的字体的详细度量信息。


转载请注明出处:http://www.zyzy.cn/article/detail/16954/MFC/CDC