• <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>
            隨筆 - 132  文章 - 51  trackbacks - 0
            <2025年5月>
            27282930123
            45678910
            11121314151617
            18192021222324
            25262728293031
            1234567

            常用鏈接

            留言簿(7)

            隨筆分類

            隨筆檔案

            文章分類

            文章檔案

            cocos2d-x

            OGRE

            OPenGL

            搜索

            •  

            最新評(píng)論

            閱讀排行榜

            評(píng)論排行榜

            1         引言

            為了在嵌入式系統(tǒng)實(shí)現(xiàn)矢量中文顯示,我先在PC機(jī)上實(shí)現(xiàn)失量字庫(kù)中文顯示,在此基礎(chǔ)上將其移植到嵌入式系統(tǒng)中。該方法是利用VC++開發(fā)工具,將freetype庫(kù)函數(shù)移植到VC環(huán)境中進(jìn)行開發(fā)。

            2         實(shí)現(xiàn)步驟

            2.1       建立VC動(dòng)態(tài)連接庫(kù)工程

            在建立的工程中加入*.lib文件,以及頭文件。

            #include <stdio.h>

            #include <ft2build.h>

            //#include FT_FREETYPE_H

            #include <freetype\freetype.h>

            #include <freetype\ftglyph.h>

            2.2       初始化庫(kù)

            簡(jiǎn)單地創(chuàng)建一個(gè)FT_Library類型的變量,例如library,然后象下面那樣調(diào)用函數(shù)FT_Init_FreeType

            FT_Library    pFTLib         =  NULL;

            //  Init FreeType Lib to manage memory

            error  =  FT_Init_FreeType( & pFTLib);

            if (error)

            {

            pFTLib  =   0 ;

            printf( " There is some error when Init Library " );

            return   - 1 ;

            }

            2.3       裝載一個(gè)字體face

                    FT_Face        pFTFace         =  NULL;

                    //  create font face from font file

                   error  =  FT_New_Face(pFTLib, "C:\\WINDOWS\\Fonts\\arialuni.ttf",0,& pFTFace);

            2.4       設(shè)置當(dāng)前象素尺寸

            當(dāng)一個(gè)新的face對(duì)象建立時(shí),所有成員都在初始化階段0設(shè)為0。調(diào)用FT_Set_Char_Size對(duì)這個(gè)結(jié)構(gòu)進(jìn)行賦值。這里有一個(gè)例子,它在一個(gè)300x300dpi設(shè)備上把字符大小設(shè)置為16pt

             error = FT_Set_Char_Size( face,  

                                   0,     

                                   16*64, 

                                   300,   

                                   300 ); 

             FT_Set_Char_Size(pFTFace,  16 << 6 ,  16 << 6 ,  300 ,  300 );

            2.5       裝載一個(gè)字形圖像

            1、從字符碼檢索字形索引

            glyph_index = FT_Get_Char_Index( pFTFace, ucode[n] );

            2、從face中裝載字形

            error = FT_Load_Glyph( pFTFace, glyph_index, FT_LOAD_DEFAULT );

            error  =  FT_Get_Glyph(pFTFace -> glyph,  & glyph);

            3、得到字形位圖

            FT_Glyph_To_Bitmap( & glyph, ft_render_mode_normal,  0 ,  1 );

            2.6       輸出字形

             

            posted on 2011-05-03 14:00 風(fēng)輕云淡 閱讀(2317) 評(píng)論(0)  編輯 收藏 引用 所屬分類: FreeType
            亚洲AV无码成人网站久久精品大| 狠狠色丁香久久婷婷综合图片| 久久久久亚洲AV无码永不| 久久久久99精品成人片直播| 国产一级做a爰片久久毛片| 日本欧美国产精品第一页久久| 久久精品国产亚洲AV蜜臀色欲| 国产亚洲婷婷香蕉久久精品| 欧美精品福利视频一区二区三区久久久精品 | 国内精品久久久久影院日本| 99久久精品午夜一区二区| 国产精品九九久久免费视频| 久久精品国产欧美日韩99热| 日韩一区二区久久久久久| 久久婷婷五月综合成人D啪| 91久久香蕉国产熟女线看| 一本色道久久99一综合| 香蕉aa三级久久毛片| 久久香蕉综合色一综合色88| 无码人妻精品一区二区三区久久久 | 久久一日本道色综合久久| 久久99久久成人免费播放| 精品无码久久久久久午夜| 久久人人爽人人爽人人av东京热| 久久成人精品| 国产—久久香蕉国产线看观看| 国产99精品久久| 国产精品美女久久久m| 人人狠狠综合久久88成人| 久久无码AV中文出轨人妻| 精品无码久久久久久久动漫| 日本三级久久网| 色综合久久中文色婷婷| 99久久国产综合精品网成人影院 | 久久er热视频在这里精品| 天天躁日日躁狠狠久久| 97精品伊人久久久大香线蕉| 久久久久久精品无码人妻| 国产激情久久久久久熟女老人| 亚洲国产美女精品久久久久∴ | 性做久久久久久久久老女人|