字符转换系统和字符转换方法
【专利摘要】本发明提供了一种字符转换系统,包括:解析单元,解析接收到的数据,确定数据所包含的至少一个字符,并获取至少一个字符中每个字符对应的属性信息;判断单元,对于每个字符,根据属性信息确定字符的字形位图,判断字形位图是否满足预设条件;转换单元,在判断单元判定满足预设条件的情况下,根据属性信息确定字符的初始内码,并根据初始内码对字符进行转换,在判断单元判定不满足预设条件的情况下,根据字形位图识别字符的实际内码,并根据实际内码对字符进行转换。本发明还提出了一种字符转换方法。通过本发明的技术方案,能够在字符转换过程中自动修正内码错误,避免了鉴定错误文档与修复或重建文档而耗费时间,减轻了字符转换时系统的负担。
【专利说明】字符转换系统和字符转换方法
【技术领域】
[0001] 本发明涉及文字处理【技术领域】,具体而言,涉及一种字符转换系统和一种字符转 换方法。
【背景技术】
[0002] 中文文字有简体字与繁体字之分,然而因为简体字与繁体字之间的差异甚大,造 成了这两种文字的使用者在交流信息上的隔阂。不仅是简体字的使用者在阅读繁体字上 有一定的困难,对于没接触过简体字的繁体字使用者来说,阅读一份简体字文件也只能理 解其中的部分内容。另外,简体字与繁体字所使用的编码也不相同,简体字是用GB (国标) 编码,繁体字则是使用Big5码,因此如果使用者所在的本地端没有装设相应的编解码设备 时,就会有显示乱码的情形发生。
[0003] 简繁转换工具正是根据此需求产生,无论是网站或文字编辑软件几乎都附有这类 的简繁转化工具,但要正确无误的转换一份简体字或繁体字文件,却并不轻松。通常的简繁 转换是根据简/繁体文字的内码查找相对应的繁/简体文字内码来进行转换,但当遇到内 码错误的情况就会出现转换出的内容与实际大相径庭的情况。这种文字内码与其字形不匹 配的现象称作乱码现象。
[0004] 乱码现象通常存在于含有内嵌字体数据格式的文档中,比如PDF或ePub等格式的 文档。含有乱码(错误内码)的文档通常是显示正确,而在提取或复制文字时却出现乱码,这 是由于文档在被制作时使用了特殊的字体或内嵌的字体数据经过了非常规的改动,导致文 档无法提供正确的文字内码。另一方面,一部分特殊字体其字形的度量也与一般字体存在 差异,这将导致使用一般字体绘制转换后的文字时可能出现字符大小显示异常的问题。由 于历史原因,这类含有乱码的文档是大量存在的。
[0005] 为了转换含有乱码的文档,只能重新制作文档,或采用OCR (光学字符识别)的技 术手段将文档逐页识别出文字再进行转换,而这两种方法都需要消耗额外的人力资源。
[0006] 因此,需要一种新的字符转换技术,能够在字符转换过程中自动修正内码错误,降 低人力消耗,并避免了鉴定错误文档与修复或重建文档而耗费时间,减轻了字符转换时系 统的负担。
【发明内容】
[0007] 本发明正是基于上述问题,提出了一种字符转换技术,能够在字符转换过程中自 动修正内码错误,降低人力消耗,并避免了鉴定错误文档与修复或重建文档而耗费时间,减 轻了字符转换时系统的负担。
[0008] 有鉴于此,本发明提出了一种字符转换系统,包括:解析单元,用于解析接收到的 数据,确定所述数据所包含的至少一个字符,并获取所述至少一个字符中每个字符对应的 属性信息;判断单元,对于所述每个字符,根据所述属性信息确定所述字符的字形位图,判 断所述字形位图是否满足预设条件;转换单元,用于在所述判断单元判定满足所述预设条 件的情况下,根据所述属性信息确定所述字符的初始内码,并根据所述初始内码对所述字 符进行转换,在所述判断单元判定不满足所述预设条件的情况下,根据所述字形位图识别 所述字符的实际内码,并根据所述实际内码对所述字符进行转换。
[0009] 在该技术方案中,可以通过判断待转换字符的位图是否满足预设条件,来确定待 转换字符的字体内码是否正确,并在字体内码不正确时,可以识别待转换字符的实际内码 作为转换依据,对待转换字符进行转换,从而实现了在字符转换过程中自动修复内码错误, 减少了鉴定错误文档与修复或重建文档所耗费的时间,达到减轻系统负担的技术功效。 [0010] 本发明还提出了一种字符转换方法,包括:解析接收到的数据,确定所述数据所包 含的至少一个字符,并获取所述至少一个字符中每个字符对应的属性信息;对于所述每个 字符,根据所述属性信息确定所述字符的字形位图,判断所述字形位图是否满足预设条件, 若满足所述预设条件,则根据所述属性信息确定所述字符的初始内码,并根据所述初始内 码对所述字符进行转换,若不满足所述预设条件,则根据所述字形位图识别所述字符的实 际内码,并根据所述实际内码对所述字符进行转换。
[0011] 在该技术方案中,可以通过判断待转换字符的位图是否满足预设条件,来确定待 转换字符的字体内码是否正确,并在字体内码不正确时,可以识别待转换字符的实际内码 作为转换依据,对待转换字符进行转换,从而实现了在字符转换过程中自动修复内码错误, 减少了鉴定错误文档与修复或重建文档所耗费的时间,达到减轻系统负担的技术功效。
[0012] 通过以上技术方案,能够在字符转换过程中自动修正内码错误,降低人力消耗,并 避免了鉴定错误文档与修复或重建文档而耗费时间,减轻了字符转换时系统的负担。
【专利附图】
【附图说明】
[0013] 图1示出了根据本发明的实施例的字符转换系统的框图;
[0014] 图2示出了根据本发明的实施例的字符转换方法的流程图;
[0015] 图3示出了根据本发明的实施例的字符转换系统的结构图;
[0016] 图4示出了根据本发明的实施例的字符转换方法的具体流程图;
[0017] 图5示出了根据本发明的实施例的判断字形相似度的流程图;
[0018] 图6A和图6B示出了根据本发明的实施例的字形转换的示意图。
【具体实施方式】
[0019] 为了能够更清楚地理解本发明的上述目的、特征和优点,下面结合附图和具体实 施方式对本发明进行进一步的详细描述。需要说明的是,在不冲突的情况下,本申请的实施 例及实施例中的特征可以相互组合。
[0020] 在下面的描述中阐述了很多具体细节以便于充分理解本发明,但是,本发明还可 以采用其他不同于在此描述的其他方式来实施,因此,本发明的保护范围并不受下面公开 的具体实施例的限制。
[0021] 图1示出了根据本发明的实施例的字符转换系统的框图。
[0022] 如图1所示,根据本发明的实施例的字符转换系统100包括:解析单元102,用于 解析接收到的数据,确定所述数据所包含的至少一个字符,并获取所述至少一个字符中每 个字符对应的属性信息;判断单元104,对于所述每个字符,根据所述属性信息确定所述字 符的字形位图,判断所述字形位图是否满足预设条件;转换单元106,用于在所述判断单元 104判定满足所述预设条件的情况下,根据所述属性信息确定所述字符的初始内码,并根据 所述初始内码对所述字符进行转换,在所述判断单元104判定不满足所述预设条件的情况 下,根据所述字形位图识别所述字符的实际内码,并根据所述实际内码对所述字符进行转 换。
[0023] 在上述技术方案中,优选地,还包括:相似度确定单元108,用于将所述字形位图 与标准位图进行比较得到字形相似度,根据所述字形相似度确定平均相似度,其中,所述判 断单元104用于判断平均相似度是否大于或等于预设阈值,所述转换单元106,用于在判断 单元104判定平均相似度大于或等于预设阈值时,根据属性信息确定字符的初始内码,根 据初始内码将字符转化为第一目标字符,以及在判断单元104判定平均相似度小于预设阈 值时,根据字形位图识别字符的实际内码,并根据实际内码将字符转化为第二目标字符。
[0024] 可以通过计算待转换字符的位图与标准位图的相似度,再判断相似度与预设阈值 的关系,来确定待转换字符的字体内码是否正确,并在字体内码不正确时,可以识别待转换 字符的实际内码作为转换依据,将待转换字符转换为第二目标字符,从而实现了在字符转 换过程中自动修复内码错误,减少了鉴定错误文档与修复或重建文档所耗费的时间,达到 减轻系统负担的技术功效。
[0025] 需要说明的是,上述第一目标字符和第二目标字符可以是相同类型的字符,也可 以是不同类型的字符。
[0026] 优选地,判断单元104用于根据所述属性信息确定所述字符分别对应的字体,并 获取每种字体对应的预设数目字符的字形位图,以及获取所述预设数目字符基于标准字体 的标准位图。
[0027] 可以根据待转换字符的字体,获取其中若干个字符的字形位图,再根据属性信息 中的内码(即初始内码)获取上述若干个字符基于标准字体(比如宋体)的标准位图,然后每 个字符的字形位图与其标准位图的进行字形对比为确定字形相似度,再根据每个字符的字 形相似度,计算平均相似度,从而可以准确地判断待转换字符的字形相似度与预设阈值的 大小关系,进而准确地判断待转换字符的字体的内码是否正确。
[0028] 优选地,还包括:内码类别判断单元110,用于根据属性信息判断字符的初始内码 属于预设类别;其中,在内码类别判断单元110的判断结果为是的情况下,所述判断单元 104根据属性信息确定字符分别对应的字体。
[0029] 当进行字符转换时,只有在待转换字符的内码属于特定类别的时,才进行转换,t匕 如在将简体字转换为繁体字时,可以检测待转换字符的内码为简体字内码,属于汉字的内 码类别,则可以进行转换,但是如果检测到待转换字符中存在内码为数字内码的字符时,则 不对该字符进行转换。
[0030] 优选地,还包括:调整度确定单元112,用于将字形位图的高度和宽度中较大的 值,与标准位图的高度和宽度中较大的值进行比较,得到字形调整度;字符绘制单元114, 用于根据所述第一目标字符对应的字形调整度调整所述第一目标字符的第一字号,根据校 准后的第一字号绘制所述第一目标字符,根据所述第二目标字符对应的字形调整度校准所 述第二目标字符的第二字号,并根据校准后的第二字号绘制所述第二目标字符,和/或根 据未转换的字符的字号绘制未转换的字符。
[0031] 在绘制转换后的字符之前,如果待绘制的字符的内码被纠正过(即以实际内码替 换过),则使用字形调整度调整该字符的字号,使其在转换后的字号可以与转换前的字号相 匹配。
[0032] 优选地,转换单元106通过光学字符识别技术识别字形位图以得到实际内码。
[0033] 图2示出了根据本发明的实施例的字符转换方法的流程图。
[0034] 如图2所示,根据本发明的实施例的字符转换方法包括:解析接收到的数据,确定 所述数据所包含的至少一个字符,并获取所述至少一个字符中每个字符对应的属性信息; 对于所述每个字符,根据所述属性信息确定所述字符的字形位图,判断所述字形位图是否 满足预设条件,若满足所述预设条件,则根据所述属性信息确定所述字符的初始内码,并根 据所述初始内码对所述字符进行转换,若不满足所述预设条件,则根据所述字形位图识别 所述字符的实际内码,并根据所述实际内码对所述字符进行转换。
[0035] 优选地,断所述字形位图是否满足所述预设条件的过程包括:将字形位图与标准 位图进行比较得到字形相似度,根据每个字符的字形相似度确定平均相似度,并将所述平 均相似度与预设阈值进行比较;若平均相似度大于或等于预设阈值,则根据属性信息确定 字符的初始内码,根据初始内码将字符转化为第一目标字符;若平均相似度小于预设阈值, 则根据字形位图识别字符的实际内码,并根据实际内码将字符转化为第二目标字符。
[0036] 可以通过计算待转换字符的位图与标准位图的相似度,再判断相似度与预设阈值 的关系,来确定待转换字符的字体内码是否正确,并在字体内码不正确时,可以识别待转换 字符的实际内码作为转换依据,将待转换字符转换为第二目标字符,从而实现了在字符转 换过程中自动修复内码错误,减少了鉴定错误文档与修复或重建文档所耗费的时间,达到 减轻系统负担的技术功效。
[0037] 优选地,根据所述属性信息确定所述字符的字形位图的过程包括:根据所述属性 信息确定所述字符分别对应的字体,并获取每种字体对应的预设数目字符的字形位图,以 及获取所述预设数目字符基于标准字体的标准位图。
[0038] 可以根据待转换字符的字体,获取其中若干个字符的字形位图,再根据属性信息 中的内码(即初始内码)获取上述若干个字符基于标准字体(比如宋体)的标准位图,然后每 个字符的字形位图与其标准位图的进行字形对比为确定字形相似度,再根据每个字符的字 形相似度,计算平均相似度,从而可以准确地判断待转换字符的字形相似度与预设阈值的 大小关系,进而准确地判断待转换字符的字体的内码是否正确。
[0039] 优选地,还包括:根据属性信息判断字符的初始内码属于预设类别,若属于,则对 字符进行转换,若不属于,则不对字符进行转换。
[0040] 当进行字符转换时,只有在待转换字符的内码属于特定类别的时,才进行转换,t匕 如在将简体字转换为繁体字时,可以检测待转换字符的内码为简体字内码,属于汉字的内 码类别,则可以进行转换,但是如果检测到待转换字符中存在内码为数字内码的字符时,则 不对该字符进行转换。
[0041] 优选地,还包括:将字形位图的高度和宽度中较大的值,与标准位图的高度和宽度 中较大的值进行比较,得到字形调整度;字符转换方法还包括:根据所述第一目标字符对 应的字形调整度调整所述第一目标字符的第一字号,根据校准后的第一字号绘制所述第一 目标字符,根据所述第二目标字符对应的字形调整度校准所述第二目标字符的第二字号, 并根据校准后的第二字号绘制所述第二目标字符,和/或根据未转换的字符的字号绘制未 转换的字符。
[0042] 在绘制转换后的字符之前,如果待绘制的字符的内码被纠正过(即以实际内码替 换过),则使用字形调整度调整该字符的字号,使其在转换后的字号可以与转换前的字号相 匹配。
[0043] 优选地,还包括:通过光学字符识别技术识别字形位图以得到实际内码。
[0044] 下面以将简体字转化为繁体字为例,来说明本发明的【具体实施方式】。
[0045] 图3示出了根据本发明的实施例的字符转换系统的结构图。
[0046] 如图3所示,根据本发明的实施例的字符转换系统100可以包括:解析模块302, 评估模块304,修正模块306,转换模块308,显示模块310。
[0047] 简体到繁体内码转换数据库储存有所有中文简体字的内码及其对应的中文繁体 字内码;繁体到简体内码转换数据库储存有所有中文繁体字的内码及其对应的中文简体字 内码。
[0048] 解析模块302用于将接收的数据内容解析为字体资源与文字内容;
[0049] 评估模块304用于评估各个字体,以确定需要进行纠错处理的字体,并计算出各 字体字形度量的调整值;
[0050] 修正模块306用于修正使用了含有错误内码的字体的文字内容;
[0051] 转换模块308用于把文字内容中的字符逐一转换为对应的繁/简体字符;
[0052] 显示模块310用于将转换后的文字内容绘制到输出设备上,如屏幕或打印机。
[0053] 图4示出了根据本发明的实施例的字符转换方法的具体流程图。
[0054] 如图4所示,根据本发明的实施例的字符转换方法具体包括:
[0055] 步骤402,建立包含有多个简体字内码及其对应的繁体字内码的转换数据库和包 含有多个繁体字内码及其对应的简体字内码的转换数据库;
[0056] 步骤404,接收一数据内容(比如PDF格式的文档),并解析出其中包含的各个字体 资源以及所有文字内容,其中文字内容包含了其所属的字体名称或编号(系统为字体分配 的编号,用于标识字体)、字号(用于描述字符被绘制时的尺寸大小)、其对应的字形编码以 及对应的字符内码;
[0057] 步骤406,对每种字体进行评估,从解析出的文字内容中选取一定数量的字符样 本,这些字符样本都使用正被评估的字体,且它们的内码在中文简体字内码范围内,对这些 字符样本分别获取同一字号的被评估字体的对应的字形位图与标准字体(如宋体)的对应 字形位图,将两个字形位图进行字形对比(OCR中常见的一个处理步骤)得到字形相似度,再 将两个位图边长(此边长为位图宽度和高度其中的较大值)相除得到字形度量调整度,最后 统计字符样本的相似度平均值和字形度量调整度平均值;
[0058] 步骤408,判断相似度平均值是否小于预先设定的阈值,若大于或等于,则进入步 骤 412 ;
[0059] 步骤410,若小于,则判定字符的当前字体内码错误,需要被修正,通过OCR功能识 别字符对应的字形位图,进而得到正确的字符内码(即实际内码),并替换该文字内容中的 内码;
[0060] 步骤412,判断字符内码是否属于中文汉字内码范围内,若不属于,则无须转换此 字符;
[0061] 步骤414,若属于,则在简体到繁体内码转换数据库中查找与此字符内码相对应的 繁体字内码,并且将其所属的字体名称或编号改为某一默认繁体字体(如明流);
[0062] 步骤416,依次绘制所有文字内容,对于转换过的字符可通过内码获取其对应的字 形位图进行绘制,在绘制前使用字形调整度来校准当前字符的字号;
[0063] 步骤418,对于未转换过的字符可通过字形编码获取其对应的字形位图进行绘制。
[0064] 通过上述的技术手段,本发明减少了鉴定错误文档与修复或重建文档所耗费的时 间,达到减轻系统负担的技术功效。
[0065] 图5示出了根据本发明的实施例的判断字形相似度的流程图。
[0066] 如图5所示,判断字形相似度的方法包括:
[0067] 步骤502,获取待转换字符中的一个字符;
[0068] 步骤504,判断该字符的字体是否为当前被评估的字体,若不是,则返回步骤502, 获取下一个字符;
[0069] 步骤506,若是当前被评估的字体,则判断该字符的内码是否在简体字内码范围 内,若不在,则返回步骤502,获取下一字符;
[0070] 步骤508,若在简体字内码范围内,则获取该字符基于当前字体的字形位图和基于 标准字体的标准位图;
[0071] 步骤510,比较字形位图和标准位图的字形相似度,并获取字形位图中长和宽中的 较大值,与标准位图中长和宽的较大值相比,得到字形调整度;
[0072] 步骤512,计算若干个字符的字形相似度平均值和字形调整度平均值;
[0073] 步骤514,判断字形相似度平均值是否小于预设阈值;
[0074] 步骤516,若小于,则判定字符的当前字体为使用错误内码的字体,记录相应的字 形调整度;
[0075] 步骤518,若大于,则判定字符的当前字体为使用正确内码的字体,记录相应的字 形调整度。
[0076] 图6A和图6B示出了根据本发明的实施例的字形转换的示意图。
[0077] 比如有一篇如图6A所示的文档,需要对其做简体到繁体的转换。其中第一行字符 内容使用字体A,内码正确,其余字符内容使用字体B,内码错误。
[0078] 那么首先建立包含有多个简体字内码及其对应的繁体字内码的转换数据库和包 含有多个繁体字内码及其对应的简体字内码的转换数据库,解析出文档使用的两种字体以 及其中所有的文字内容,其中字体中包含了大量字形描述信息,通过字形编码能够获取特 定的字形描述信息进而得到字符位图,而文字内容是由每个字符所属的字体名称或ID、其 对应的字形编码以及对应的字符内码组成,具体的文字内容如表1所示:
【权利要求】
1. 一种字符转换系统,其特征在于,包括: 解析单元,用于解析接收到的数据,确定所述数据所包含的至少一个字符,并获取所述 至少一个字符中每个字符对应的属性信息; 判断单元,对于所述每个字符,根据所述属性信息确定所述字符的字形位图,判断所述 字形位图是否满足预设条件; 转换单元,用于在所述判断单元判定满足所述预设条件的情况下,根据所述属性信息 确定所述字符的初始内码,并根据所述初始内码对所述字符进行转换,在所述判断单元判 定不满足所述预设条件的情况下,根据所述字形位图识别所述字符的实际内码,并根据所 述实际内码对所述字符进行转换。
2. 根据权利要求1所述的字符转换系统,其特征在于,还包括: 相似度确定单元,用于将所述字形位图与标准位图进行比较得到字形相似度,根据所 述字形相似度确定平均相似度, 其中,所述判断单元用于判断所述平均相似度是否大于或等于预设阔值,所述转换单 元在所述判断单元判定所述平均相似度大于或等于所述预设阔值时,根据所述属性信息确 定所述字符的初始内码,根据所述初始内码将所述字符转化为第一目标字符,W及在所述 判断单元判定所述平均相似度小于所述预设阔值时,根据所述字形位图识别所述字符的实 际内码,并根据所述实际内码将所述字符转化为第二目标字符。
3. 根据权利要求2所述的字符转换系统,其特征在于,所述判断单元用于根据所述属 性信息确定所述字符分别对应的字体,并获取每种字体对应的预设数目字符的字形位图, W及获取所述预设数目字符基于标准字体的标准位图。
4. 根据权利要求2所述的字符转换系统,其特征在于,还包括: 调整度确定单元,用于将所述字形位图的高度和宽度中较大的值,与所述标准位图的 高度和宽度中较大的值进行比较,得到字形调整度; 字符绘制单元,用于根据所述第一目标字符对应的字形调整度调整所述第一目标字符 的第一字号,根据校准后的第一字号绘制所述第一目标字符,根据所述第二目标字符对应 的字形调整度校准所述第二目标字符的第二字号,并根据校准后的第二字号绘制所述第二 目标字符,和/或根据所述未转换的字符的字号绘制所述未转换的字符。
5. 根据权利要求1至4中任一项所述的字符转换系统,其特征在于,所述转换单元通过 光学字符识别技术识别所述字形位图W得到所述实际内码。
6. -种字符转换方法,其特征在于,包括: 解析接收到的数据,确定所述数据所包含的至少一个字符,并获取所述至少一个字符 中每个字符对应的属性信息; 对于所述每个字符,根据所述属性信息确定所述字符的字形位图,判断所述字形位图 是否满足预设条件,若满足所述预设条件,则根据所述属性信息确定所述字符的初始内码, 并根据所述初始内码对所述字符进行转换,若不满足所述预设条件,则根据所述字形位图 识别所述字符的实际内码,并根据所述实际内码对所述字符进行转换。
7. 根据权利要求6所述的字符转换方法,其特征在于,断所述字形位图是否满足所述 预设条件的过程包括:将所述字形位图与标准位图进行比较,W得到字形相似度;根据所 述字形相似度确定平均相似度,并将所述平均相似度与预设阔值进行比较; 若所述平均相似度大于或等于所述预设阔值,则根据所述属性信息确定所述字符的初 始内码,根据所述初始内码将所述字符转化为第一目标字符; 若所述平均相似度小于所述预设阔值,则根据所述字形位图识别所述字符的实际内 码,并根据所述实际内码将所述字符转化为第二目标字符。
8. 根据权利要求7所述的字符转换方法,其特征在于,根据所述属性信息确定所述字 符的字形位图的过程包括;根据所述属性信息确定所述字符分别对应的字体,并获取每种 字体对应的预设数目字符的字形位图,W及获取所述预设数目字符基于标准字体的标准位 图。
9. 根据权利要求7所述的字符转换方法,其特征在于,还包括:将所述字形位图的高度 和宽度中较大的值,与所述标准位图的高度和宽度中较大的值进行比较,得到字形调整度; 根据所述第一目标字符对应的字形调整度调整所述第一目标字符的第一字号,根据校准后 的第一字号绘制所述第一目标字符,根据所述第二目标字符对应的字形调整度校准所述第 二目标字符的第二字号,并根据校准后的第二字号绘制所述第二目标字符,和/或根据所 述未转换的字符的字号绘制所述未转换的字符。
10. 根据权利要求6至9中任一项所述的字符转换方法,其特征在于,还包括;通过光 学字符识别技术识别所述字形位图W得到所述实际内码。
【文档编号】G06F17/28GK104462068SQ201310415209
【公开日】2015年3月25日 申请日期:2013年9月12日 优先权日:2013年9月12日
【发明者】徐剑波, 孙浩鹏, 丁力, 王海涛, 耿蕾蕾 申请人:北大方正集团有限公司, 北京方正阿帕比技术有限公司, 方正信息产业控股有限公司