大家都在为实现完美中文显示的同时担心 C 盘的空间不足,我在使用了最新的字库文件后(可实现英文大字体),也为狭小的 C 盘空间担心,连日在 WDA 上游荡,终于由 OASISFENG 大侠为广大 NG 用户带来了历史性的春天,呵呵,看帖子的那天的确很激动,下面引用 OASISFENG 大侠的话来解释新研究出来的字体驱动文件,所谓 Open Font System ,通俗的讲就是 Symbian OS 下的一种字体驱动接口,它允许开发者通过程序代码对字体的显示予以控制,设计出一个高度开放的字体。借助于 Open Font System ,我们可以设计一个“虚拟字体”驱动,它只负责辨别接收到的 Unicode 是中文还是英文,然后调用相应的 Native Font (点阵字体)即可实现中英文的独立映射。克服了 .gdr 字体的主要弊端,以前字体显示总是具有其弊端,是因为各位 DX 研究字体的过程中,都是从 .gdr 文件入手,这样势必受到以下一个主要的限制:
系统在同一时间只能使用一种字体,所以中文和英文的点阵信息必须放在同一字体文件中。
我们知道英文字体因为字母不多,所需的点阵信息较少,所以 Symbian OS 系统本身设计了多套英文字体,用于不同的显示场合。但由于容量的限制,中文就不能做到一一替换了。目前的解决方案都是采用 1 ~ 3 套中文字体分别替换系统中的多组英文字体,以达到同时显示中英文的目的。而这种方法带来的一个直接后果便是:固定大小的中文字体无法满足原来不同大小显示区域的需要,以至于不是出现剃头剃尾,便是显得过小。
现在还在测试阶段的这种 FontRouter 0.1 beta 实现从 MMC 卡( E 盘)读取字体文件,兼容现有任何版本的字体。(需要说明的是本程序只是字体驱动而非字体,需要与其它字体配合使用。)使用方法:
将 FontRouter.dll 复制到 C:\System\Fonts 即可。之后你就可以将原 C:\System\Fonts 下的字体文件全部(或部分)移至 E 盘。系统在启动过程中将自动读取 E:\System\Fonts 下的字体文件。
文件下载的帖子的地址是:
http://www.wda.com.cn/viewthread.php?tid=105356&highlight=&page=3
从理论上讲任何 TTF 字体可以在 E 盘装上进行实现当把 MMC 卡取出机子的时候 Z: 盘的字库生效了,因此可以显示原来的英文字体,(个人测试通过,但是机子的差异性太大,谨慎使用),建议 E 盘字库文件不要过大,否则 RAM 的空间会很小。
为了继续扩大 C 盘的空间我把 C 盘下的 FEP (输入法)和 FEPSWITCH (输入切换)放到 E 盘的相应目录下,如果不装游戏和其他的应用程序,那么此时的 C 盘空间可以达到 3.55M ,我因为装了游戏和应用软件目前的 C 盘空间是 3.20M ,字体文件用的是玩玩 123 开发的完美字体,下载的帖子地址是:
http://www.wda.com.cn/viewthread.php?tid=104575&fpage=1
中文字体用的是新宋体,英文部分用的是 tahoma 小字体和 ENIGRG 大字体,基本上没有了剃头现象,目前只在 SiSQQ 中“发送信息成功”那地方有剃尾,还未得到解决。
又将弹出菜单改回了 12 号字体,有效的避免了标题栏双行剃头的现象。解决了 MP3 剃头现象。“ M ”和“ N ”为正常的字体了。修正了“ I ”和“ l ”难以分辩的问题。加入了部分符号,加入了几个生字,瑄可以打出来了。更正了笔划输入时的“折”显示。减小了数字于数字之间的距离,减少了 ... 情况的发生。这个版本的还是可以显示大字体菜单的,只需要将 13x14_latin.gdr 中的 LatinBold23 改成 LatinBold13 ,然后替换即可实现大菜单功能,可根椐个人喜好自由调整。采用了 hsz76 兄提供的 Nokia 手机汉字编码表制作的字库,基本可以达到原机字库的汉字容量并且显示效果好于原机自带字库。可显示简体、繁体、日文。 为了美观,少量修改了部分字母的点阵。为了能让 SiSQQ 显示中文,又将网上广泛使用的那些辅助字体文件加了进去。整个字库体积略显大。
我是这样使用字库的,首先 C 盘的 FONTS 目录下是 OASISFENG 大侠的字体驱动,然后 E 盘的 FONTS 目录下是玩玩 123 的字库文件,显示效果相当不错。
我的测试结果很不错,这里提一下我的 NG 是欧版的 3. 版的,而我用同样的方法在同学的手机(港行 4. 版的)上测试时,竟然在二级菜单上不能显示中文,显示为口口,希望这文章对大家有用,呵呵,我是 CANCER , QQ153162540 ,欢迎交流。