应用程序中的文字检测方法和装置制造方法

文档序号:6493648阅读:184来源:国知局
应用程序中的文字检测方法和装置制造方法
【专利摘要】本发明实施例提供了一种应用程序中的文字检测方法和装置。所述方法包括:从多语言应用程序安装包中提取资源文件,并将所述资源文件转换为文本文件;按照语言版本对文本文件进行拆分得到对应的语言文本文件;根据语言版本调用语言检测工具;通过语言检测工具检测语言文本文件得到可疑字符信息。所述装置包括:文件处理模块,用于从多语言应用程序安装包中提取资源文件,并将所述资源文件转换为文本文件;拆分模块,用于按照语言版本对文本文件进行拆分得到对应的语言文本文件;工具调用模块,用于根据语言版本调用语言检测工具;文本检测模块,用于通过语言检测工具检测语言文本文件得到可疑字符信息。采用本发明能提高应用程序中文字检测的效率。
【专利说明】应用程序中的文字检测方法和装置
【技术领域】
[0001]本发明涉及软件调试技术,特别是涉及一种应用程序中的文字检测方法和装置。【背景技术】
[0002]随着各种应用程序的普遍使用,每一应用程序所面向的用户类型也越来越多,应用程序用户使用的语言并不仅限于单一种类的语言文字,例如中文,而是越来越多的用户使用英文、马来西亚文等各种不同的语言文字,因此,为适应各种不同用户的需求,多语言应用程序根据用户的选择提供了各种不同语言版本。
[0003]相应的,在应用程序中的文字检测中也应当对交互界面的语言文字进行检测,应用程序中的文字检测方式包括切换不同的语言版本进行检测和提取多语言应用程序的资源文件进行人工检测。其中,在切换不同的语言版本进行检测的过程中,首先将多语言应用程序安装于终端设备,并运行,切换各种不同的语言版本,检查该语言版本下所有交互界面的语言文字,但是,这一检测方式难以确保遍历检查到每一语言版本下所有的交互界面,并且在检测过程中还需配合多语言应用程序的操作进行,效率较低。
[0004]而提取资源文件进行人工检测的方式需要交由不同语言的专业人士负责,例如,英文版本的应用程序需由英语专业人员进行检测,印度语版本的应用程序需由印度语专业人员进行检测,效率更为低下。

【发明内容】

[0005]基于此,有必要针对检测效率低的问题,提供一种能提高效率的应用程序中的文字检测方法。
[0006]此外,还有必要提供一种能提高效率的应用程序中的文字检测装置。
[0007]一种应用程序中的文字检测方法,包括如下步骤:
[0008]从多语言应用程序安装包中提取资源文件,并将所述资源文件转换为文本文件;
[0009]按照语言版本对所述文本文件进行拆分得到对应的语言文本文件;
[0010]根据所述语言版本调用语言检测工具;
[0011]通过所述语言检测工具检测所述语言文本文件得到可疑字符信息。
[0012]一种应用程序中的文字检测装置,包括:
[0013]文件处理模块,用于从多语言应用程序安装包中提取资源文件,并将所述资源文件转换为文本文件;
[0014]拆分模块,用于按照语言版本对所述文本文件进行拆分得到对应的语言文本文件;
[0015]工具调用模块,用于根据所述语言版本调用语言检测工具;
[0016]文本检测模块,用于通过所述语言检测工具检测所述语言文本文件得到可疑字符信息。上述应用程序中的文字检测方法和装置,提取资源文件,并自动将提取的资源文件转换为适于进行检测的文本文件,进而根据不同的语言版本将文本文件拆分为相应的语言文本文件,逐一对每一语言版本所对应的语言文本文件进行正确性检测,不需要配合多语言应用程序的操作以及专业人员的人工检测即可完成,大大地提高了效率。
【专利附图】

【附图说明】
[0017]图1为一个实施例中应用程序中的文字检测方法的流程图;
[0018]图2为图1中按照语言版本对文本文件进行拆分得到对应的语言文本文件的方法流程图;
[0019]图3为另一个实施例中应用程序中的文字检测方法的流程图;
[0020]图4为另一个实施例中应用程序中的文字检测方法的流程图;
[0021]图5为另一个实施例中检测语言文本文件的方法流程图;
[0022]图6为一个实施例中应用程序中的文字检测装置的结构示意图;
[0023]图7为图7中拆分模块的结构示意图;
[0024]图8为另一个实施例中应用程序中的文字检测装置的结构示意图;
[0025]图9为另一个实施例中检测模块的结构示意图。
【具体实施方式】
[0026]如图1所示,在一个实施例中,一种应用程序中的文字检测方法,包括如下步骤:
[0027]步骤S110,从多语言应用程序安装包中提取资源文件,并将资源文件转换为文本文件。
[0028]本实施例中,资源文件用于在应用程序中不需要重新编辑代码即可为用户提供各种交互界面以及交互界面中的文字、图像。资源文件包括了交互界面所对应的位图、字符以及其它数据,每一应用程序对应了一个资源文件,并根据提供的语言版本在资源文件中存储了相应语言版本的字符。
[0029]从应用程序的多语言应用程序安装包中提取资源文件,将提取到的资源文件转换为文本格式,得到该资源文件对应的文本文件,以适用于资源文件中字符的检测。
[0030]具体的,应用程序的多语言应用程序安装包为运行于终端设备,并安装应用程序的可执行文件,例如,在移动终端的Android操作系统中,应用程序的多语言应用程序安装包是后缀名为.apk的文件。
[0031]步骤S130,按照语言版本对文本文件进行拆分得到对应的语言文本文件。
[0032]本实施例中,资源文件为运行于终端设备中的应用程序提供了至少一个语言版本的交互界面,并且资源文件的文本文件中,字符是根据相应的语言版本进行有序存储的,例如,文本文件的每一列对应了一个语言版本。按照语言版本对文本文件进行拆分得到每一语言版本对应的语言文本文件,将包含了多语言字符的文本文件分成多个单语言字符的文本文件,即每一语言版本所对应的语言文本文件。
[0033]如图2所示,在一个实施例中,上述步骤S130的具体过程为:
[0034]步骤S131,根据语言版本从文本文件中提取对应的字符。
[0035]本实施例中,根据语言版本逐一在文本文件中提取该语言版本所对应的字符。
[0036]步骤S133,将字符保存为语言文本文件,并根据语言版本命名保存的语言文本文件。[0037]本实施例中,将根据语言版本提取到的字符保存为文本格式得到该语言版本所对应的语言文本文件,并将该语言版本对应的语言名称使用语言文本文件的文件名。
[0038]步骤S150,根据语言版本调用语言检测工具。
[0039]本实施例中,为测试应用程序交互界面中文字是否正确,需逐一对每一语言版本的语言文本文件中的字符进行检测,以判断语言文本文件中用于形成交互界面文字的字符正确性。
[0040]语言检测工具用于进行文字检测,不同的语言检测工具对应了不同的语言版本,并对文本格式的文件进行检测。根据语言版本得到语言文本文件的语种,进而调用该语种所对应的语言检测工具。语言检测工具所进行的文字检测包括拼写检测以及语法检测,但并不仅限于此。
[0041]步骤S170,通过语言检测工具检测语言文本文件得到可疑字符信息。
[0042]本实施例中,应用语言检测工具对语言文本文件中的字符进行检测得到可疑字符信息,可疑字符信息包括了可疑字符、所在位置以及修改建议等信息,语言文本文件中得到的可疑字符信息形成列表的形式显示。
[0043]如图3所示,在另一个实施例中,上述应用程序中的文字检测方法还包括如下步骤:
[0044]步骤S210,从可疑字符信息中提取出误判的可疑字符信息。
[0045]本实施例中,由语言检测工具进行检测得到的可疑字符信息可能包含了实质为正确的可疑字符信息,即误判的字符信息,因此还需对得到的可疑字符信息进行筛选以提取出误判的可疑字符信息。
[0046]如图4所示,在另一个实施例中,上述步骤S210之前还包括如下步骤:
[0047]步骤S310,判断可疑字符信息中是否存在误判的可疑字符信息,若是,则进入上述步骤S210,若否,则进入步骤S330。
[0048]本实施例中,获取人工筛选得到的误判的可疑字符信息,并以此为依据判断语言检测工具检测得到的可疑字符信息是否被误判,若是,则提取误判的可疑字符信息,若否,则直接输出语言检测工具检测得到的可疑字符信息,以方便修正语言文本文件中的字符。
[0049]步骤S330,输出可疑字符信息。
[0050]步骤S230,记录误判的可疑字符信息。
[0051]本实施例中,将误判的可疑字符信息记录到字典,字典为语言检测工具所附带的词库,记录了正确的字符,在语言文本文件和字典的比对中若语言文本文件的字符与字典记录的字符相一致,则判定语言文本文件的字符为正确的,若不相一致,则判定语言文本文件的字符为可疑字符。
[0052]在一个实施例中,上述应用程序中的文字检测方法还包括:根据记录的误判的可疑字符信息去除检测得到的可疑字符信息中误判的可疑字符信息的步骤。
[0053]本实施例中,在对语言文本文件进行检测,并记录了语言文本文件中误判的可疑字符信息之后,还将根据记录的误判的可疑字符再次进行检测,去除可疑字符信息中误判的可疑字符信息,重新得到更为准确的文字检测结果。
[0054]如图5所示,在另一个实施例中,上述应用程序中的文字检测方法还包括:
[0055]步骤S410,获取终端设备的分辨率信息。[0056]本实施例中,获取运行应用程序的终端设备屏幕的分辨率信息。分辨率信息用于通过水平和垂直像素来衡量终端设备屏幕每一行或列中显示文字的数量。
[0057]步骤S430,判断语言文本文件中字符的断行是否与分辨率信息相匹配,若否,则进入步骤S450,若是,则结束。
[0058]本实施例中,上述判断语言文本文件中字符的断行是否与分辨率信息相匹配的具体过程为:根据语言文本文件得到对应的语种并获取应用程序交互界面显示的字号,根据语种和显示的字号计算得到字符所占据的宽度,该宽度是通过像素表示的,根据分辨率信息计算终端设备屏幕得到每行所包含的像素点数量,进而将每行所包含的像素点数量和宽相除得到每行容纳字数,根据每行容纳字数判断语言文本文件中字符的断行是否正确,若不正确,则生成相应的可疑字符信息,以通过可疑字符信息标识断行错误的字符。
[0059]此外,上述步骤S430也可通过判断语言文本文件中同一行的字符长度所占据的像素值是否与屏幕中每行所包含的像素点数量相匹配来识别断行错误的字符,判断到同一行的字符长度所占据的像素值超出了屏幕中每行所包含的像素点数量,则说明出现了断行错误。
[0060]步骤S450,生成字符对应的可疑字符信息。
[0061]本实施例中,该可疑字符信息包括了断行出错的字符、所处位置以及修改建议等信息。
[0062]如图6所示,在一个实施例中,一种应用程序中的文字检测装置,包括文件处理模块110、拆分模块130、工具调用模块150和文本检测模块170。
[0063]文件处理模块110,用于从多语言应用程序安装包中提取资源文件,并将资源文件转换为文本文件。
[0064]本实施例中,资源文件用于在应用程序中不需要重新编辑代码即可为用户提供各种交互界面以及交互界面中的文字、图像。资源文件包括了交互界面所对应的位图、字符以及其它数据,每一应用程序对应了一个资源文件,并根据提供的语言版本在资源文件中存储了相应语言版本的字符。
[0065]文件处理模块110从应用程序的多语言应用程序安装包中提取资源文件,将提取到的资源文件转换为文本格式,得到该资源文件对应的文本文件,以适用于资源文件中字符的检测。
[0066]具体的,应用程序的多语言应用程序安装包为运行于终端设备,并安装应用程序的可执行文件,例如,在移动终端的Android操作系统中,应用程序的多语言应用程序安装包是后缀名为.apk的文件。
[0067]拆分模块130,用于按照语言版本对文本文件进行拆分得到对应的语言文本文件。
[0068]本实施例中,资源文件为运行于终端设备中的应用程序提供了至少一个语言版本的交互界面,并且资源文件的文本文件中,字符是根据相应的语言版本进行有序存储的,例如,文本文件的每一列对应了一个语言版本。拆分模块130按照语言版本对文本文件进行拆分得到每一语言版本对应的语言文本文件,将包含了多语言字符的文本文件分成多个单语言字符的文本文件,即每一语言版本所对应的语言文本文件。
[0069]如图7所示,在一个实施例中,拆分模块130包括字符提取单元131以及存储单元133。[0070]字符提取单元131,用于根据语言版本从文本文件中提取对应的字符。
[0071]本实施例中,字符提取单元131根据语言版本逐一在文本文件中提取该语言版本所对应的字符。
[0072]存储单元133,用于将字符保存为语言文本文件,并根据语言版本命名保存的语言文本文件。
[0073]本实施例中,存储单元133将根据语言版本提取到的字符保存为文本格式得到该语言版本所对应的语言文本文件,并将该语言版本对应的语言名称使用语言文本文件的文件名。
[0074]工具调用模块150,用于根据语言版本调用语言检测工具。
[0075]本实施例中,为测试应用程序交互界面中文字是否正确,需逐一对每一语言版本的语言文本文件中的字符进行检测,以判断语言文本文件中用于形成交互界面文字的字符正确性。
[0076]语言检测工具用于进行文字检测,不同的语言检测工具对应了不同的语言版本,并对文本格式的文件进行检测。工具调用模块150根据语言版本得到语言文本文件的语种,进而调用该语种所对应的语言检测工具。语言检测工具所进行的文字检测包括拼写检测以及语法检测,但并不仅限于此。
[0077]文本检测模块170,用于通过语言检测工具检测语言文本文件得到可疑字符信息。
[0078]本实施例中,文本检测模块170应用语言检测工具对语言文本文件中的字符进行检测得到可疑字符信息,可疑字符信息包括了可疑字符、所在位置以及修改建议等信息,语言文本文件中得到的可疑字符信息形成列表的形式显示。
[0079]如图8所示,在另一个实施例中,上述应用程序中的文字检测装置还包括误判信息提取模块210以及记录模块230。
[0080]误判信息提取模块210,用于从可疑字符信息提取出误判的可疑字符信息。
[0081]本实施例中,由语言检测工具进行检测得到的可疑字符信息可能包含了实质为正确的可疑字符信息,即误判的字符信息,因此还需误判信息提取模块210对得到的可疑字符信息进行筛选以提取出误判的可疑字符信息。
[0082]在另一个实施使你中,上述应用程序中文字检测装置还包括误判信息识别模块,该误判信息识别模块用于判断可疑字符信息中是否存在误判的可疑字符信息,若是,则通知上述误判信息提取模块210,若否,则输出可疑字符信息。
[0083]本实施例中,误判信息识别模块获取人工筛选得到的误判的可疑字符信息,并以此为依据判断语言检测工具检测得到的可疑字符信息是否被误判,若是,则提取误判的可疑字符信息,若否,则直接输出语言检测工具检测得到的可疑字符信息,以方便修正语言文本文件中的字符。
[0084]记录模块230,用于记录误判的可疑字符信息。
[0085]本实施例中,记录模块230将误判的可疑字符信息记录到字典,字典为语言检测工具所附带的词库,记录了正确的字符,在语言文本文件和字典的比对中若语言文本文件的字符与字典记录的字符相一致,则判定语言文本文件的字符为正确的,若不相一致,则判定语言文本文件的字符为可疑字符。
[0086]上述文本检测模块170还用于根据记录的误判的可疑字符信息去除检测得到的可疑字符信息中误判的可疑字符信息。
[0087]本实施例中,在对语言文本文件进行检测,并记录了语言文本文件中误判的可疑字符信息之后,文本检测模块170还将根据记录的误判的可疑字符再次进行检测,去除可疑字符信息中误判的可疑字符信息,重新得到更为准确的文字检测结果。
[0088]如图9所示,在另一个实施例中,上述应用程序中的文字检测装置还包括获取模块310以及断行检测模块330。
[0089]获取模块310,用于获取终端设备的分辨率信息。
[0090]本实施例中,获取模块310获取运行应用程序的终端设备屏幕的分辨率信息。分辨率信息用于通过水平和垂直像素来衡量终端设备屏幕每一行或列中显示文字的数量。
[0091]断行检测模块330,用于判断语言文本文件中字符的断行是否与分辨率信息相匹配,若否,则生成该字符对应的可疑字符信息,若是,则停止执行。
[0092]本实施例中,断行检测模块330根据语言文本文件得到对应的语种并获取应用程序交互界面显示的字号,根据语种和显示的字号计算得到字符所占据的宽度,该宽度是通过像素表示的,根据分辨率信息计算终端设备屏幕得到每行所包含的像素点数量,进而将每行所包含的像素点数量和宽相除得到每行容纳字数,根据每行容纳字数判断语言文本文件中字符的断行是否正确,若不正确,则生成相应的可疑字符信息,以通过可疑字符信息标识断行错误的字符。
[0093]此外,断行检测模块330也可通过判断语言文本文件中同一行的字符长度所占据的像素值是否与屏幕中每行所包含的像素点数量相匹配来识别断行错误的字符,判断到同一行的字符长度所占据的像素值超出了屏幕中每行所包含的像素点数量,则说明出现了断行错误。可疑字符信息包括了断行出错的字符、所处位置以及修改建议等信息。
[0094]上述应用程序中的文字检测方法和装置,提取资源文件,并自动将提取的资源文件转换为适于进行检测的文本文件,进而根据不同的语言版本将文本文件拆分为相应的语言文本文件,逐一对每一语言版本所对应的语言文本文件进行正确性检测,不需要配合多语言应用程序的操作以及专业人员的人工检测即可完成,大大地提高了效率。
[0095]以上所述实施例仅表达了本发明的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对本发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若干变形和改进,这些都属于本发明的保护范围。因此,本发明专利的保护范围应以所附权利要求为准。
【权利要求】
1.一种应用程序中的文字检测方法,包括如下步骤: 从多语言应用程序安装包中提取资源文件,并将所述资源文件转换为文本文件; 按照语言版本对所述文本文件进行拆分得到对应的语言文本文件; 根据所述语言版本调用语言检测工具; 通过所述语言检测工具检测所述语言文本文件得到可疑字符信息。
2.根据权利要求1所述的应用程序中的文字检测方法,其特征在于,所述按照语言版本对所述文本文件进行拆分得到对应的语言文本文件的步骤为: 根据语言版本从所述文本文件中提取对应的字符; 将所述字符保存为语言文本文件,并根据所述语言版本命名所述保存的语言文本文件。
3.根据权利要求1所述的应用程序中的文字检测方法,其特征在于,还包括: 获取终端设备的分辨率信息; 判断所述语言文本文件中字符的断行是否与所述分辨率信息相匹配,若否,则生成所述字符对应的可疑字符信息。
4.根据权利要求1所述的应用程序中的文字检测方法,其特征在于,还包括: 从所述可疑字符信息提取出误判的可疑字符信息; 记录所述误判的可疑字符信息; 根据所述记录的误判的可疑字符信息去除所述检测得到的可疑字符信息中误判的可疑字符信息。
5.根据权利要求4所述的应用程序中的文字检测方法,其特征在于,所述从所述可疑字符信息提取出误判的可疑字符信息的步骤之前还包括: 判断所述可疑字符信息中是否存在误判的可疑字符信息,若是,则进入所述从所述可疑字符信息提取出误判的可疑字符信息的步骤; 若否,则输出所述可疑字符信息。
6.一种应用程序中的文字检测装置,其特征在于,包括: 文件处理模块,用于从多语言应用程序安装包中提取资源文件,并将所述资源文件转换为文本文件; 拆分模块,用于按照语言版本对所述文本文件进行拆分得到对应的语言文本文件; 工具调用模块,用于根据所述语言版本调用语言检测工具; 文本检测模块,用于通过所述语言检测工具检测所述语言文本文件得到可疑字符信肩、O
7.根据权利要求6所述的应用程序中的文字检测装置,其特征在于,所述拆分模块包括: 字符提取单元,用于根据语言版本从所述文本文件中提取对应的字符; 存储单元,用于将所述字符保存为语言文本文件,并根据所述语言版本命名所述保存的语言文本文件。
8.根据权利要求6所述的应用程序中的文字检测装置,其特征在于,还包括: 获取模块,用于获取终端设备的分辨率信息; 断行检测模块,用于判断所述语言文本文件中字符的断行是否与所述分辨率信息相匹配,若否,则生成所述字符对应的可疑字符信息。
9.根据权利要求6所述的应用程序中的文字检测装置,其特征在于,还包括: 误判信息提取模块,用于从所述可疑字符信息提取出误判的可疑字符信息; 记录模块,用于记录所述误判的可疑字符信息; 所述文本检测模块还用于根据所述记录的误判的可疑字符信息去除所述检测得到的可疑字符信息中误判的可疑字符信息。
10.根据权利要求9所述的应用程序中的文字检测装置,其特征在于,还包括: 误判信息识别模块,用于判断所述可疑字符信息中是否存在误判的可疑字符信息,若是,则通知所述误判信息提 取模块,若否,则输出所述可疑字符信息。
【文档编号】G06F11/36GK103902440SQ201210572578
【公开日】2014年7月2日 申请日期:2012年12月25日 优先权日:2012年12月25日
【发明者】丁如敏, 霍举振, 高苡新 申请人:腾讯科技(深圳)有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1