系统国际化的配置方法、装置、设备及存储介质与流程

文档序号:28739027发布日期:2022-02-07 21:18阅读:111来源:国知局
系统国际化的配置方法、装置、设备及存储介质与流程

1.本发明涉及数据处理领域,尤其涉及一种系统国际化的配置方法、装置、设备及存储介质。


背景技术:

2.软件是利用计算机解决某类问题而设计的程序的集合,软件可服务于各领域、不同人群,随着软件在世界各国的广泛应用,软件处理语言的单一性给软件的普及和用户的应用带来了不便,为了能够提供更好的交流和服务,软件不但要提供一国的语言版本,还要提供其他国际语言的版本,如何使软件能够处理多种语言已成为人们关注的问题,软件的国际化是解决这一问题的有效途径。
3.对软件国际化的一般步骤是,在软件开发阶段,人为提取需要国际化的内容,对这些内容生成各种语言资源包,完成软件国际化,在软件开发提取国际化内容的过程中,现有业内、产品和专利只是定义了国际化的开发框架,开发人员需要在框架的要求下进行开发和改造开发实现开发功能,开发周期长,影响目标系统上线或更新。


技术实现要素:

4.本发明的主要目的在于解决现有的目标系统国际化处理在软件开发提取国际化内容的过程中,开发人员需要在框架的要求下进行开发和改造开发实现开发功能的技术问题。
5.本发明第一方面提供了一种系统国际化的配置方法,包括:获取目标系统的源文件,并对所述源文件中的源代码进行扫描,确定所述目标系统中的素材信息,其中,所述素材信息包括第一目标系统图片和第一语言系统文本;根据预设的光学字符识别技术提取所述第一目标系统图片中的第一语言文本信息,并生成所述素材信息对应的国际化键值;调用预设的翻译接口,通过所述翻译接口对所述第一语言文本信息和所述第一语言系统文本进行翻译,得到多种语言的第二语言文本;根据所述第一语言文本信息对应的第二语言文本生成所述第一目标系统图片对应的第二目标系统图片;将所述第二语言文本、所述第二目标系统图片和所述国际化键值存储至预设的配置库中;实时监听所述目标系统是否发起国际化请求,其中,所述国际化请求包括国际化键值;当监听到所述目标系统发起国际化请求时,根据所述国际化请求中的国际化键值从所述配置库中调用对应的第二语言文本和第二目标系统图片,并根据调用的第二语言文本和第二目标系统图片对所述目标系统进行国际化处理。
6.可选的,在本发明第一方面的第一种实现方式中,所述获取目标系统的源文件,并对所述源文件中的源代码进行扫描,确定所述目标系统中的素材信息包括:获取目标系统的源文件的文件后缀,根据所述文件后缀确定所述源文件对应的编程语言;根据所述编程语言,确定对应的语法分析器,并通过所述语法分析器将所述源代码转换成对应的抽象语法树;识别所述抽象语法树中各节点的字符的unicode编码;根据预设的unicode编码区间、
各节点的字符的unicode编码和所述编程语言的代码格式,从源文件中确定所述目标系统中的素材信息。
7.可选的,在本发明第一方面的第二种实现方式中,所述根据预设的unicode编码区间、各节点的字符的unicode编码和所述编程语言的代码格式,从源文件中确定所述目标系统中的素材信息包括:确定unicode编码在所述unicode编码区间中的字符,将所述字符作为第一语言系统文本;根据所述编程语言的代码格式,判断所述源代码中是否包含图片标签;若是,则解析所述图片标签中的图片链接地址,并根据所述图片链接地址获取所述第一目标系统图片。
8.可选的,在本发明第一方面的第三种实现方式中,所述调用预设的翻译接口,通过所述翻译接口对所述第一语言文本信息和所述第一语言系统文本进行翻译,得到多种语言的第二语言文本包括:调用预设的翻译接口,其中,所述翻译接口关联至翻译软件;将所述第一语言文本信息和所述第一语言系统文本通过所述翻译接口发送至所述翻译软件;接收所述翻译软件通过所述翻译接口返回的翻译内容,并将所述翻译内容作为第二语言文本。
9.可选的,在本发明第一方面的第四种实现方式中,所述根据所述第一语言文本信息对应的第二语言文本生成所述第一目标系统图片对应的第二目标系统图片包括:对所述第一目标系统图片进行图片预处理和文字区域检测,得到所述第一语言文本信息在所述第一目标系统图像中的文字区域;将所述文字区域使用背景色覆盖,并将所述文字区域设置为可编辑区域;根据所述可编辑区域对所述第一语言文本信息对应的第二语言文本进行排版处理,得到文字排版结果;将所述第一语言文本信息对应的第二语言文本根据所述文字排版结果填充至所述可编辑区域中,得到第二目标系统图片。
10.可选的,在本发明第一方面的第五种实现方式中,所述对所述第一目标系统图片进行图片预处理和文字区域检测,得到所述第一语言文本信息在所述第一目标系统图像中的文字区域包括:对所述第一目标系统图片进行图片预处理并对将图片预处理后的第一目标系统图片中的文字进行内容对齐,其中,所述图片预处理包括图片去噪处理和对比度调整;采用预设的区域检测器对图片预处理后的第一目标系统图片进行文字区域检测,得到所述第一目标系统图像中的文字区域。
11.可选的,在本发明第一方面的第六种实现方式中,所述国际化请求还包括请求目标系统语言,所述根据所述国际化请求中的国际化键值从所述配置库中调用对应的第二语言文本和第二目标系统图片,并根据调用的第二语言文本和第二目标系统图片对所述目标系统进行国际化处理包括:根据所述国际化请求中的请求目标系统语言和所述国际化键值从所述配置库中调用对应的第二语言文本和第二目标系统图片;根据调用的第二语言文本和第二目标系统图片对所述源文件中的第一目标系统图片和第一语言系统文本进行替换,根据替换后的源文件生成国际化目标系统。
12.本发明第二方面提供了一种系统国际化的配置装置,包括:获取模块,用于获取目标系统的源文件,并对所述源文件中的源代码进行扫描,确定所述目标系统中的素材信息,其中,所述素材信息包括第一目标系统图片和第一语言系统文本;识别模块,用于根据预设的光学字符识别技术提取所述第一目标系统图片中的第一语言文本信息,并生成所述素材信息对应的国际化键值;翻译模块,用于调用预设的翻译接口,通过所述翻译接口对所述第一语言文本信息和所述第一语言系统文本进行翻译,得到多种语言的第二语言文本;
13.图片生成模块,用于根据所述第一语言文本信息对应的第二语言文本生成所述第一目标系统图片对应的第二目标系统图片;存储模块,用于将所述第二语言文本、所述第二目标系统图片和所述国际化键值存储至预设的配置库中;监听模块,用于实时监听所述目标系统是否发起国际化请求,其中,所述国际化请求包括国际化键值;国际化模块,用于当监听到所述目标系统发起国际化请求时,根据所述国际化请求中的国际化键值从所述配置库中调用对应的第二语言文本和第二目标系统图片,并根据调用的第二语言文本和第二目标系统图片对所述目标系统进行国际化处理。
14.可选的,在本发明第二方面的第一种实现方式中,所述获取模块具体包括:后缀获取单元,用于获取目标系统的源文件的文件后缀,根据所述文件后缀确定所述源文件对应的编程语言;语法分析单元,用于根据所述编程语言,确定对应的语法分析器,并通过所述语法分析器将所述源代码转换成对应的抽象语法树;编码识别单元,用于识别所述抽象语法树中各节点的字符的unicode编码;素材确定单元,用于根据预设的unicode编码区间、各节点的字符的unicode编码和所述编程语言的代码格式,从源文件中确定所述目标系统中的素材信息。
15.可选的,在本发明第二方面的第二种实现方式中,所述素材确定单元具体用于:确定unicode编码在所述unicode编码区间中的字符,将所述字符作为第一语言系统文本;根据所述编程语言的代码格式,判断所述源代码中是否包含图片标签;若是,则解析所述图片标签中的图片链接地址,并根据所述图片链接地址获取所述第一目标系统图片。
16.可选的,在本发明第二方面的第三种实现方式中,所述翻译模块具体用于:调用预设的翻译接口,其中,所述翻译接口关联至翻译软件;将所述第一语言文本信息和所述第一语言系统文本通过所述翻译接口发送至所述翻译软件;接收所述翻译软件通过所述翻译接口返回的翻译内容,并将所述翻译内容作为第二语言文本。
17.可选的,在本发明第二方面的第四种实现方式中,所述图片生成模块具体用于:对所述第一目标系统图片进行图片预处理和文字区域检测,得到所述第一语言文本信息在所述第一目标系统图像中的文字区域;将所述文字区域使用背景色覆盖,并将所述文字区域设置为可编辑区域;根据所述可编辑区域对所述第一语言文本信息对应的第二语言文本进行排版处理,得到文字排版结果;将所述第一语言文本信息对应的第二语言文本根据所述文字排版结果填充至所述可编辑区域中,得到第二目标系统图片。
18.可选的,在本发明第二方面的第五种实现方式中,所述图片生成模块具体还用于:对所述第一目标系统图片进行图片预处理并对将图片预处理后的第一目标系统图片中的文字进行内容对齐,其中,所述图片预处理包括图片去噪处理和对比度调整;采用预设的区域检测器对图片预处理后的第一目标系统图片进行文字区域检测,得到所述第一目标系统图像中的文字区域。
19.可选的,在本发明第二方面的第六种实现方式中,所述国际化模块具体用于:根据所述国际化请求中的请求目标系统语言和所述国际化键值从所述配置库中调用对应的第二语言文本和第二目标系统图片;根据调用的第二语言文本和第二目标系统图片对所述源文件中的第一目标系统图片和第一语言系统文本进行替换,根据替换后的源文件生成国际化目标系统。
20.本发明第三方面提供了一种系统国际化的配置设备,包括:存储器和至少一个处
理器,所述存储器中存储有指令,所述存储器和所述至少一个处理器通过线路互连;所述至少一个处理器调用所述存储器中的所述指令,以使得所述系统国际化的配置设备执行上述的系统国际化的配置方法的步骤。
21.本发明的第四方面提供了一种计算机可读存储介质,所述计算机可读存储介质中存储有指令,当其在计算机上运行时,使得计算机执行上述的系统国际化的配置方法的步骤。
22.本发明的技术方案中,通过获取目标系统的源文件,并对所述源文件中的源代码进行扫描,确定所述目标系统中的素材信息,其中,所述素材信息包括第一目标系统图片和第一语言系统文本;根据预设的光学字符识别技术对所述第一目标系统图片进行字符识别,得到所述第一目标系统图片的第一语言文本信息,并生成所述素材信息对应的国际化键值;调用预设的翻译接口,通过所述翻译接口对所述第一语言文本信息和所述第一语言系统文本进行国际化翻译,得到对应的至少一种国际化语言的第二语言文本;根据所述第一语言文本信息对应的第二语言文本生成所述第一目标系统图片对应的第二目标系统图片;将所述第二语言文本、所述第二目标系统图片和所述国际化键值存储至预设的配置库中;实时监听所述目标系统是否发起国际化请求,其中,所述国际化请求包括国际化键值;当监听到所述目标系统发起国际化请求时,根据所述国际化请求中的国际化键值从所述配置库中调用对应的第二语言文本和第二目标系统图片,并根据调用的第二语言文本和第二目标系统图片对所述目标系统进行国际化处理。本方法使用代码扫描和替换,使得目标系统国际化过程中的开发工作量减少,并且使用监听和缓存,使得国际化可以随时调整或修改,目标系统能够快速完成国际化。
附图说明
23.图1为本发明实施例中系统国际化的配置方法的第一个实施例示意图;
24.图2为本发明实施例中系统国际化的配置方法的第二个实施例示意图;
25.图3为本发明实施例中系统国际化的配置方法的第三个实施例示意图;
26.图4为本发明实施例中系统国际化的配置方法的第四个实施例示意图;
27.图5为本发明实施例中系统国际化的配置装置的一个实施例示意图;
28.图6为本发明实施例中系统国际化的配置装置的另一个实施例示意图;
29.图7为本发明实施例中系统国际化的配置设备的一个实施例示意图。
具体实施方式
30.本发明的技术方案中,通过获取目标系统的源文件,并对所述源文件中的源代码进行扫描,确定所述目标系统中的素材信息,其中,所述素材信息包括第一目标系统图片和第一语言系统文本;根据预设的光学字符识别技术对所述第一目标系统图片进行字符识别,得到所述第一目标系统图片的第一语言文本信息,并生成所述素材信息对应的国际化键值;调用预设的翻译接口,通过所述翻译接口对所述第一语言文本信息和所述第一语言系统文本进行国际化翻译,得到对应的至少一种国际化语言的第二语言文本;根据所述第一语言文本信息对应的第二语言文本生成所述第一目标系统图片对应的第二目标系统图片;将所述第二语言文本、所述第二目标系统图片和所述国际化键值存储至预设的配置库
中;实时监听所述目标系统是否发起国际化请求,其中,所述国际化请求包括国际化键值;当监听到所述目标系统发起国际化请求时,根据所述国际化请求中的国际化键值从所述配置库中调用对应的第二语言文本和第二目标系统图片,并根据调用的第二语言文本和第二目标系统图片对所述目标系统进行国际化处理。本方法使用代码扫描和替换,使得目标系统国际化过程中的开发工作量减少,并且使用监听和缓存,使得国际化可以随时调整或修改,目标系统能够快速完成国际化。
31.本发明的说明书和权利要求书及上述附图中的术语“第一”、“第二”、“第三”、“第四”等(如果存在)是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的实施例能够以除了在这里图示或描述的内容以外的顺序实施。此外,术语“包括”或“具有”及其任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、目标系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
32.为便于理解,下面对本发明实施例的具体流程进行描述,请参阅图1,本发明实施例中系统国际化的配置方法的第一个实施例包括:
33.101、获取目标系统的源文件,并对源文件中的源代码进行扫描,确定目标系统中的素材信息,其中,素材信息包括第一目标系统图片和第一语言系统文本;
34.可以理解的是,本发明的执行主体可以为系统国际化的配置装置,还可以是终端或者服务器,具体此处不做限定。本发明实施例以服务器为执行主体为例进行说明。服务器可以是独立的服务器,也可以是提供云服务、云数据库、云计算、云函数、云存储、网络服务、云通信、中间件服务、域名服务、安全服务、内容分发网络(content delivery network,cdn)、以及大数据和人工智能平台等基础云计算服务的云服务器。
35.在本实施例中,目标系统可以是基于多种编程语言代码构建而成,源代码的编程语言可以是java代码,javascript代码,html代码,以源文件的文件后缀名为依据,比如java程序文件名需要以“.java”为后缀,python程序文件名需要以“.py”为后缀,由于编程代码有不同的代码格式,通过确定编程语言能够确定不同的代码扫描方式,通过扫描代码确定代码中不同字符的unicode编码,并根据汉字的unicode编码范围,确定代码中的汉字部分,将汉字部分作为第一语言系统文本。
36.在本实施例中,源代码中包括有图片标签,通过不同编程语言中图片标签的表现形式,对源代码进行扫描,得到图片标签后,对图片标签进行解析,得到图片链接地址,通过图片链接地址即可获取第一目标系统图片。
37.102、根据预设的光学字符识别技术提取第一目标系统图片中的第一语言文本信息,并生成素材信息对应的国际化键值;
38.在本实施例中,对第一目标系统图片进行字符识别主要分为两个步骤,分别是确定文字区域,对文字区域中的文字进行字符识别,其中,确定第一目标系统图片中文字区域主要是通过对第一目标系统图片进行旋转,确保能得到角度正确的图像,对第一目标系统图片进行腐蚀膨胀处理提取出第一目标系统图片上的文字位置,通过对第一目标系统图片进行腐蚀膨胀处理,将药盒的字融合成一块整体区域,通过提取区域轮廓,对轮廓进行多边形的拟合操作,用矩形将文字区域框出来。
39.对文字区域中的文字进行识别,主要是通过将文字颜色识别为二值化,提供预处理,若文字颜色为黑色,则直接进行二值化操作,若文字颜色为白色,则反转图片再进行二值化操作,二值化算法选用大津法,区分文字和文字背景,再采用投影法进行文本切分得到单个文字,最后使用光学字符识别ocr技术识别字符图片,得到第一目标系统图片的第一语言文本信息。
40.在实际应用中,一般使用properties、xml文件来存储国际化数据,其中properties文件是一种用于存储key-value(键-值)对的属性存储文件,其中格式为:每个key-value对独立占一行,key与value之间使用等号(=)分隔;文件一般以.properties作为后缀,一般一个properties的文件对应于一种语言。由于properties文件是使用key-value对的方式存储数据,所以一般key用于软件程序中使用,而value则用于对应的显示,程序会自动生成国际化键值对,例如第一语言文本信息或者第一语言系统文本中有目标系统,会自动生成该文本的国际化键,比如为:file-upload-parame-0,得到国际化键值对file-upload-parame-0=目标系统。
41.103、调用预设的翻译接口,通过翻译接口对第一语言文本信息和第一语言系统文本进行翻译,得到多种语言的第二语言文本;
42.在本实施例中,翻译接口可以调用翻译软件的应用程序编程接口(application programming interface,api),通过api关联翻译和目标系统,第一语言文本信息和目标系统,对第一语言文本信息和第一语言系统文本进行国际化翻译。
43.在本实施例中,将第一语言系统文本和第一语言文本信息通过翻译接口送至翻译软件可以包括:将第一语言系统文本和第一语言文本信息进行预处理后送至翻译软件,预处理包括以下至少一种:对第一语言系统文本和第一语言文本信息分类、对第一语言系统文本和第一语言文本信息进行分词、排序。翻译软件可以对来自待翻译软件的第一语言系统文本和第一语言文本信息进行翻译,以得到目标语言的第一语言系统文本和第一语言文本信息。在具体实施中,每次对目标系统进行翻译时,可以根据需要将目标系统翻译成为不同目标语言的软件,目标语言的种类可以由用户设定,如果翻译接口翻译的结果不满足需求,可以通过国际化配置功能需改配置。
44.104、根据第一语言文本信息对应的第二语言文本生成第一目标系统图片对应的第二目标系统图片;
45.在本实施例中,可以将第一语言文本信息对应的第二语言文本在第一目标系统图片中进行替换,得到第二目标系统图片,也可以是用户自行上传第二目标系统图片,对于没有识别出文本的第一目标系统图片则不需要进行替换。
46.105、将第二语言文本、第二目标系统图片和国际化键值存储至预设的配置库中;
47.在本实施例中,properties文件是一种用于存储key-value(键-值)对的属性存储文件,其中格式为:每个key-value对独立占一行,key与value之间使用等号(=)分隔;一般键key用于软件程序中使用,而值value则用于对应的显示,文件一般以.properties作为后缀,将国际化键通过等号与第二语言文本、第二目标系统图片建立映射关系后,存储在配置库中的同一位置,后续在用户发起国际化请求时,直接通过国际化请求中的国际化键值获取对应的第二语言文本和第二目标系统图片进行目标系统国际化。
48.106、实时监听目标系统是否发起国际化请求,其中,国际化请求包括国际化键值;
49.在本实施例中,设置国际化网关,国际化网关通过监听器对配置库进行监听,当配置库中的国际化配置信息更新时,实时或定时加载国际化配置信息进入本地配置缓存,将国际化配置信息加入本地配置缓存可以在用户发出对目标系统的国际化请求时,快速从本地缓存中加载国际化配置信息,提高加载速度。
50.在本实施例中,对配置库进行监听,可以通过设置定时任务的方式,根据需要监听的任务内容和时间间隔发送至基于quartz框架的任务调度器通过任务调度器解析时间间隔表达式,得到任务起始时间和时间间隔数据当到达任务起始时间时,通过任务调度器分配对应的计算机资源根据时间间隔数据判断配置库中的国际化配置文件是否存在变化,若有,则将配置库中的国际化配置文件更新至本地缓存中。
51.107、当监听到目标系统发起国际化请求时,根据国际化请求中的国际化键值从配置库中调用对应的第二语言文本和第二目标系统图片,并根据调用的第二语言文本和第二目标系统图片对目标系统进行国际化处理。
52.在本实施例中,可用通过本地配置缓存中获取第二语言文本和第二目标系统图片,也可以从配置库中获取第二语言文本和第二目标系统图片,例如根据所述国际化请求中的请求目标系统语言和所述国际化键值从所述配置库中调用对应的第二语言文本和第二目标系统图片;根据调用的第二语言文本和第二目标系统图片对所述源文件中的第一目标系统图片和第一语言系统文本进行替换,根据替换后的源文件生成国际化目标系统。
53.在本实施例中,通过获取目标系统的源文件,并对所述源文件中的源代码进行扫描,确定所述目标系统中的素材信息,其中,所述素材信息包括第一目标系统图片和第一语言系统文本;根据预设的光学字符识别技术对所述第一目标系统图片进行字符识别,得到所述第一目标系统图片的第一语言文本信息,并生成所述素材信息对应的国际化键值;调用预设的翻译接口,通过所述翻译接口对所述第一语言文本信息和所述第一语言系统文本进行国际化翻译,得到对应的至少一种国际化语言的第二语言文本;根据所述第一语言文本信息对应的第二语言文本生成所述第一目标系统图片对应的第二目标系统图片;将所述第二语言文本、所述第二目标系统图片和所述国际化键值存储至预设的配置库中;实时监听所述目标系统是否发起国际化请求,其中,所述国际化请求包括国际化键值;当监听到所述目标系统发起国际化请求时,根据所述国际化请求中的国际化键值从所述配置库中调用对应的第二语言文本和第二目标系统图片,并根据调用的第二语言文本和第二目标系统图片对所述目标系统进行国际化处理。本方法使用代码扫描和替换,使得目标系统国际化过程中的开发工作量减少,并且使用监听和缓存,使得国际化可以随时调整或修改,目标系统能够快速完成国际化。
54.请参阅图2,本发明实施例中系统国际化的配置方法的第二个实施例包括:
55.201、获取目标系统的源文件的文件后缀,根据文件后缀确定源文件对应的编程语言;
56.在本实施例中,源文件对应的编程语言可以是java代码,javascript代码,html代码,不同编程语言生成的源文件的文件后缀是不同的,比如java程序文件名需要以“.java”为后缀,python程序文件名需要以“.py”为后缀,反过来,通过确定源文件的后缀即可确定源代码对应的编程语言。
57.202、根据编程语言,确定对应的语法分析器,并通过语法分析器将源代码转换成
对应的抽象语法树;
58.203、识别抽象语法树中各节点的字符的unicode编码;
59.在实际应用中,抽象语法树,是源代码语法结构的一种抽象表示。它以树状的形式表现编程语言的语法结构,树上的每个节点都表示源代码中的一种结构。在本实施例中,通过抽象语法树中的节点。分析源代码中结构的字符的unicode编码。
60.204、确定unicode编码在unicode编码区间中的字符,将字符作为第一语言系统文本;
61.205、根据编程语言的代码格式,判断源代码中是否包含图片标签;
62.206、若是,则解析图片标签中的图片链接地址,并根据图片链接地址获取第一目标系统图片;
63.在本实施例中,通过扫描代码确定代码中不同字符的unicode编码,并根据汉字的unicode编码范围,确定代码中的汉字部分,将汉字部分作为第一语言系统文本,例如在代码中出现“国”“际”“化”“系”“统”,分别对应的unicode编码为56fd、9645、5316、7cfb、7edf,而汉字的unicode编码范围为4e00-9fbf,56fd、9645、5316、7cfb、7edf的取值均在4e00-9fbf内,则提取这些字符,并根据这些字符在代码中的位置确定是否为第一语言系统文本,例如,若这些字符是在注释区域,则不作为第一语言系统文本,并通过不同编程语言的代码格式,获取第一目标系统图片。
64.在本实施例中,图片标签为支持html语法的图片标签,例如《img》标签,用户在编写代码时,图片链接地址为图片的url地址,可在源代码中的空白行中加入类似《imgsrc=“http://url’/》的图片标签,以在源代码代码中插入图片,当用编译后的代码编辑工具加载代码时,将能与url链接对应的图片作为第一目标系统图片。
65.207、根据预设的光学字符识别技术提取第一目标系统图片中的第一语言文本信息,并生成素材信息对应的国际化键值;
66.208、调用预设的翻译接口,通过翻译接口对第一语言文本信息和第一语言系统文本进行翻译,得到多种语言的第二语言文本;
67.209、根据第一语言文本信息对应的第二语言文本生成第一目标系统图片对应的第二目标系统图片;
68.210、将第二语言文本、第二目标系统图片和国际化键值存储至预设的配置库中;
69.211、实时监听目标系统是否发起国际化请求,其中,国际化请求包括国际化键值;
70.212、当监听到目标系统发起国际化请求时,根据国际化请求中的国际化键值从配置库中调用对应的第二语言文本和第二目标系统图片,并根据调用的第二语言文本和第二目标系统图片对目标系统进行国际化处理。
71.本实施例在上一实施例的基础上,详细描述了获取目标系统的源文件,并对源文件中的源代码进行扫描,确定目标系统中的素材信息的过程,通过获取目标系统的源文件的文件后缀,根据文件后缀确定源文件对应的编程语言;根据编程语言,确定对应的语法分析器,并通过语法分析器将源代码转换成对应的抽象语法树;识别抽象语法树中各节点的字符的unicode编码;根据预设的unicode编码区间、各节点的字符的unicode编码和编程语言的代码格式,从源文件中确定目标系统中的素材信息。本实施例对源代码进行语法树解析的形式,能够快速识别各节点的字符的unicode编码,提高确定所述目标系统中的素材信
息的效率。
72.请参阅图3,本发明实施例中系统国际化的配置方法的第三个实施例包括:
73.301、获取目标系统的源文件,并对源文件中的源代码进行扫描,确定目标系统中的素材信息,其中,素材信息包括第一目标系统图片和第一语言系统文本;
74.302、根据预设的光学字符识别技术提取第一目标系统图片中的第一语言文本信息,并生成素材信息对应的国际化键值;
75.303、调用预设的翻译接口,其中,翻译接口关联至翻译软件;
76.在本实施例中,翻译接口可以调用翻译软件的应用程序编程接口(application programming interface,api),通过api关联翻译和目标系统,第一语言文本信息和目标系统,对第一语言文本信息和第一语言系统文本进行国际化翻译。
77.304、将第一语言文本信息和第一语言系统文本通过翻译接口发送至翻译软件;
78.305、接收翻译软件通过翻译接口返回的翻译内容,并将翻译内容作为第二语言文本;
79.在本实施例中,翻译软件为本地软件,即翻译软件和待翻译软件可以运行于同一终端中。如此,可以使得将待翻译显示内容通过翻译接口发送至翻译软件,和接收来自翻译软件的翻译显示内容的过程更加顺畅,提升对待翻译软件进行翻译的实时性。
80.306、根据第一语言文本信息对应的第二语言文本生成第一目标系统图片对应的第二目标系统图片;
81.307、将第二语言文本、第二目标系统图片和国际化键值存储至预设的配置库中;
82.308、实时监听目标系统是否发起国际化请求,其中,国际化请求包括国际化键值;
83.309、当监听到目标系统发起国际化请求时,根据国际化请求中的请求目标系统语言和国际化键值从配置库中调用对应的第二语言文本和第二目标系统图片;
84.310、根据调用的第二语言文本和第二目标系统图片对源文件中的第一目标系统图片和第一语言系统文本进行替换,根据替换后的源文件生成国际化目标系统。
85.在本实施例中,翻译接口连接翻译软件对第一语言文本信息和第一语言系统文本进行多种语言的翻译,用户在目标系统界面上可以选择翻译软件有进行翻译的语言版本,选择后,目标系统发出国际化请求,该国际化请求中包含了需要进行国际化的语言。
86.在本实施例中,将第二语言文本和第二目标系统图片对源文件中的第一目标系统图片和第一语言系统文本进行替换,最后将服务接入国际化网关,完成国际化部署。
87.本实施例在前实施例的基础上,详细描述了调用预设的翻译接口,通过所述翻译接口对所述第一语言文本信息和所述第一语言系统文本进行国际化翻译,得到对应的至少一种国际化语言的第二语言文本的过程,通过调用预设的翻译接口,其中,所述翻译接口关联至翻译软件;将所述第一语言文本信息和所述第一语言系统文本通过所述翻译接口发送至所述翻译软件;接收所述翻译软件通过所述翻译接口返回的翻译内容,并将所述翻译内容作为第二语言文本。本方法通过预设的翻译接口关联至翻译软件,进行文本的快速翻译,提高目标系统国际化效率。
88.请参阅图4,本发明实施例中系统国际化的配置方法的第四个实施例包括:
89.401、获取目标系统的源文件,并对所述源文件中的源代码进行扫描,确定所述目标系统中的素材信息,其中,素材信息包括第一目标系统图片和第一语言系统文本;
90.402、根据预设的光学字符识别技术提取第一目标系统图片中的第一语言文本信息,并生成素材信息对应的国际化键值;
91.403、调用预设的翻译接口,通过翻译接口对第一语言文本信息和第一语言系统文本进行翻译,得到多种语言的第二语言文本;
92.404、对第一目标系统图片进行图片预处理并对将图片预处理后的第一目标系统图片中的文字进行内容对齐,其中,图片预处理包括图片去噪处理和对比度调整;
93.在本实施例中,实现对图片进行预处理,包括去噪处理和对比度调整,需要对图片进行预处理,以去除图片中的噪声点,矫正图片上下边缘处于水平位置及矫正图片中文本行保持水平,并通过对比度调整使得图片中的文字和背景能明显区分出来。并对第一目标系统图片进行旋转,确保能得到角度正确的图像。
94.在本实施例中,可以通过对第一目标系统图片进行腐蚀膨胀处理提取出第一目标系统图片上的文字位置,通过对第一目标系统图片进行腐蚀膨胀处理,将药盒的字融合成一块整体区域,通过提取区域轮廓,对轮廓进行多边形的拟合操作,用矩形将文字区域框出来。
95.在本实施例中,还可以通过机器学习的方式训练检测器,通过文字区域样本和非文字区域样本生成检测器。用来检测图片中文字的检测器是使用soft-cascade机器学习的方法训练得来的,将预处理后的图片按不同比例缩小,得到图片的金字塔形数据,使用滑动窗口技术分别扫过不同大小的图片,通过固定窗口大小的检测器确定扫过的每个区域是否为文字区域,将不同比例图片得到的文字区域合并,标定出图片中的文字区域。
96.405、采用预设的区域检测器对图片预处理后的第一目标系统图片进行文字区域检测,得到第一目标系统图像中的文字区域;
97.在本实施例中,通过文字区域样本和非文字区域样本生成检测器。用来检测图片中文字的检测器是使用soft-cascade机器学习的方法训练得来的,这种方法需要预先准备两组矩形图片的样本:正例组(文字区域样本)的矩形图片为文字,负例组(非文字区域样本)的矩形图片为非文字;这种方法需要预先准备一些扫描图片样本,对样本图片中的文字区域进行人工标记,再利用固定大小的滑动窗口依次扫过整张图片,将窗口2/3区域落在人工标记的文字区域的矩形图片标记为正例组(文字区域样本),否则标记为负例组(非文字区域样本)。使用该训练集进行的训练,最终生成的检测器能判断输入的矩形区域是否属于文字区域。
98.406、将文字区域使用背景色覆盖,并将文字区域设置为可编辑区域;
99.407、根据可编辑区域对第一语言文本信息对应的第二语言文本进行排版处理,得到文字排版结果;
100.在本实施例中,使用ocr字符识别技术调用第三方(tesseract或finereader)的api接口,识别文字区域内的文字内容并保存,同时将文字区域用背景色覆盖,设置为可编辑区域。
101.408、将第一语言文本信息对应的第二语言文本根据文字排版结果填充至可编辑区域中,得到第二目标系统图片;
102.在本实施例中,根据文字区域对翻译的结果进行排版调整,使翻译结果与原文字区域排版一致;文本翻译结束后,统计翻译后文本的字数;根据文本区域大小,确定新的文
字大小标准:计算翻译后文本中单个文字的字宽、字高及字间距;按照新的文字大小标准将翻译后文本填充至文本区域。
103.409、将第二语言文本、第二目标系统图片和国际化键值存储至预设的配置库中;
104.410、实时监听目标系统是否发起国际化请求,其中,国际化请求包括国际化键值;
105.411、当监听到目标系统发起国际化请求时,根据国际化请求中的国际化键值从配置库中调用对应的第二语言文本和第二目标系统图片,并根据调用的第二语言文本和第二目标系统图片对目标系统进行国际化处理。
106.本实施例在前实施例的基础上,详细描述了根据所述第一语言文本信息对应的第二语言文本生成所述第一目标系统图片对应的第二目标系统图片的过程,通过对所述第一目标系统图片进行图片预处理和文字区域检测,得到所述第一语言文本信息在所述第一目标系统图像中的文字区域;将所述文字区域使用背景色覆盖,并将所述文字区域设置为可编辑区域;根据所述可编辑区域对所述第一语言文本信息对应的第二语言文本进行排版处理,得到文字排版结果;将所述第一语言文本信息对应的第二语言文本根据所述文字排版结果填充至所述可编辑区域中,得到第二目标系统图片。本方法通过对第一目标系统图片进行文字检测后,利用背景色覆盖的方式,抹去第一目标系统图片的文本,并结合文字排版,能够得到符合标准的第二目标系统图片。
107.上面对本发明实施例中系统国际化的配置方法进行了描述,下面对本发明实施例中系统国际化的配置装置进行描述,请参阅图5,本发明实施例中系统国际化的配置装置一个实施例包括:
108.获取模块501,用于获取目标系统的源文件,并对所述源文件中的源代码进行扫描,确定所述目标系统中的素材信息,其中,所述素材信息包括第一目标系统图片和第一语言系统文本;
109.识别模块502,用于根据预设的光学字符识别技术提取所述第一目标系统图片中的第一语言文本信息,并生成所述素材信息对应的国际化键值;
110.翻译模块503,用于调用预设的翻译接口,通过所述翻译接口对所述第一语言文本信息和所述第一语言系统文本进行翻译,得到多种语言的第二语言文本;
111.图片生成模块504,用于根据所述第一语言文本信息对应的第二语言文本生成所述第一目标系统图片对应的第二目标系统图片;
112.存储模块505,用于将所述第二语言文本、所述第二目标系统图片和所述国际化键值存储至预设的配置库中;
113.监听模块506,用于实时监听所述目标系统是否发起国际化请求,其中,所述国际化请求包括国际化键值;
114.国际化模块507,用于当监听到所述目标系统发起国际化请求时,根据所述国际化请求中的国际化键值从所述配置库中调用对应的第二语言文本和第二目标系统图片,并根据调用的第二语言文本和第二目标系统图片对所述目标系统进行国际化处理。
115.本发明实施例中,所述系统国际化的配置装置运行上述系统国际化的配置方法,所述系统国际化的配置装置通过获取目标系统的源文件,并对所述源文件中的源代码进行扫描,确定所述目标系统中的素材信息,其中,所述素材信息包括第一目标系统图片和第一语言系统文本;根据预设的光学字符识别技术对所述第一目标系统图片进行字符识别,得
到所述第一目标系统图片的第一语言文本信息,并生成所述素材信息对应的国际化键值;调用预设的翻译接口,通过所述翻译接口对所述第一语言文本信息和所述第一语言系统文本进行国际化翻译,得到对应的至少一种国际化语言的第二语言文本;根据所述第一语言文本信息对应的第二语言文本生成所述第一目标系统图片对应的第二目标系统图片;将所述第二语言文本、所述第二目标系统图片和所述国际化键值存储至预设的配置库中;实时监听所述目标系统是否发起国际化请求,其中,所述国际化请求包括国际化键值;当监听到所述目标系统发起国际化请求时,根据所述国际化请求中的国际化键值从所述配置库中调用对应的第二语言文本和第二目标系统图片,并根据调用的第二语言文本和第二目标系统图片对所述目标系统进行国际化处理。本方法使用代码扫描和替换,使得目标系统国际化过程中的开发工作量减少,并且使用监听和缓存,使得国际化可以随时调整或修改,目标系统能够快速完成国际化。
116.请参阅图6,本发明实施例中系统国际化的配置装置的第二个实施例包括:
117.获取模块501,用于获取目标系统的源文件,并对所述源文件中的源代码进行扫描,确定所述目标系统中的素材信息,其中,所述素材信息包括第一目标系统图片和第一语言系统文本;
118.识别模块502,用于根据预设的光学字符识别技术提取所述第一目标系统图片中的第一语言文本信息,并生成所述素材信息对应的国际化键值;
119.翻译模块503,用于调用预设的翻译接口,通过所述翻译接口对所述第一语言文本信息和所述第一语言系统文本进行翻译,得到多种语言的第二语言文本;
120.图片生成模块504,用于根据所述第一语言文本信息对应的第二语言文本生成所述第一目标系统图片对应的第二目标系统图片;
121.存储模块505,用于将所述第二语言文本、所述第二目标系统图片和所述国际化键值存储至预设的配置库中;
122.监听模块506,用于实时监听所述目标系统是否发起国际化请求,其中,所述国际化请求包括国际化键值;
123.国际化模块507,用于当监听到所述目标系统发起国际化请求时,根据所述国际化请求中的国际化键值从所述配置库中调用对应的第二语言文本和第二目标系统图片,并根据调用的第二语言文本和第二目标系统图片对所述目标系统进行国际化处理。
124.在本实施例中,所述获取模块501具体包括:
125.后缀获取单元5011,用于获取目标系统的源文件的文件后缀,根据所述文件后缀确定所述源文件对应的编程语言;
126.语法分析单元5012,用于根据所述编程语言,确定对应的语法分析器,并通过所述语法分析器将所述源代码转换成对应的抽象语法树;
127.编码识别单元5013,用于识别所述抽象语法树中各节点的字符的unicode编码;
128.素材确定单元5014,用于根据预设的unicode编码区间、各节点的字符的unicode编码和所述编程语言的代码格式,从源文件中确定所述目标系统中的素材信息。
129.在本实施例中,所述素材确定单元5014具体用于:
130.确定unicode编码在所述unicode编码区间中的字符,将所述字符作为第一语言系统文本;
131.根据所述编程语言的代码格式,判断所述源代码中是否包含图片标签;
132.若是,则解析所述图片标签中的图片链接地址,并根据所述图片链接地址获取所述第一目标系统图片。
133.在本实施例中,所述翻译模块503具体用于:
134.调用预设的翻译接口,其中,所述翻译接口关联至翻译软件;
135.将所述第一语言文本信息和所述第一语言系统文本通过所述翻译接口发送至所述翻译软件;
136.接收所述翻译软件通过所述翻译接口返回的翻译内容,并将所述翻译内容作为第二语言文本。
137.在本实施例中,所述图片生成模块504具体用于:
138.对所述第一目标系统图片进行图片预处理和文字区域检测,得到所述第一语言文本信息在所述第一目标系统图像中的文字区域;
139.将所述文字区域使用背景色覆盖,并将所述文字区域设置为可编辑区域;
140.根据所述可编辑区域对所述第一语言文本信息对应的第二语言文本进行排版处理,得到文字排版结果;
141.将所述第一语言文本信息对应的第二语言文本根据所述文字排版结果填充至所述可编辑区域中,得到第二目标系统图片。
142.在本实施例中,所述图片生成模块504具体还用于:
143.对所述第一目标系统图片进行图片预处理并对将图片预处理后的第一目标系统图片中的文字进行内容对齐,其中,所述图片预处理包括图片去噪处理和对比度调整;
144.采用预设的区域检测器对图片预处理后的第一目标系统图片进行文字区域检测,得到所述第一目标系统图像中的文字区域。
145.在本实施例中,所述国际化模块507具体用于:
146.根据所述国际化请求中的请求目标系统语言和所述国际化键值从所述配置库中调用对应的第二语言文本和第二目标系统图片;
147.根据调用的第二语言文本和第二目标系统图片对所述源文件中的第一目标系统图片和第一语言系统文本进行替换,根据替换后的源文件生成国际化目标系统。
148.本实施例在上一实施例的基础上,详细描述了各个模块的具体功能以及部分模块的单元构成,通过新增的模块,对第一目标系统图片中的文本进行对应的翻译和排版转换得到对应的第二目标系统图片,使得目标系统国际化更加完善,使用代码扫描和替换,使得目标系统国际化过程中的开发工作量减少,并且使用监听和缓存,使得国际化可以随时调整或修改,目标系统能够快速完成国际化。
149.上面图5和图6从模块化功能实体的角度对本发明实施例中的中系统国际化的配置装置进行详细描述,下面从硬件处理的角度对本发明实施例中系统国际化的配置设备进行详细描述。
150.图7是本发明实施例提供的一种系统国际化的配置设备的结构示意图,该系统国际化的配置设备700可因配置或性能不同而产生比较大的差异,可以包括一个或一个以上处理器(central processing units,cpu)710(例如,一个或一个以上处理器)和存储器720,一个或一个以上存储应用程序733或数据732的存储介质730(例如一个或一个以上海
量存储设备)。其中,存储器720和存储介质730可以是短暂存储或持久存储。存储在存储介质730的程序可以包括一个或一个以上模块(图示没标出),每个模块可以包括对系统国际化的配置设备700中的一系列指令操作。更进一步地,处理器710可以设置为与存储介质730通信,在系统国际化的配置设备700上执行存储介质730中的一系列指令操作,以实现上述系统国际化的配置方法的步骤。
151.系统国际化的配置设备700还可以包括一个或一个以上电源740,一个或一个以上有线或无线网络接口750,一个或一个以上输入输出接口760,和/或,一个或一个以上操作目标系统731,例如windows serve,mac os x,unix,linux,freebsd等等。本领域技术人员可以理解,图7示出的系统国际化的配置设备结构并不构成对本技术提供的系统国际化的配置设备的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。
152.本发明还提供一种计算机可读存储介质,该计算机可读存储介质可以为非易失性计算机可读存储介质,该计算机可读存储介质也可以为易失性计算机可读存储介质,所述计算机可读存储介质中存储有指令,当所述指令在计算机上运行时,使得计算机执行所述系统国际化的配置方法的步骤。
153.所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的目标系统或装置、单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
154.所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:u盘、移动硬盘、只读存储器(read-only memory,rom)、随机存取存储器(random access memory,ram)、磁碟或者光盘等各种可以存储程序代码的介质。
155.以上所述,以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1