GetTextMetrics:獲取當前字體的信息
GetTextExtent:獲取特定的字符串在屏幕上所佔的寬度和高度
CDC::GetTextMetrics
作用:
返回當前設備描述表中的當前所用的字體的信息
函數原型:
BOOL GetTextMetrics(
LPTEXTMETRIC lpMetrics
) const;
參數:
lpMetrics (是一個指針)
返回指向TEXTMETRIC 結構的一個數據。
返回值:
非零值成功
要求:
包含頭文件: afxwin.h
CDC::GetTextExtent
Call this member function to compute the width and height of a line of text using the current font to determine the dimensions.
調用這個函數,返回用當前字體寫下的一行字符串的高度和寬度
函數原型:
CSize GetTextExtent(
LPCTSTR lpszString,
int nCount
) const;
CSize GetTextExtent(
const CString& str
) const;
參數
lpszString
指向一個字符串指針,也可以傳遞一個字符串對象。
nCount
指定字符在字符串中的數目
str
一個字符串對象,包含指定的字符。
返回值:
以邏輯單位返回字符串的尺寸,保存在一個CSize對象中
要求:包含頭文件 afxwin.h
如果使用的不是系統字體而是其他字體,則在調用GetTextExtent之前將字體選進設備上下文中是很重要的,否則計算高度和寬度時將依據
系統字體,由此得出的結果當然是不正確的。
如果有更好的補充,希望大家給予回覆,謝謝!