日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

WinCE内核裁减(中文字体)及字库和内核的分离

發布時間:2023/12/10 编程问答 33 豆豆
生活随笔 收集整理的這篇文章主要介紹了 WinCE内核裁减(中文字体)及字库和内核的分离 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

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

一、減少中文字庫大小

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

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

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

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

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

?? —> “Chinese[Simplified]”

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

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

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

字庫所在目錄:D:\WINCE500\PUBLIC\COMMON\OAK\FILES

▲? GB18030 Data Converter:漢字編碼標準集轉換器,必須選上

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

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

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

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

1、在platform.reg中添加如下

[HKEY_LOCAL_MACHINE\SYSTEM\GDI]

??? "FontLinkMethods"=dword:1

[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\FontPath]

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

[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\FontLink\SystemLink]

????? "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相關項,確認該文件不會編到內核中。

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

總結

以上是生活随笔為你收集整理的WinCE内核裁减(中文字体)及字库和内核的分离的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。