一种字体数据的处理方法及装置的利记博彩app

文档序号:6335319阅读:379来源:国知局
专利名称:一种字体数据的处理方法及装置的利记博彩app
技术领域
本发明涉及字体技术领域,具体地,涉及一种字体数据的处理方法及装置。
背景技术
电子文档在存储和展示的时候,包含图形、图片、表格、公式、多种语言文字的字符等,而文字字符通常是电子文档内容最主要的元素,在电子文档中占的比重也最大,字符的字体数据作为一种资源,存储了电子文档的字符集中各个字符的字体描述信息,在展示电子文档的时候,根据电子文档中的字符集及其对应字体数据中的字体描述信息渲染出字符集的图像,然后显示到计算机屏幕或者输出到打印机上。要真正原版原式的展示电子文档中字符集的内容,必须存储用户设置的字符集颜色、字体、字号大小等属性信息,并将字符集与字体数据整合为一个整体,以保证同一电子文档在任何显示终端输出同样的结果。现有技术中的处理方式为将字体数据进行处理,以去掉部分冗余的信息,例如去掉OpenType字体规范格式中的glyf中对字形的描述,但是由于对字体数据中的其它信息没有做处理,所以去掉部分冗余的信息的字体与完整字体的使用方式没有区别。目前,电子文档使用频率越来越多,一个电子文档中往往会存储几十甚至成百上千种的字体描述信息,过多的字体数据导致电子文档很大,同时会使解析电子文档时的IO 操作过多,从而使电子文档的解析速度很慢。

发明内容
为解决上述问题,本发明的实施例提供一种字体数据的处理方法及装置,用于解决现有技术中过多的字体数据导致电子文档的大小很大,解析电子文档时的IO操作过多的问题。为此,本发明提供一种字体数据的处理方法,其中,包括获取字符集的字体数据;判断所述字符集的字体数据中是否存在相同的字体描述信息;将所述字符集的字体数据中相同的字体描述信息合并;根据所述字符集合并后的字体数据合并所述字符集的字符映射表。其中,在所述获取字符集的字体数据之前还包括获取所述字符集的编码信息以得到所述字符集。其中,所述获取字符集的字体数据还包括获取所述字符集的字符映射表,所述字符映射表包括字符编码和字体数据索引。其中,所述根据所述字符集合并后的字体数据合并所述字符集的字符映射表之后包括将所述字符集合并后的字体数据和字符映射表更新存储到所述字符集的电子文档中。
其中,还包括将所述字符集合并后的字体数据存储在一个字体数据文件中。本发明还提供了一种字体数据的处理装置,其中,包括获取单元,用于获取字符集的字体数据;判断单元,用于判断所述字符集中各字符的字体描述信息是否相同;合并单元,用于将所述字符集的字体数据中相同的字体描述信息合并,以及根据所述字符集合并后的字体数据合并所述字符集的字符映射表。其中,所述获取单元还用于获取所述字符集的编码信息以得到所述字符集。其中,所述获取单元还用于获取所述字符集的字体数据的字符映射表,所述字符映射表包括字符编码和字体数据索引。其中,还包括更新单元;所述更新单元用于将所述字符集合并后的字体数据和字符映射表更新存储到所述字符集的电子文档中。其中,所述合并单元还用于将所述字符集合并后的字体数据存储在一个字体数据文件中。本发明具有下述有益效果本发明提供的字体数据的处理方法,本实施例中,通过将字符集的相同字体描述信息合并,减少了电子文档中字体描述信息和字体名称的种类和数量,相应减少了字符映射表的数量和复杂度,同时降低了电子文档的大小,从而减少了解析电子文档时发生的IO 操作次数,提高了电子文档的解析速度。本发明提供的字体数据的处理装置,通过获取单元获取电子文档中字符集的字体数据,再通过合并单元将字符集的字体数据中相同的字体描述信息合并为一项,从而减少了电子文档中字体描述信息以及字体名称的种类和数量,并根据字符集合并后的字体数据合并字符集的字符映射表,减少了字符映射表的数量,降低了电子文档的大小,并减少了解析电子文档时发生的IO操作次数,提高了电子文档的解析速度。


图1为本发明提供的字体数据的处理方法第一实施例的流程图;图2为本发明提供的字体数据的处理方法第二实施例的流程图;图3为本发明提供的字体数据的处理方法第二实施例中电子文档字符集;图4为图3中电子文档字符集的字体数据;图5为本发明提供的字体数据的处理装置第一实施例的结构示意图;图6为本发明提供的字体数据的处理装置第二实施例的结构示意图。
具体实施例方式为使本领域的技术人员更好地理解本发明的技术方案,下面结合附图对本发明提供的字体数据的处理方法及装置进行详细描述。图1为本发明提供的字体数据的处理方法第一实施例的流程图。如图1所示,本实施例字体数据的处理方法的具体流程包括如下步骤步骤101、获取字符集的字体数据。
在利用计算机终端等智能终端打开一份电子文档时,首先获取计算机终端上的字体数据、该电子文档上字符集的编码信息以及描述该字符集的字体数据,描述该字符集的字体数据包括描述电子文档字符集中每个字符的字体描述信息等,字体数据包括字符的字号、字体和颜色等信息,字号例如小四或13号等,字体例如楷体(Type2)、隶书(TrueType) 和行楷(OpenType)等,其中,Type2、TrueType和OpenType为字体格式规范,描述该字符集的字体数据通常按照一定的标准存储在不同的字体数据文件中,在本实施例中,可以按照字体格式规范的标准将同一种字体格式规范的字体数据存储在同一个字体数据文件中;获取字符集的字体数据后,进入步骤102。步骤102、判断字符集的字体数据中是否存在相同的字体描述信息。字体数据包括各字符的字体描述信息,判断字符集的字体数据中是否存在相同的字体描述信息,本实施例中,字体数据可以包括分别关于字号、字体、颜色等的字体描述信息,例如对于字符“中”和“国”,如果判断出“中”和“国”的字号都为12号则说明关于“中” 和“国”的字号的字体描述信息相同,如果判断出“中”和“国”的字号的颜色都为蓝色,则说明关于“中”和“国”的颜色的字体描述信息相同,如果字符“中”的字体描述信息中的字体为楷体(Type2)、字符“国”的字体描述信息中的字体为楷体(TrueType),由于字符“中”和 “国”得字体的名称都是楷体,同样也表明关于“中”和“国”的字体描述信息是相同。判断字符集的字体数据中存在相同的字体描述信息之后,进入步骤103。步骤103、将字符集的相同的字体描述信息合并。在本实施例中,可以将字符“中”的楷体(Type2)的字体描述信息和“国”的楷体 (TrueType)的字体描述信息合并为一项字体描述信息,“中”和“国”合并后的字体为楷体, 同时,将“中”和“国”的关于字号的字体描述信息合并为一项,合并后的字号为12号,将 “中”和“国”的关于颜色的字体描述信息合并为一项,合并后的字号为蓝色。得到描述该电子文档字符集的合并后的字体描述信息之后,进入步骤104。步骤104、根据字符集合并后的字体数据合并字符集的字符映射表。各项相同的字体描述信息合并后,得到描述该电子文档字符集合并后的字体数据,优选地,将合并后的字体数据存储在一个字体数据文件中,然后根据合并后的字体数据文件相应修改字符集的字符映射表,字符映射表用于表示各字符对应的字体描述信息在字体数据文件中的位置信息,字体数据合并后,字符集的字体描述信息的数量和种类明显减少,使字符集对应的字符映射表的数量明显减少,结构也更简单明了。本实施例中,通过将字符集的相同字体描述信息合并,减少了电子文档中字体描述信息和字体名称的种类和数量,相应减少了字符映射表的数量和复杂度,同时降低了电子文档的大小,从而减少了解析电子文档时发生的IO操作次数,提高了电子文档的解析速度。图2为本发明提供的字体数据的处理方法第二实施例的流程图。如图2所示,本实施例字体数据的处理方法的具体流程包括如下步骤步骤201、读取字符集的编码信息以得到字符集。在需要查阅电子文档上存储的字符集时,首先要获取关于该电子文档的所有字符的编码信息,其中,字符的编码方式例如Unicode、GBK等,Unicode或GBK等编码为每种语言中的每个字符设定了统一的二进制编码,智能终端是通过读取电子文档中字符集的Unicode或GBK等编码来得到字符集。得到电子文档中的字符集之后,进入步骤202。步骤202、获取字符集的字体数据。字符集的字体数据中包括该电子文档中所有字符的字体描述信息。本实施例以 PDF文档转化为CEBX文档时为例来介绍技术方案,图3为本发明提供的字体数据的处理方法第二实施例中电子文档字符集,图4为图3中电子文档字符集的字体数据。获取图3所示的PDF文档中的字符集的字体数据包括图4所示的6种字体描述信息,字符集的6种字体描述信息包括数学公式字符集和文字字符集,其中,数学公式字符集的两种字体分别为 Cambria Math和Calibri,文字字符集的四种字体分别为楷体(Type2)、楷体(TrueType)、 微软雅黑(Typd)和微软雅黑(TrueType),在本实施例中,微软雅黑(Typd)对应的字体数据存储在第一字体数据文件中,微软雅黑(TrueType)对应的字体数据存储在第二字体数据文件中,字体数据文件嵌入存储在电子文档中。步骤203、获取字符集中各个字符的字符映射表。以图3所示的“勾股定理”为例,其中,“勾”和“股”的字体为微软雅黑(Type2)字体,其字体数据存储在第一字体数据文件中,字符编码与字体数据索引之间关系的字符映射表如表1所示,其中,字体数据索引中0001和0002用于表示字符对应的字体描述信息在第一字体数据文件中的位置。
字符的编码信息(十六进制) 字体数据索引
52FE__0001_
80A10002表1“定”和“理”的字体为微软雅黑(TrueType)字体,其字体数据存储在第二字体数据文件中,其字符映射表如表2所示,其中,字体数据索引中0001和0002用于表示字符对应的字体描述信息在第二字体数据文件中的位置。
字符的编码信息(十六进制) 字体数据索引
5B9A__0001_
74060002表 2在获取字符集中的各种字体数据的字体数据文件以及字符映射表之后,进入步骤 204。步骤204、判断字符集的字体数据中是否存在相同的字体描述信息。根据字符集中各字符的字体描述信息,判断描述字符字号的各字体描述信息是否相同、判断描述字符颜色的字体描述信息是否相同。本实施例中是将PDF文档转换为CEBX 文档,在CEBX文档中,数学公式字符集的字体Cambria Math和Calibri具有相同的字体描述信息,楷体(Typd)和楷体(TrueType)具有相同的字体描述信息,微软雅黑(Type2)和微软雅黑(TrueType)具有相同的字体描述信息。在字符集的字体数据中存在相同的字体描述信息时,进入步骤205。步骤205、将字符集的相同字体描述信息合并,以得到字符集合并后的字体数据。按照TrueType和Type2这两种字体格式规范,将图3字符集的相同字体描述信息合并,合并前后的字体如表3所示。
权利要求
1.一种字体数据的处理方法,其特征在于,包括 获取字符集的字体数据;判断所述字符集的字体数据中是否存在相同的字体描述信息; 将所述字符集的字体数据中相同的字体描述信息合并; 根据所述字符集合并后的字体数据合并所述字符集的字符映射表。
2.根据权利要求1所述的字体数据的处理方法,其特征在于,在所述获取字符集的字体数据之前还包括获取所述字符集的编码信息以得到所述字符集。
3.根据权利要求1所述的字体数据的处理方法,其特征在于,所述获取字符集的字体数据还包括获取所述字符集的字符映射表,所述字符映射表包括字符编码和字体数据索引。
4.根据权利要求1所述的字体数据的处理方法,其特征在于,所述根据所述字符集合并后的字体数据合并所述字符集的字符映射表之后包括将所述字符集合并后的字体数据和字符映射表更新存储到所述字符集的电子文档中。
5.根据权利要求1所述的字体数据的处理方法,其特征在于,还包括 将所述字符集合并后的字体数据存储在一个字体数据文件中。
6.一种字体数据的处理装置,其特征在于,包括 获取单元,用于获取字符集的字体数据;判断单元,用于判断所述字符集中各字符的字体描述信息是否相同; 合并单元,用于将所述字符集的字体数据中相同的字体描述信息合并,以及根据所述字符集合并后的字体数据合并所述字符集的字符映射表。
7.根据权利要求6所述的字体数据的处理装置,其特征在于 所述获取单元还用于获取所述字符集的编码信息以得到所述字符集。
8.根据权利要求6所述的字体数据的处理装置,其特征在于所述获取单元还用于获取所述字符集的字体数据的字符映射表,所述字符映射表包括字符编码和字体数据索引。
9.根据权利要求6所述的字体数据的处理装置,其特征在于,还包括更新单元; 所述更新单元用于将所述字符集合并后的字体数据和字符映射表更新存储到所述字符集的电子文档中。
10.根据权利要求6所述的字体数据的处理装置,其特征在于所述合并单元还用于将所述字符集合并后的字体数据存储在一个字体数据文件中。
全文摘要
本发明提供一种字体数据的处理方法及装置,其中,所述方法包括获取字符集的字体数据;判断所述字符集的字体数据中是否存在相同的字体描述信息;将所述字符集的字体数据中相同的字体描述信息合并;根据所述字符集合并后的字体数据合并所述字符集的字符映射表。本实施例中,通过将字符集的相同字体描述信息合并,减少了电子文档中字体描述信息和字体名称的种类和数量,相应减少了字符映射表的数量和复杂度,同时降低了电子文档的大小,从而减少了解析电子文档时发生的IO操作次数,提高了电子文档的解析速度。
文档编号G06F17/22GK102467490SQ201010533928
公开日2012年5月23日 申请日期2010年11月1日 优先权日2010年11月1日
发明者丁力, 张磊, 曹佳胤 申请人:北京北大方正技术研究院有限公司, 北大方正集团有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1