GetTextMetrics和GetTextExtent用法區別

總結寫在前面:

1、GetTextMetrics : 獲取程序當前字體信息,並且存放到TEXTMETRIC結構體中。

2、GetTextExtent : 獲取指定字符串的高度和寬度。(GetTextExtent(str))。

 

一、GetTextMetrics

             函數原型:                           BOOL GetTextMetrics(LPTEXTMETRIC lptm);

             參數:                                  lptm:指向結構TEXTMETRIC的指針,該結構用於獲得字體信息。

             TEXTMETRIC結構體

                               typedef struct tagTEXTMETRIC

                              { 

                                             LONG tmHeight; //字符高度

                                             LONG tmAscent; //字符上部高度(基線以上)

                                             LONG tmDescent; //字符下部高度(基線以下)

                                             LONG tmInternalLeading, //由tmHeight定義的字符高度的頂部空間數目

                                             LONG tmExternalLeading, //夾在兩行之間的空間數目

                                             LONG tmAveCharWidth, //平均字符寬度

                                             LONG tmMaxCharWidth, //最寬字符的寬度

                                             LONG tmWeight; //字體的粗細輕重程度

                                             LONG tmOverhang, //加入某些拼接字體上的附加高度

                                             LONG tmDigitizedAspectX, //字體設計所針對的設備水平方向

                                             LONG tmDigitizedAspectY, //字體設計所針對的設備垂直方向

                                             BCHAR tmFirstChar; //爲字體定義的第一個字符

                                             BCHAR tmLastChar; //爲字體定義的最後一個字符

                                             BCHAR tmDefaultChar; //字體中所沒有字符的替代字符

                                             BCHAR tmBreakChar; //用於拆字的字符

                                             BYTE tmItalic, //字體爲斜體時非零

                                             BYTE tmUnderlined, //字體爲下劃線時非零

                                             BYTE tmStruckOut, //字體被刪去時非零

                                             BYTE tmPitchAndFamily, //字體間距(低4位)和族(高4位)

                                             BYTE tmCharSet; //字體的字符集

                               } TEXTMETRIC;

 

 

二、GetTextExtent

             函數原型(有兩個):     CSize GetTextExtent( const CString& str) ;    //參數爲一個字符串

                                                       CSize GetTextExtent(LPCTSTR lpszString, int nCount) ;  //參數爲字符串指針和字符串長度

             返回值:返回字符串尺寸,CSize類

             SIZE

                              typedef struct tagSIZE

                              {

                                            LONG cx;

                                            LONG cy;

                              } SIZE;

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