基于高通手机平台汉字显示解决方案
1 引 言
高通作为全球领先CDMA手机平台供应商,在国内得到广大手机设计公司和手机厂商的青睐,其中包括德信无线、上海精佑、赛龙上海和UT斯达康等国内许多手机设计公司和手机厂商。为了支持国内市场,汉字显示是必不可少的,而高通手机平台上没有直接提供完备的汉字显示解决方案,本文就这个热点论题,通过对高通手机平台字符显示特点进行了分析,具体地给出了基于BMP文件格式存储汉字字库的一种汉字显示方案。
2 高通手机平台Brew字符显示原理
高通手机平台Brew字符显示由两部分构成,一部分为上层应用提供一个统一的字符显示接口部分,另一部分为某一种字符集或字体具体实现部分,这两个部分是通过虚函数机制绑定在一起。在Brew字符显示接口统一定义如下:
IFONT AddRef():用于引用记数功能;
IFONT_Release():释放当前应用程序字符显示实例;
IFONT_QueryInterface():他根据字符ID检索当前应用程序字符显示实例;
IFON_DrawText():他用于显示具体的文本;
IFONT_MeasureText():他用于计算以象素为单位文本的大小和字符的总数目;
IFONT_GetFontInfo():他用于检索字符相关信息,比如ascent和descent的值。
从上面的显示接口定义可见,系统的设计者将字符显示接口视为一个脱离依赖具体字符显示的转换模块,而字符具体实现部分则需要根据显示接口每个接口函数给出一个标准实现,功能就是针对某一种字符实现文本显示,计算文本大小,返回该种字体一些信息等。
例如:高通关于ASCII字符显示的参考设计中就定义了一组与显示接口一致的一组函数:
然后通过指针赋值方式把这组函数与接口函数对应部分关联起来,即在函数AEEVarBitFont_NewFromBBF内部通过指针赋值方式使显示接口部分与具体实现部分绑定在一起。
上层应用模块调用字符显示模块的过程如下:
3 高通手机平台上汉宇字库的BMP文件存储结构的设计
在手机平台上汉字显示可以采用国标码或Unicode任何一种编码方案,但为了信息交换方便,大多数手机开发采用Unicode显示方式,这里以Unicode为例来说明。传统的汉字存储结构采用数组方式,明显地,字符集这种存储方式无法直观地显示给用户和软件开发者,用户和软件开发者也很难了解字符集内真正包含了那些字符,再者,当显示汉字时,系统需要将汉字字模存储方式转换为屏幕显示方式,这将会增加系统开销,降低运行效率。这里设计了用BMP文件格式来存储汉字字库,他保证整个存储空间没有明显增加的同时,能够使用户直观地了解字符集内包含了那些字符,提高系统运行效率。
相关文章
- 2022-10-17力控forcecontrol6.0+S7200构建垃圾焚烧监控系统
- 2023-05-19硅微谐振式加速度计2种谐振结构比较
- 2024-08-26射线源焦点距离误差对CT重建质量影响分析
- 2023-05-19微型机器人的现状与发展
- 2024-10-30浅谈计量中的误差
请自觉遵守互联网相关的政策法规,严禁发布色情、暴力、反动的言论。