乡下人产国偷v产偷v自拍,国产午夜片在线观看,婷婷成人亚洲综合国产麻豆,久久综合给合久久狠狠狠9

  • <output id="e9wm2"></output>
    <s id="e9wm2"><nobr id="e9wm2"><ins id="e9wm2"></ins></nobr></s>

    • 分享

      CreateFont詳解

       無云666 2014-01-19


       CFont * f;
         f = new CFont;
         f->CreateFont(10, // nHeight
              0, // nWidth
              0, // nEscapement
              0, // nOrientation
              FW_BOLD, // nWeight
              FALSE, // bItalic
              FALSE, // bUnderline
              0, // cStrikeOut
              ANSI_CHARSET, // nCharSet
              OUT_DEFAULT_PRECIS, // nOutPrecision
              CLIP_DEFAULT_PRECIS, // nClipPrecision
                                DEFAULT_QUALITY, // nQuality
                 DEFAULT_PITCH | FF_SWISS, // nPitchAndFamily
                 _T("Arial")); // lpszFac

       

       

      cHeight是字體的高度。
      cWidth是字體的寬度。
      cEscapement是字體的傾斜角。
      cOrientation是字體的傾斜角。
      cWeight是字體的粗細(xì)。
      bItalic是字體是否斜體。
      bUnderline是字體是否有下劃線。
      bStrikeOut是字體是否有刪除線。
      iCharSet是字體使用的字符集。
      iOutPrecision是指定如何選擇合適的字體。
      iClipPrecision是用來確定裁剪的精度。
      iQuality是怎么樣跟選擇的字體相符合。
      iPitchAndFamily是間距標(biāo)志和屬性標(biāo)志。
      pszFaceName是字體的名稱。

       


      函數(shù)功能:該函數(shù)創(chuàng)建一種有特殊性的邏輯字體,此邏輯字體可以在后面被任何設(shè)備選擇。

          函數(shù)原型:HFONT CreateFont(int nHeight, int nWidth, int nEscapement, int nOrientation, int fnWeight, DWORD fdwltalic, DWORD fdwUnderline, DWORD fdwStrikeOut, DWORD

      fdwCharSet, DWORD fdwOutputPrecision, DWORD fdwClipPrecision, DWORD fdwQuality, DWORD fdwPitchAndFamily, LPCTSTR lpszFace);

          參數(shù):

          nHeight:指定字體的字符單元或字符的邏輯單位高度,字符的高度值(也被稱為em高度)是指字符單元高度值減去內(nèi)部標(biāo)頭值。字體映射器以如下方式解釋nHeight指定的值,各值含義

      為:

          >0:字體映射器轉(zhuǎn)換這個(gè)值以設(shè)備單位,并和已有字體的單元高度相匹配。

          0:字體映射器轉(zhuǎn)換在選擇匹配時(shí)用一個(gè)缺省的高度值。

          <0:字體映射器轉(zhuǎn)換這個(gè)值到設(shè)備單位,并將它的絕對(duì)值和已有字體的字符高度相匹配。

          比較所有的高度,字體映射器選擇不超過要求大小的最大字體。

          此映射當(dāng)字體第一次被使用時(shí)發(fā)生。

          對(duì)于MM_TEXT映射方式,可以用下面的公式為一種指定了點(diǎn)大小的字體確定高度:

          nHeight=-MulDiv(PointSize, GetDeviceCaps(hDC, LOGPIXELSY),72)

          nWidth:指定所要求字體的字符的邏輯單位的平均寬度。如果此值為0,字體映射器選擇一個(gè)closest match值,closest match值是由比較當(dāng)前設(shè)備的特征系數(shù)與可使用字體的數(shù)字化特征

      系數(shù)之差的絕對(duì)值而確定的。

          nEscapement:指定移位向量和設(shè)備X軸之間的一個(gè)角度,以十分之一度為單位。移位向量平行于正文行的基線。

          Windows NT:當(dāng)圖形設(shè)備設(shè)置為GM_ADVANCED時(shí),可以不依賴字符串的字符的定位角而指定字符串的移位角。

          當(dāng)圖形模式被設(shè)置為GM_COMPATIBLE時(shí),nEscapement同時(shí)指定移位角和定位角,可以設(shè)置nEscapement和nOrientation為相同的值。

          Windows 95:nEscapement同時(shí)指定移位角和定位角,可設(shè)置nEscapement和nOrientation為相同的值。

          nOrientation:指定每個(gè)字符的基線和設(shè)備X軸之間的角度。

          FnWeight:在0到1000之間指定字體的權(quán)值,如400表示標(biāo)準(zhǔn)體,700表示黑(粗)體,如果此值為0,則使用缺省的權(quán)值。

          為方便定義,可使用如下值:

          FW_DONTCARE:0;FW_THIN;100;FW_EXTRALIGHT;200;FW_ULTRALIGHT;200;FW_LIGHT;300;

          FW_NORMAL:400;FW_REGULAR;400;FW_MEDIUM;500;FW_SEMIBOLD;600;FW_DEMIBOLD;600;

          FW_BOLD:700;FW_EXTRABOLD;800;FW_ULTRABOLD;800;FW_HEAVY;900;FW_BLACK;900。

          fdwItalic:如果設(shè)置為TRUE則指定斜體。

          fdwUnderline:如果設(shè)置為TRUE,則指定加下劃線的字全。

          fdwStrikeOut:如果設(shè)置為TRUE,則strikeout指定字體。

          fdwCharSet:指定字符集,下列值是預(yù)定義的:

          ANSI_CHARSET; BALTIC_CHARSET; CHINESEBIG5_CHARSET; DEFAULT_CHARSET;

          EASTEUROPE_CHARSET; GB2312_CHARSET; GREEK_CHARSET; HANGUL_CHARSET; MAC_CHARSET; OEM_CHARSET; RUSSIAN_CHARSET; SHIFTJIS_CHARSET;

          SYMBOL_CHARSET; TURKISH_CHARSET。

          韓國Windows:JOHAB_CHARSET;

          中東地區(qū)Windows:HEBREW_CHARSSET; ARABIC_CHARSET

          泰國Windows:THAI_CHARSET

          OEM_CHARSET指定的字符集與操作系統(tǒng)有關(guān)。

          可以使用DEFAULT_CHARSET值來允許字體的名字和大小來充分描述邏輯字體。如果指定的字體名不存在,任何字符集的字體都可以替代指定的字體,所以應(yīng)該小心地用

      DEFAULT_CHARSET來避免不期望的結(jié)果出現(xiàn)。

          操作系統(tǒng)中存在其他字符集的字體。如果一個(gè)應(yīng)用程序用一種未知字符集的字體,則應(yīng)用程序不會(huì)試圖去翻譯或解釋用那種字體寫出來的字符串。

          在字體映射過程中此參數(shù)很重要。為確保獲得一致的結(jié)果,指定一個(gè)特殊的字符集。如果在lpszFace參數(shù)中指定了一個(gè)字體名,確定fdwCharSet值與由lpszFace指定的字體字符集是否匹

      配。

          fdwOutputPrecision:指定輸出精度,輸出精度義輸出與要求的字體高度、寬度、字符定位、移位、字符間距和字符類型的匹配程序,它可取下列值之一:

          OUT_CHARACTER_PRECIS;未用。

          OUT_DEFAULT_PRECIS:指定缺省的字體映射器狀態(tài)。

          OUT_DEVICE_PRECIS:指示字體映射器在當(dāng)系統(tǒng)里有多種字體使用同一個(gè)字體使用同一個(gè)名字時(shí)選擇一種設(shè)備字體。

          OUT_OUTLINE_PRCIS:在Windows NT中此值指示字體映射器從TrueType和其他基于邊框的字體中選擇。

          OUT_RASTER_PRECIS:指示字體映射器在當(dāng)系統(tǒng)里有多種字體使用同一個(gè)名字時(shí)選擇一種光柵字體。

          OUT_STRING_PRECIS:此值沒有被字全映射器使用,但是當(dāng)掃描字體被列舉時(shí)作為返回值。

          OUT_STROKE_PRECIS:在Windows NT中此值沒有被字體映射器使用,但是當(dāng)TrueType字體、其他基于邊框的字體和向量字體被列舉時(shí),作為返回值。

          Windows 95:此值沒有被字體映射器使用,但是當(dāng)TrueType字體或向量字體被列舉時(shí),作為返回值。

          OUT_TT_ONLY_PRECIS:指示字體映射器僅從TrueType字體中選擇,如果系統(tǒng)中沒有安裝TrueType字體,則字體映射返回缺省狀態(tài)。、

          OUT_TT_PRECIS:指示字體映射器在當(dāng)系統(tǒng)里有多種同名的字體時(shí)選擇一種TrueType字體。

          當(dāng)操作系統(tǒng)含有多種與指定名字同名的字體時(shí),應(yīng)用程序可以使用OUT_DEVICE_PRECIS,OUT_RASTER_PRECIS和OUT_TT_PRECIS值來控制字體映射器如何選擇一種字體,例如,

      如果操作系統(tǒng)含有名字Symbol的光柵和TrueType兩種字體,指定OUT_TT_PRECIS使字體映射器選擇TrueType方式。指定OUT_TT_ONLY_PRECIS使字體映射器選擇一種TrueType字體,

      盡管這會(huì)給TrueType字體換一個(gè)名字。

          fdwClipPrecision;指定裁剪精度,裁剪精度定義如何裁剪部分超出裁剪區(qū)的字符,它可取一個(gè)或多個(gè)下列值:

          CLIP_DEFAULT_PRECIS:指定缺省裁剪狀態(tài)。CLIP_CHARACTER_PRECIS:未用。

          CLIP_STROKE_PRECIS:未被字體映射器使用,但是當(dāng)光柵字體、向量字體或TrueType字體被列舉時(shí)作為返回值。在Windows環(huán)境下,為保證兼容性,當(dāng)列舉字體時(shí)這個(gè)值總被返回。

          CLIP_MASK:未用。CLIP_EMBEDDED:要使用嵌入式只讀字體必須使用此標(biāo)志。

          CLIP_LH_ANGLES:當(dāng)此值被使用時(shí),所有字體的旋轉(zhuǎn)依賴于坐標(biāo)系統(tǒng)的定位是朝左的還是朝右的。

          如果未使用此值,設(shè)備字體總是逆時(shí)針方向旋轉(zhuǎn),但其他字體的旋轉(zhuǎn)依賴于坐標(biāo)系統(tǒng)的定向。要得到更多關(guān)于坐標(biāo)系統(tǒng)定向的信息,參見參數(shù)orientation。

          CLIP_TT_ALWAYS:未用。

          fdwQuality:指向輸出質(zhì)量,輸出質(zhì)量定義GDI如何仔細(xì)地將邏輯字體屬性與實(shí)際物理字體屬性相匹配。它可取下列值之一:

          DEFAULT_QUALITY:字體的外觀不重要。

          DRAFT_QUALITY:字體外觀的重要性次于使用PROOF_QUALITY時(shí),對(duì)GDI光柵字體,縮放比例是活動(dòng)的,這意味著多種字體大小可供選擇,但質(zhì)量可能不高,如果有必要,粗體、斜體

      、下劃線、strikeout字體可被綜合起來使用。

          PROOF_QUALITY:字符質(zhì)量比精確匹配邏輯字體字體屬性更重要。對(duì)GDI掃描字體,縮放比例是活動(dòng)的,并選擇最接近的大小。盡管當(dāng)使用PROOF_QUALITY時(shí),選擇字體大小并不完

      全匹配,但字體的質(zhì)量很高,并沒有外觀上的變形。如果有必要,粗體、斜體、下劃線、strikeout字體可被綜合起來使用。

          fdwPitchAndFamily:指定字體間距和字體族,低端二位指定字體的字符間距,它可取下列值之一:

          DEFAULT_PITCH;FIXED_PITCH; VARIABLE_PITCH

          高端四位指定字體族,可取下列值之一:

          FF_DECORATIVE:新奇的字體,如老式英語(Old English)。FF_DONTCARE:不關(guān)心或不知道。

          FF_MDERN:筆劃寬度固定的字體,有或者無襯線。如Pica、Elite和Courier New。

          FF_ROMAN:筆劃寬度變動(dòng)的字體,有襯線。如MS Serif。

          FF_SCRIPT:設(shè)計(jì)成看上去象手寫體的字體。如Script和Cursive。

          FF_SWISS:筆劃寬度變動(dòng)的字體,無斜線。如MS Sans Serif。

          應(yīng)用程序可以用運(yùn)算符OR將字符間距和字體族組合起來給fdwPitchAndFamily賦值。

          字體族描述一種字體的普通外觀,當(dāng)所有的精確字樣都不能使用時(shí),可用它們來指定字體。

          lpszface:指向指定字體的字樣名的、以/0結(jié)束的字符串指針,字符串的長度不能超過32個(gè)字符(包括字符/0),函數(shù)EnumFontFamilies可用來列舉所有當(dāng)前可用字體的字樣名。

          如果lpszFace為NULL或指向一個(gè)空串,GDI使用能匹配其他屬性的第一種字體。

          返回值:如果函數(shù)調(diào)用成功,返回值是一種邏輯字體句柄;如果函數(shù)調(diào)用失敗,返回值為NULL。

          Windows NT:若想獲得更多錯(cuò)誤信息,請(qǐng)調(diào)用GetLastError函數(shù)。

          備注:當(dāng)一種字體不再使用時(shí),可用DeleteObject來刪除。

          為保護(hù)那些提供字體給Windows和Windows NT的賣主的版權(quán),基于Win32的應(yīng)用程序總是列出所選擇字體的準(zhǔn)確名字。由于不同的系統(tǒng)會(huì)使用不同的字體,不要認(rèn)為所選擇字體就是要

      求的字體。例如,如果要求名叫Palatino的字體,但系統(tǒng)沒提供那樣一種字體,則字體映射器將會(huì)以一種不同名但有相似屬性的字體取而代之。系統(tǒng)總是將用戶選擇的字體名報(bào)告出來。

          速查:Windows NT:3.1及以上版本;Windows:95及以上版本;Windows CE:不支持;頭文件:wingdi.h;庫文件:gdi32.lib;Unicode:在Windows NT環(huán)境下以Unicode和ANSI

      兩種方式實(shí)現(xiàn)。

        本站是提供個(gè)人知識(shí)管理的網(wǎng)絡(luò)存儲(chǔ)空間,所有內(nèi)容均由用戶發(fā)布,不代表本站觀點(diǎn)。請(qǐng)注意甄別內(nèi)容中的聯(lián)系方式、誘導(dǎo)購買等信息,謹(jǐn)防詐騙。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請(qǐng)點(diǎn)擊一鍵舉報(bào)。
        轉(zhuǎn)藏 分享 獻(xiàn)花(0

        0條評(píng)論

        發(fā)表

        請(qǐng)遵守用戶 評(píng)論公約

        類似文章 更多