[发明专利]一种QPF字库组织方法有效
申请号: | 201410462486.0 | 申请日: | 2014-09-12 |
公开(公告)号: | CN104268170B | 公开(公告)日: | 2017-05-17 |
发明(设计)人: | 赵勇;叶芃;蒋俊;邱渡裕;曾浩 | 申请(专利权)人: | 电子科技大学 |
主分类号: | G06F17/30 | 分类号: | G06F17/30 |
代理公司: | 成都行之专利代理事务所(普通合伙)51220 | 代理人: | 温利平 |
地址: | 611731 四川省成*** | 国省代码: | 四川;51 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 qpf 字库 组织 方法 | ||
技术领域
本发明属于嵌入式系统技术领域,更为具体地讲,涉及一种QPF字库组织方法。
背景技术
在大型嵌入式应用系统中,为了使嵌入式开发更加方便、快捷,需要具备一种稳定的、安全的软件模块集合,用以管理存储器分配、中断处理、任务间通信和定时器响应,以及提供多任务处理等,这就是嵌入式操作系统。Linux本身所具备的源码开放、内核可裁减等种种特性使其成为嵌入式开发的首选。随着嵌入式Linux技术的成熟,使用Linux越来越广泛。
QT是目前在Linux操作系统平台下应用最多的图形用户界面的底层库,由其派生出的QT/Embedded(QTE)大量用于嵌入式系统开发和研制中。QTE向公众开放源码,它支持多平台,有IDE(Integrated Drive Electronics,即集成驱动电子设备)开发平台,因此使用QTE作为开发工具越来越多。
在实际情况下,QTE提供给用户的非ASCII码的字库存在如下问题:1)资源比较少。如果使用点阵字库,其对应的语言字库、大小等都比较稀缺;2)现有字库一般都是全编码的字库,文件较大,占用内存较多;3)嵌入式系统对速度要求较高,而QTE使用的QPF字库的特点决定了全字符字库不能对特定的应用优化显示速度。所以,在实际开发中,存在如下的需求:1)根据特定系统定制不同语言的字库;2)根据特定系统使用不同字体大小的字库;3)根据系统的设计,对关键点需要提高显示速度。
众所周知,一个汉字的编码在字库中对应其相应的字形。编码(采用不同的编码集,同一个汉字对应的编码不一样)对于字库来说,只是查找字形的索引。如果换成另一个编码标准的字体,同一个字符串就会呈现不同的字形,也就是乱码。
QTE可以支持以下四种形态的字体格式:TrueType(TTF)、Postscript Type(PFA/PFB)、Bitmap Distribution Format fonts(BDF)、QtPrerendered Font(QPF),但在产品中,如果直接使用TTF或PFA/PFB,即让应用程序在显示的时候再计算点阵,最终的效果并不理想,会发现有些字大有些字小,而且需要占用非常多的FLASH和内存;如果直接使用BDF,速度非常慢,而且需要占用比较多的FLASH和内存;使用QPF速度快,并且占用其它资源是最小的,最终的产品中采用QPF格式。
QPF格式的字库是仅用于QTE的不可缩放的字体,在程序运行过程中,均以相同的格式存储。所以在字体显示时,QT只要读取字体,做相应分析然后显示就完成了,这样进一步减少了对RAM资源的浪费。QPF字体是基于16进制的UNICODE编码的,这为QTE良好的可移植性奠定了基础。
QPF文件中的字是以二叉树的格式存储的,QT根据需要显示字符的Unicode编码在字库中进行索引,得到该字符的点阵,并将其显示出来。但是QPF字库资源少,即使存在也是全字库,占用了不少内存,并且它的组织方式与业务无关,对特定的业务不是最优的,所以需要改进它的组织方式。
QPF文件中二叉树的查找方式为:如果要查找的字的编码小于根结点字的编码,则查找左子树;若要查找的字的编码大于根结点的编码,则查找右子树。对于不同的二叉树结构,显示字符时需要查找的次数也不同。图1是界面示例图。图2是供图1所示界面显示使用的二叉树示例1的结构示意图。图3是供图1所示界面显示使用的二叉树示例2的结构示意图。如图2和图3所示,对于图2所示的二叉树示例1,要显示图1所示的界面需要查找的次数为667次,对于图3所示的二叉树示例2,要显示图1所示的界面需要查找的次数为617次。
发明内容
本发明的目的在于克服现有技术的不足,提供一种QPF字库组织方法,通过在具体应用中所使用的文字的出现概率和业务性能要求得到的权重来组织QPF字库,节约存储和内存资源,节约查找次数,提高显示速度。
为实现上述发明目的,本发明QPF字库组织方法包括以下步骤:
S1:记录嵌入式设备需要显示的所有文字,文字数量记为K;
S2:统计嵌入式设备中各个需要显示的界面中每个文字的显示概率αij,i的取值范围为i=1,2,…,K,j的取值范围为j=1,2,…,N,N表示需要显示的界面数量,并统计实际使用过程中,嵌入式设备中各个界面的显示概率βj,计算各个文字出现在界面的概率pi1,计算公式为:
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于电子科技大学,未经电子科技大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201410462486.0/2.html,转载请声明来源钻瓜专利网。
- 上一篇:防止皮带跑偏装置
- 下一篇:一种自动同步的宽度调节装置