wince对中文字体的支持

来源:互联网 发布:阿里云os安装应用失败 编辑:程序博客网 时间:2024/04/29 22:57

最近情况真的是很糟,小小年纪,得了好几样小毛病,弄得每天都提不起精神来,恍恍惚惚的,幸好有妻子的支持,她不论自己多忙多累,一看到我情绪不好,就给与很多安慰,百般鼓励,真的非常感谢她。

同时,接了个wince的活,赚点外快,否则闲的也是挺无聊的,赶快进入正题,记录下我的工作成果。项目中要求系统的默认字体为楷体,而原来是宋体的,字体这部分之前我也没有接触过,头一次弄,还真花了我2天时间。还是直接说解决方法吧。

解决的方法是修改common.reg注册表当中的几个键值:

1,HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\FontLink\SystemLink

"Tahoma"="\\Windows\\simkai.ttf,楷体_GB2312"

"Courier New"="\\Windows\\simkai.ttf,楷体_GB2312"

"Arial"="\\Windows\\simkai.ttf,楷体_GB2312"

"Times New Roman"="\\Windows\\simkai.ttf,楷体_GB2312"

"Symbol"="\\Windows\\simkai.ttf,楷体_GB2312"

此键的含义我觉得是将simkai.ttf 字库链接进来,wince本身没有simkai.ttf,我是从XP的windows/font当中找到的。

"Tahoma"="\\Windows\\simkai.ttf,楷体_GB2312"

"字体名称"="补充字体路径,补充字体名称"

Tahoma是字体名称;\Windows\\simkai.ttf是字库文件在Wince系统当中的位置,是补充字体路径,当前面的字体数据库Tahoma包含的编码不足以显示当前的文字信息的时候,由后面的补充字体库来补充缺损部分;楷体_GB2312 是补充字体名称。从simkai.ttf文件当中获得的。如下图所示:

如果要添加多种补充字体,例如中文简体和繁体,补充部分之间用”;“隔开。

2,HKEY_LOCAL_MACHINE\SYSTEM\GDI\SysFnt    

"Nm"="楷体_GB2312" ;"楷体_GB2312"名字很重要,不能写成"Tahoma"

"Ht"=dword:fffffff4

"It"=dword:00000000

"Wt"=dword:00000190

"CS"=dword:00000000

3,HKEY_LOCAL_MACHINE\SYSTEM\GWE\Menu\BarFnt

"Nm"="楷体_GB2312" 

;"楷体_GB2312"名字很重要,不能写成"Tahoma"

"Ht"=dword:fffffff4

"It"=dword:00000000

"Wt"=dword:00000190

"CS"=dword:00000000

4,HKEY_LOCAL_MACHINE\SYSTEM\GWE\Menu\PopFnt

"Nm"="楷体_GB2312" ;

"楷体_GB2312"名字很重要,不能写成"Tahoma"

"Ht"=dword:fffffff4

"It"=dword:00000000

"Wt"=dword:00000190

"CS"=dword:00000000


5,HKEY_LOCAL_MACHINE\SYSTEM\GWE\OOMFnt

"Nm"="楷体_GB2312"   ;"楷体_GB2312"名字很重要,不能写成"Tahoma"

"Ht"=dword:fffffff4

"It"=dword:00000000

"Wt"=dword:00000190

"CS"=dword:00000000

另外,需要将

simkai.ttf文件添加到NK内核当中,添加方法是在project.bib文件中添加:

simkai.ttf $(_PROJECTROOT)\simkai.ttfNK SH


之后用Sysgen重新编译内核,下载效果如下:

原创粉丝点击