首页>
技术资讯>
详情

Wince中Silverlight程序中文显示

2016-05-13 来源:佚名 阅读量: 0
关键词: WINCE

    使用Silverlight技术进行Wince上的应用程序开发也有了一阵时间,但中文显示问题一直困扰着我,直到最近才得以解决。

    == 宋体 ==

    开始开发时比较顺利,运用自己编译的模拟器进行调试,中文在里面直接以宋体进行呈现,没发现问题。不过,将程序部署到开发板后,中文始终显示成"□"。一开始百思不得其解,明明设备上其它程序的中文显示是好好的,Silverlight程序为何不行,于是通过微软VS2005提供的Remote Registy Editor进行同步跟踪,才发现了原因:为了节省空间,设备中的宋体文件是simsun.ac3,该文件采用了压缩算法减少了字体文件的大小,使原先的Simsun.ttf所占用的10M空间减少到大约3M,但由于Silverlight中不支持,因此中文不能正常显示,问题就在这儿,于是,我将Simsun.ttf按照模拟器的配置拷贝到了Windows目录下,并修改了相应的注册表选项,重启后,显示通过。

    == 微软雅黑 ==

    但是由于美观的原因,目前我们的设备上主要使用微软雅黑作为默认字体,于是按照解决宋体显示的方法进行修改,结果一样,silverlight程序中的中文还是不能正常显示,几经周折,发现微软雅黑不能被默认支持,于是,查找了Silverlight在Windows上的中文显示解决方法,经过试验,终于成功实现了微软雅黑字体的显示,方法就是在某一个需要使用中文的控件,如TextBlock中,加入下面一句话:FontFamily="nand-disk/Fonts/MSYH.TTF#Microsoft YaHei" ,表示使用路径名为nand-disk/Fonts/MSYH.TTF,名称为Microsoft YaHei的字体来显示该段文字,其中字体名不能使用中文,问题解决!

热门推荐 查看更多