freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

第5章文本與字體(已修改)

2024-10-14 15:57 本頁面
 

【正文】 第 5章 文本與字體 使用定義好的與設(shè)備無關(guān)的 字體 集, Windows就能維護(hù)它的設(shè)備無關(guān)性,提供“ 所見即所得 ”的好處,即屏幕所見與設(shè)備輸出的文本是一樣的。 Windows經(jīng)常使用GDI進(jìn)行文本輸出。在一定意義上,任何內(nèi)容都可以看成 圖形實體 圖形和文本并 沒有明顯的界限 文本操作 先要獲得文本句柄 設(shè)置字體、字符大小、字符顏色等有關(guān)屬性 將這些屬性選入設(shè)備環(huán)境 字體 邏輯字體 定義的字符集是 設(shè)備無關(guān) 的,它可以精確標(biāo)度,因此得到廣泛應(yīng)用 描述所要顯示 的文本的大小、 類型和外形 物理字體 是為特殊設(shè)備設(shè)計的,因而是 設(shè)備相關(guān) 的 Win 系統(tǒng) 提供了七種 基本字體 字體 說明 ANSI_FIXED ANSI標(biāo)準(zhǔn)的 固定 寬度的字體 ANSI_VAR ANSI標(biāo)準(zhǔn)的 可變 寬度的字體 DEFAULT_GUI 當(dāng)前 GUI的默認(rèn)字體 OEM_FIXED 由標(biāo)準(zhǔn)原設(shè)備制造商 (OEM)提供 DEVICE_DEFAULT 當(dāng)前圖形設(shè)備的字體 SYSTEM_FIXED Windows的標(biāo)準(zhǔn) 固定 寬度的字體 SYSTEM Windows提供的 可變 寬度的字體 常作為默認(rèn)字體 Win用它作為 系統(tǒng)界面字體 設(shè)置文本的設(shè)備環(huán)境 字體句柄 (1) 定義字體句柄變量: HFONT hF。 //hF為字體的句柄 (2) 調(diào)函數(shù) GetStockObject獲得系統(tǒng)字體句柄 它返回的是系統(tǒng)的默認(rèn)字體 hF= GetStockObject( ): (3) 調(diào)用函數(shù) SelectObject將字體選入設(shè)備環(huán)境 SelectObject(hdc,hF); 選擇系統(tǒng)字體的步驟 若需要定義系統(tǒng)以外的字體,可以調(diào)用函數(shù) GreateFont自行 創(chuàng)建 HFont=CreateFont (int nHeight, //字體高度, 0采用系統(tǒng)默認(rèn)值,使用邏輯單位 int nWidth, //字體寬度,取 0則由系統(tǒng)根據(jù)高寬比取最佳值 int nEscapement, //每 行 文字相對于頁底的角度, 單位為 int nOrienation, //每 個 文字相對于頁底的角度, 單位為 DWORD nWeight, //字體粗細(xì)度,范圍為 0~ 1000 DWORD Dwltalic, //如果要求字體傾斜,則取非零 DWORD dwUnderline, //如果要求下劃線,則取非零 DWORD dwStrikeout, //如果要求中劃線,則取非零 DWORD dwCharset, //字體所屬字符集 DWORD dwOutputPrecision,//輸出精度,一般取默認(rèn)值 OUT_DEFAULT_PRECIS DWORD dwClipPrecision, //剪裁精度,常取默認(rèn)值 CLIP_DEFAULT_PRECIS DWORD dwQuality, //輸出質(zhì)量,一般取默認(rèn)值 DEFAULT_QUALITY DWORD dwPitchAndFamily, //字體名 ) 可選的系統(tǒng)字符集: ANSI_CHARSET OEM_CHARSET SYMBOL_CHARSET DEFAULT_CHARSET SHIFTJIS_CHARSET 創(chuàng)建自定義字體 設(shè)置字體顏色: SetTextColor(hdc,crColor); 設(shè)置背景顏色 : SetBkColor(hdc,crColor); crColor為設(shè)置的顏色 字體 及 背景顏色 的設(shè)置在開發(fā)過 程中非常重要 設(shè)置字體和背景顏色 確定后續(xù)文本坐標(biāo) 確定換行時文本坐標(biāo) 文本輸出過程 獲取字體信息 格式化文本 調(diào)用函數(shù)輸出文本 文本的輸出過程 獲取字體信息 輸出文本之前要獲取字體的信息,如字符高度等,以確定輸出格式和下一行字符的位置 GetTextMetrics (hdc,amp。tm); //tm為 TEXTMETRICS結(jié)構(gòu) 獲取當(dāng)前使 用字體信息 調(diào)用該函數(shù)時,系統(tǒng)將當(dāng)前字體的信息拷貝到 tm標(biāo)識的 TEXTMETRICS結(jié)構(gòu)中 系統(tǒng)定義的 TEXTMETRICS的結(jié)構(gòu)如下: typedef struct tagTEXTMETRIC { //tm LONG tmHeight。 //字符高度 LONG tmAscent。 //字符基線以上高度 LONG tmDescent。 //字符基線以下高度 LONG tmInternalLeading。 //tmHeight制訂的字符高度頂部的控件 LONG tmExternalLeading。 //行與行之間的間隔 LONG tmAveCharWidth。 //平均字符寬度 LONG tmMaxCharWidth。 //最大字符寬度 LONG tmWeight。 //字符的粗細(xì)度 LONG tmOverhang。 //合成字體間附加的寬度 LONG tmDigitizedAspectX。 //為輸出設(shè)備設(shè)計的 X軸尺寸 LONG tmDigitizedAspectY。 //為輸出設(shè)備設(shè)計的 Y軸尺寸 BCHAR tmFirstChar。 //字體中第一個字符值 BCHAR tmLastChar。 //字體中最后一個字符值 BCHAR tmDefaultChar。 //代替不在字體中字符的字符 BCHAR tmBreakChar。 //作為分割符的字符 BYTE tmItalic。 //非 0則表示字體為斜體 BYTE tmUnderlined。 //非 0則表示字體有下劃線 BYTE tmStruckOut。 //非 0則表示字符為刪除字體 BYTE tmPitchAndFamily。 //字體間距和字體族 BYTE tmCharSet。 //字符集 }TEXTMETRIC 格式化文本 (1) 確定后續(xù)文本坐標(biāo) 換行時確定下一行文本的坐標(biāo) 需要格式化處理的情況 在文本行中確定后續(xù)文本的坐標(biāo) 確定后續(xù)文本的坐標(biāo) ,應(yīng)先獲取當(dāng)前的字符串的寬度 , 該工作由GetTextExt
點擊復(fù)制文檔內(nèi)容
教學(xué)課件相關(guān)推薦
文庫吧 www.dybbs8.com
公安備案圖鄂ICP備17016276號-1