WinCE核心裁減(中文字型)及字型檔和核心的分離

2021-06-02 14:15:16 字數 2151 閱讀 1365

每次定製中文系統時,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.先開啟目標的工程檔案,單擊「project」->「properties...」->"configuration properties"->」->"local"->"clear all」 ,

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"="//nand flash"  ; 字型檔檔案所在目錄

[hkey_local_machine/software/microsoft/fontlink/systemlink]

"tahoma"="

//nand flash

" ;我是用的壓縮字型檔,所以為simsun.ac3。

"courier new"="

//nand flash

""arial"="

//nand flash

""times new roman"="

//nand flash

""symbol"="

//nand flash

"2、在工程目錄中common.bib檔案中刪掉simsun.ac3相關項,確認該檔案不會編到核心中。

3、把檔案拷到hard disk中,即可,再啟動就ok了。

WinCE核心裁減(中文字型)及字型檔

每次定製中文系統時,nk總是比英文大10m左右,啟動時在bootloader中將核心copy到記憶體時也花時間,同時也占用了很多記憶體,留給系統和應用的記憶體就少了10m左右,真是浪費呀,看到都心痛!本人研究了一下,同時也參考了網上的資料,現總結如下,如何減少中文字庫大小和將字型檔放到外部存貯器上。...

WinCE核心裁減(中文字型)及字型檔和核心的分離

2009 10 19 11 52 55 分類 預設分類 標籤 字型大小 大中小訂閱 wince核心裁減 中文字型 及字型檔和核心的分離 每次定製中文系統時,nk總是比英文大10m左右,啟動時在bootloader中將核心copy到記憶體時也花時間,同時也占用了很多記憶體,留給系統和應用的記憶體就少了...

中文字型引用及壓縮

中文字型引用 如思源雅黑 解決chrome瀏覽器下 font face字型圖示出現鋸齒 要注意不同格式字型引用順序問題 eot svg ttf woff2 woff font face 安裝node.js 再開啟node.js command prompt 測試 node v 有版本號出來即成功 然...