<meter id="pryje"><nav id="pryje"><delect id="pryje"></delect></nav></meter>
          <label id="pryje"></label>

          新聞中心

          EEPW首頁 > 嵌入式系統(tǒng) > 設計應用 > WinCE內(nèi)核裁減(中文字體)及字庫和內(nèi)核的分離(轉(zhuǎn))

          WinCE內(nèi)核裁減(中文字體)及字庫和內(nèi)核的分離(轉(zhuǎn))

          作者: 時間:2011-02-24 來源:網(wǎng)絡 收藏

          每次定制中文系統(tǒng)時,NK總是比英文大10M左右,啟動時在bootloader中將內(nèi)核Copy到內(nèi)存時也花時間,同時也占用了很多內(nèi)存,留給系統(tǒng)和應用的內(nèi)存就少了10M左右,真是浪費呀,看到都心痛!本人研究了一下,同時也參考了網(wǎng)上的資料,現(xiàn)總結(jié)如下,如何減少中文字庫大小和將字庫放到外部存貯器上。核心思想是將默認選擇的中文字體SimSun NSimSun (SYSGEN_FONTS_SIMSUN)替換成SimSun NSimSun (Subset 2_50) (SYSGEN_FONTS_SIMSUN_2_50)達到體積的縮小。在注冊表中[HKEY_LOCAL_MACHINESOFTWARE MicrosoftFontPath]和[HKEY_LOCAL_MACHINESOFTWAREMicrosoftFontLink SystemLink]改變字庫simsun.ac3或simsun.ttc的存貯位置。

          一、減少中文字庫大小

          1.先打開目標的工程文件,單擊“Platform”菜單,再單擊“Settings…”,執(zhí)行”clear” ,

          Locales:將”英文(美國)”“中文(中國)”打勾

          Default languare:選擇“中文(中國)”

          完成第1步后,工程中采用默認的是新宋字體

          2,回到Catalog,選擇“Core OS”—>“International”—>“Locale Spectific Support”

          —> “Chinese[Simplified]”

          ▲ Agfa AC3 Font Compression:使用AC3對字庫進行壓縮,若CPU有300HZ以上,建議選上;這個可以根據(jù)自己的需要選還是不選.

          ▲ SimSun NSimSun (Subset 2_50):字體大小是3M左右,WINCE選擇Subset 2_50是最合適的,所以用(Subset 2_50)中文字體替換原來的中文字體,選擇SimSun NSimSun (Subset 2_50),按右鍵添加該組件即可,這樣就會把原來的字體替換掉。這樣對中文顯示又沒有影響又達到內(nèi)核瘦身的效果。必須選上;

          補充:在沒有壓縮字體的情況來,默認選擇的新宋字庫大小是10M多,文件為simsun.ttc,若選擇Subset 2_50版本,文件為simsun_2_50.ttc,字體大小是將近3M,也是對WinCE體積進行裁剪關鍵所在。當然如果選擇了AC3對字庫進行壓縮,哪么體積還可以進一步縮小,壓縮后的文件為simsun_2_50.ac3,體積就只有不到2M。

          字庫所在目錄:D:WINCE500PUBLICCOMMONOAKFILES

          ▲ GB18030 Data Converter:漢字編碼標準集轉(zhuǎn)換器,必須選上

          3,重新進行Sysgen,這樣做出來的系統(tǒng),既能正常顯示中文,又不用擔心NK體積過大。

          二、將字體保存到外部存貯器上來減少內(nèi)核的大小

          網(wǎng)上有很多介紹將字體保存到SD卡、Flash等來減少內(nèi)核的大小,但要注意一點就是:在加載顯示驅(qū)動前就要加載保存字體的存貯設備的驅(qū)動,否則中文字體不能加載,系統(tǒng)啟動后顯示框框。將字體保存到注冊表保存的存貯設備上,因為該存貯設備驅(qū)動很早就加載了。

          而我使用的是硬盤,注冊表需要作如下修改

          1、在platform.reg中添加如下

          [HKEY_LOCAL_MACHINESYSTEMGDI]

          "FontLinkMethods"=dword:1

          [HKEY_LOCAL_MACHINESOFTWAREMicrosoftFontPath]

          "FontPath"="\Hard Disk" ; 字庫文件所在目錄

          [HKEY_LOCAL_MACHINESOFTWAREMicrosoftFontLinkSystemLink]

          "Tahoma"="\Hard Disk\simsun.ac3,NSimSun" ;我是用的壓縮字庫,所以為simsun.ac3。

          "Courier New"="\Hard Disk\simsun.ac3,NSimSun"

          "Arial"="\Hard Disk\simsun.ac3,NSimSun"

          "Times New Roman"="\Hard Disk\simsun.ac3,NSimSun"

          "Symbol"="\Hard Disk\simsun.ac3,NSimSun"

          2、在工程目錄中common.bib文件中刪掉simsun.ac3相關項,確認該文件不會編到內(nèi)核中。

          3、把文件拷到Hard Disk中,即可,再啟動就ok了。

          linux操作系統(tǒng)文章專題:linux操作系統(tǒng)詳解(linux不再難懂)


          評論


          相關推薦

          技術專區(qū)

          關閉
          看屁屁www成人影院,亚洲人妻成人图片,亚洲精品成人午夜在线,日韩在线 欧美成人 (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })();