文档处理方法及装置制造方法及图纸

技术编号:7530029 阅读:184 留言:0更新日期:2012-07-12 15:24
本发明专利技术实施例公开了一种文档处理方法及装置,涉及计算机应用技术领域,用于节省文档处理所需要的资源。本发明专利技术中,确定待处理文档中内嵌字体的字体唯一标识;在本地字体库中查找与确定的字体唯一标识匹配的字体实例;利用查找到的字体实例处理所述待处理文档。采用本发明专利技术,能够有效节省文档处理所需要的资源。

【技术实现步骤摘要】

本专利技术涉及计算机信息处理领域,尤其涉及一种文档处理方法及装置
技术介绍
字体是指具有共同风格的一组字形,而字形是字符的可视表示形式。字体实例是指一个字体的数据实体,包括许多的字形数据和一些元数据,通常封装在一个字体文件中, 如.ttf文件中。元数据包括字体实例的名称、开发者、版本号等。字体与字体实例是一对多的关系,同一字体可能表现为多种不同的字体实例。同一字体可以采用不同的字体技术 (如True Type、Typel、Open Type等)制作成字体实例。或者同一字体经过裁剪,使得不同字体实例包括数量不等的字形数据,这称为字体子集技术,例如某中文字体的完整版有 10000个汉字,但某手机版的该中文字体的字体实例中去掉了不常用的汉字,只有4000字, 即只有4000个字形数据。还可以生成一个字体实例的多份拷贝,位于不同的计算机系统或存储位置,它们的内容完全相同,但把这些拷贝视为不同字体实例。同一字体的不同的字体实例被视为等价的。在很多电子文档中,例如MS Word文档、HTML文档、Adobe PDF文档中,需要对不同的文字指定使用不同的字体进行显示。通常指定字体的方法是在文档中给出字体的名称, 如“Times New Roman”或“宋体”,在对待显示文字指定了所使用字体的字体名称后,文档处理设备在本地的字体库中获取该字体名称所对应字体的字体实例,然后在该字体实例中查找待显示文字的字形数据,最后将查找到的字形数据进行显示。然而,当同一文档在多个不同的文档处理设备上被处理的时候,通过字体名称指定字体的方法的缺点有很多,例如第一,字体的名称到字体的映射并不唯一,因为许多实际不同的字体有相同的名称,这样在不同的文档处理设备上,被指定同一字体的文字的显示效果不一样。第二,文档处理设备上可能没有指定的字体,因而无法使用该字体显示相应的文字,从而可能使用不够相似的替代字体来显示该文字。以上两点都会造成文档无法以文档制作者期望的样子被显示或处理。对于上述问题的一个现有的解决方案是使用内嵌字体技术。使用内嵌字体技术后,在文档文件中对文档使用的字体明确的指定了能够获得该字体的字体实例的地址,将该字体称为内嵌字体。内嵌字体技术有两种实现方式,其中一种是在文档文件内记录字体的字体实例在文档文件内的偏移地址,并根据该偏移地址将该字体实例嵌入到文档文件内部的相应位置。在显示文档文字时,根据该偏移地址找到对应的字体实例,进而在该字体实例中查找待显示文字的字形数据,最后将查找到的字形数据进行显示。使用该方式的文档有PDF文档等。另一种是在文档文件内记录字体的字体实例的统一资源定位符(URL)地址,并将该字体实例保存在该URL地址对应的服务器上。在显示文档文字时,根据该URL地址找到对应的字体实例,进而在该字体实例中查找待显示文字的字形数据,最后将查找到的字形数据进行显示。使用该方式的文档有HTML和重叠样式表(CSQ文档等。上述两种方式中,内嵌字体实例都可以仅仅是一个字体完整的字体实例的一个子集(即前述字体子集技术),因为很多情况下一篇文档只会使用一个字体的一小部分字形数据。在实现本专利技术的过程中,专利技术人发现现有技术中存在以下技术问题在使用内嵌字体技术时,可能大大增加文档文件的数据量以及网络流量需求。同时,一台计算机上许多文档文件可能使用等价的内嵌字体实例,若每个文档文件都包含有一份等价的字体实例,则浪费了磁盘存储空间;而且同时显示多个文档时,这些等价的字体实例要重复地装入内存和解析,浪费了文档处理设备的资源。
技术实现思路
本专利技术实施例提供一种文档处理方法及装置,用于节省文档处理所需要的资源。一种文档处理方法,该方法包括确定待处理文档中内嵌字体的字体唯一标识;在本地字体库中查找与确定的字体唯一标识匹配的字体实例;利用查找到的字体实例处理所述待处理文档。一种文档处理装置,该装置包括确定单元,用于确定待处理文档中内嵌字体的字体唯一标识;查找单元,用于在本地字体库中查找与确定的字体唯一标识匹配的字体实例;处理单元,用于利用查找到的字体实例处理所述待处理文档。本方案中,首先确定待处理文档中内嵌字体的字体唯一标识;然后在本地字体库中查找与确定的字体唯一标识匹配的字体实例;最后利用查找到的字体实例处理所述待处理文档。可见,采用本专利技术,对于内嵌字体,采用本地字体库中的字体实例处理该待处理文档,而不需要根据待处理文档中记录的内嵌字体的字体实例存储地址从待处理文档中获得字体实例或从其他服务器下载到字体实例,节省了待处理文档所需要的内存空间、磁盘存储空间或下载字体实例所需要的网络流量。附图说明图1为本专利技术实施例提供的方法流程示意图;图2为本专利技术实施例提供的装置结构示意图;图3为本专利技术实施例提供的另一方法流程示意图;图4为本专利技术实施例提供的另一装置结构示意图。具体实施例方式为了节省文档处理所需要的资源,本专利技术实施例提供一种文档处理方法,本方法中,对于文档中的内嵌字体,首先确定待处理文档中内嵌字体的字体唯一标识,然后在本地字体库中查找与确定的字体唯一标识匹配的字体实例,并利用查找到的字体实例处理该文档中的数据。字体唯一标识是指可以在世界范围内唯一确定一个字体的标识符。但是,一个字体可以有多个字体唯一标识,该多个字体唯一标识被视为是等价的字体唯一标识。字体唯一标识可以采取字符串、数字或其它更复杂的形式。参见图1,本专利技术实施例提供的文档处理方法,包括以下步骤步骤10 确定待处理文档中内嵌字体的字体唯一标识;步骤11 在本地字体库中查找与确定的字体唯一标识匹配的字体实例;步骤12 利用查找到的字体实例处理待处理文档。具体可以如下首先,将待处理文档中记录的所述内嵌字体的字体实例存储地址重定向到查找到的字体实例,具体可以是将所述内嵌字体的字体实例存储地址更新为查找到的字体实例在字体库中的存储地址;然后,使用重定向后的字体实例处理待处理文档中使用所述内嵌字体的数据。例如,使用重定向后的字体实例显示或打印待处理文档中使用所述内嵌字体的数据。步骤10中,确定待处理文档中内嵌字体的字体唯一标识,具体可以采用如下三种方法第一种从待处理文档中或与待处理文档相关联的文件中获取字体唯一标识,将获取到的字体唯一标识确定为所述内嵌字体的字体唯一标识;采用本发方法,需要预先将内嵌字体的字体唯一标识存储在待处理文档或与待处理文档相关联的文件中;第二种,根据待处理文档中记录的内嵌字体的字体实例存储地址,获取所述内嵌字体的字体实例;根据获取到的字体实例生成字体唯一标识,将生成的字体唯一标识确定为所述内嵌字体的字体唯一标识;第三种,根据待处理文档中记录的所述内嵌字体的字体实例存储地址,获取所述内嵌字体的字体实例;根据获取到的字体实例生成字体唯一标识;查询与生成的字体唯一标识等价和/或相似的字体唯一标识;将生成的字体唯一标识与查询到的字体唯一标识确定为所述内嵌字体的字体唯一标识。第四种,从待处理文档中或与待处理文档相关联的文件中获取字体唯一标识;查询与获取的字体唯一标识等价和/或相似的字体唯一标识;将获取的字体唯一标识与查询到的字体唯一标识确定为所述内嵌字体的字体唯一标识。上述第三种和第四种方法中,查询与生成的字体唯一标识等价和/或相似的字体唯一标识的具体实现方法可以如下首先,向本文档来自技高网
...

【技术保护点】

【技术特征摘要】

【专利技术属性】
技术研发人员:段垚王长桥
申请(专利权)人:北大方正集团有限公司北京北大方正技术研究院有限公司利德科技发展有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1
相关领域技术