logfont成員含義
long lfheight; // 指定邏輯單位的字元或者字元元高度,0預設值。
long lfwidth; // 指定邏輯單位的字型字元的平均寬度。
long lfescapement; // 指定每行文字輸出時相對於裝置x軸的角度,其單位為1/10度(整行字符)。
long lforientation; // 指定字元基線相對於裝置x軸的角度,其單位為1/10度(單個字元)。
long lfweight; // 指定字型的重量(粗細),範圍0~1000,0預設, 400正常,700粗體(常用fw_***x定義的列舉)。
byte lfitalic; // 此值為true時,字型為斜體。
byte lfunderline; // 此值為true時,字型帶下劃線。
byte lfstrikeout; // 此值為true時,字型帶刪除線。
byte lfcharset; // 指定所使用的字符集,如gb2312_charset,chinesebig5_charset等。
byte lfoutprecision; // 指定輸出精度(列舉out_***x),它定義了輸出與所要求的字型相接近的程度。
byte lfclipprecision; // 指定剪輯精度(列舉clip_***x),它定義了當字元的一部分超過剪輯區域時對字元的剪輯方式。
byte lfquality; // 指定輸出質量,它定義了gdi在匹配邏輯字型屬性到實際的物理字型時所使用的方式。
byte lfpitchandfamily; // 指定字型的字元間距(***x_pitch)和族(ff_***x)。
tchar lffacename[lf_facesize]; // 字型名稱(以'\0'結尾的字串,null預設字型)
注釋:(1)邏輯單位
裝置邏輯單位的具體含義由裝置的環境對映方式確定(參見setmapmode/getmapmode).
特別的,mm_text表示邏輯單位是畫素.
根據getdevicecaps(hdc, logpixelsy)獲取畫素和物理尺寸的換算關係,可以計算物理尺寸對應的邏輯尺寸.
lfheight = -muldiv(pointsize, getdevicecaps(hdc, logpixelsy), 72); // 1(磅)=1/72(英吋)
(2)字型名
系統資料夾fonts下列出了系統已經安裝的所有字型.
也可用函式載入其他的字型檔案,比如
addfontresource / removefontresource
addfontresourceex / removefontresourceex
addfontmemresourceex / removefontmemresourceex
(2)字符集
顯示unicode字串時,應使用 default_charset
可以使用getfontunicoderanges確定當前字型支援的unicode字元範圍.
當顯示多種語言的字元的時候,需要"big font"支援.
參見(3)輸出質量
由於truetype可以任意縮放,所以不用這個欄位.
CFont與LOGFont 設定menu字型
一.設定menu字型在mfc中,如果想設定menu欄的字型大小或者其他字型相關屬性,需要使用結構 logfont。如下所示 在mainframe的oncreate函式中,新增以下 logfont font memset font,0,sizeof logfont font.lfheight 20 t...
C 常量成員函式的含義
在類x的非常量成員函式中,this指標的型別為x const。也就是說,它是指向非常量x的常量指標。而在類x的常量成員函式中,this的型別為const x const。也就是說,是指向常量x的常量指標。這就是常量成員函式和非常量成員函式的區別。對成員函式的this指標型別加上常量修飾符,就可以解釋...
c 成員函式後面加乙個冒號的含義
int a 10 char b r inta 10 charb r 但是括號賦值只能在變數定義並初始化中,不能用在變數定義之後再賦值。有的資料成員需要在建構函式調入之後 函式體執行之前,就進行初始化,比如引用資料成員 常量資料成員 物件資料成員。冒號初始化是在給資料成員分配記憶體空間時 進入函式體之...