GetTextMetrics與GetTextExtent的區別

 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之前將字體選進設備上下文中是很重要的,否則計算高度和寬度時將依據

 

系統字體,由此得出的結果當然是不正確的。

 

如果有更好的補充,希望大家給予回覆,謝謝!

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章