一种实现图形用户界面中语言自动翻译的方法

文档序号:6366513阅读:336来源:国知局
专利名称:一种实现图形用户界面中语言自动翻译的方法
技术领域
本发明涉及应用程序的图形用户界面领域,特别涉及一种为程序用户提供用户需要的语言的友好的图形用户界面的方法。
背景技术
图形用户界面或图形用户接口(Graphical User Interface,⑶I)是指采用图形方式显示的计算机操作环境用户接口。与早期计算机使用的命令行界面相比,图形界面对于用户来说更为简便易用。CTI的广泛应用是当今计算机发展的重大成就之一,它极大地方便了非专业用户的使用人们从此不再需要死记硬背大量的命令,取而代之的是可用用通过窗口、菜单、按键等方式来方便地进行操作。图形用户界面可以减少用户的认知负担、保持界面的一致性、满足不同目标用户的创意需求、用户界面友好性、图标识别平衡性、图标功能的一致性、建立界面与用户的互动交流。应用程序推出时,一般采用编程者使用熟练的语言编写,为用户提供的图形界面GUI时,自然是采用编程者熟悉的语言比如英文或者编程者的母语,但当应用程序的用户为母语是其它语言的用户时,一般需要将Gn上的文字翻译成用户母语的文字,这里编程者使用的GUI上的文字被称为源语言,用户需要的语言(一般是用户的母语)为目标语言。目前的做法是,设计一张源语言到目标语言的对应表,目前这样的对应表一般是一个excel表格,可以由用户提供也可以自己根据翻译人员提供的源-目标语言词汇创建,进入图形用户界面的编辑界面,手工将源语言的文字从对应表中找到相应的目标语言的文字,并将对应的源语言文字替换成目标语言的文字,然后完成编辑保存,这样就完成了图形用户界面从程序时使用的源语言翻译成目标用户的母语等目标语言,这种方法直观,易形,但是要耗费许多工夫。

发明内容
为解决目前⑶I中不同语言之间采用人工翻译的不足,本发明提供一种实现图形用户界面中语言自动翻译的方法,直接从图形界面程序的后台将目标语言替换源语言。本发明的技术方案是一种实现图形用户界面中语言自动翻译的方法,将所述的图形用户界面中语言文字作为源语言文字,替换成另外一种不同于源语言文字的目标语言文字,自动翻译过程包括以下步骤
步骤A、生成图形用户界面程序中语言目录中的文件的副本的步骤;
步骤B、获取图形用户界面程序中语言目录中的文件副本中记录的html页面多个id值和相应的语言文字的文件中的id值和相应的源语言文字的步骤; 步骤C、检索源语言到目标语言的对应表,获取源语言文字对应的目标语言文字;
步骤D、将目标语言文字取代图形用户界面程序中语言目录中的文件副本中记录的html页面多个id值的相应的语言文字的步骤;
步骤E、保存图形用户界面程序中语言目录中的文件副本文件,并将目录文件名按规定修改成目标语言的文件名的步骤。进一步的,上述的实现图形用户界面中语言自动翻译的方法中所述的图形用户界面源程序为Javascript编写。所述的记录的html页面多个id值和相应的语言文字的文件为后缀为js的文件。所述的源语言到目标语言的对应表为excel表格。本发明提供一 种实现图形用户界面中语言自动翻译的方法,通过该方法,可以对GUI中的文字进行自动翻译。下面结合具体实施例对本发明作较为详细的描述。


图I为本发明系统流程图。
具体实施例方式实施例1,当前有一款产品的GUI页面只实现了中文、英文两种语言,因为市场需求,要将此产品推广到国外市场,因此要再实现20多种语言,而且考虑,是在原来页面的基础上高效的实现多语言。目前,页面架构多语言的基本实现是,每种语言对应一个目录,目录下是js文件,js文件中记录的是html页面多个id值和相应的语言文字,每一个页面的一种语言对应一个相应语言目录下的js文件,所以落实下来,就是要实现如何将每个目录下的js文件中的语言文字替换成其他语言,且id值不变,就能在原来页面的基础上实现多语言。而开发工具实现这个替换的过程,是用JS语言实现,在IE浏览器上执行。Javascript和Jscript简称JS,是因特网上最流行的网页脚本语目,它是网站ill端开发必要的一种技术。JS主要是做界面的,用于客户端也就是浏览器端上执行的脚本开发,JS短小精悍,同时它又是专门为制作Web网页而量身定做的一种简单的编程语言。语言存放方式如同“id : value”的格式,“id”对应html中元素的“id”属性,可以起到定位在页面相应部分显示文字的作用,“value”就是具体的语言文字。举个例子,假如我们要生成德文的语言,比较适合的方法就是,将en_us英文的语言目录拷贝一份过来,然后对其中每个文件中的“value”文字替换为相应的德文翻译,且“id”名不变。那么这整个替换的过程就是多语言翻译工具要实现的。此外,我们还有一份存放各种翻译语言的excel表,每替换一个“value”就要到这份excel表中查找相应语言的翻译,然后替换。如图I所示,本实施例的包括以下步骤
1、将原有的en_us英文目录拷贝一份,重命名为新的语言;
2、对目录下的js文件进行操作,定位到每个“value”;
3、检索excel表,根据原先做好的标志,找到相应语言的翻译;
4、将excel表中找到的翻译替换相应的“value”;
5、将替换完的js文件重新输出保存。以上的五个步骤就是查找和替换的过程,本实施例使用选择简单易用的js语言,页面的问题选择js语言解决再好不过。首先,js文件中的id value格式是保存在“vardata_language”变量中的,是js本身就能识别的变量,通过data_language [ “id”]就可以直接取到“value” ;此外js本身就有可以操作excel表的对象接口,可以很方便的引用来检索excel表。Js编程工具实现的步骤如下
1、将英文语言目录拷贝一份,且命名为某国语言名字;
2、将某个语言js 文件通过〈script type=//text/javascript" src=,, ></script)的src属性链接到js代码中;
3、对语言js文件中的变量进行操作,其变量的组织形式是如下的JSON数据格式; var data = {
XXX : {
yyy valuel,zzz : value2
}
}
根据js文件中的变量,如data[XXX] [yyy],索引多国语言excel文档,得到某国的语言
翻译value_xxx,并赋值data[xxx] [yyy]= value_xxx,以此类推,实现--语言替换;将替
换完的data变量以JSON数据的格式重新写回到原文件并保存。还可用c/c++语目编程等其它,编程语目编制⑶I。c/c++语言编程,因为c/c++语言对js文件中的变量无法识别,只能以文本文件的形式操作,要定位到每个js文件中的“value”,编程的过程要涉及繁琐的字符串操作,分配内存,释放内存,繁锁的编译调试等;检索excel表,可以选择VC工具,安装相应的插件,或是将excel表输出为纯文本形式,单纯用c/c++语言编程。但不管怎样,都不可避免的要涉及繁琐的字符串操作,对特殊的字符串格式还需要考虑不同的处理方法。选择vb编程,vb本身包含excel表操作的插件,可以直接对excel表进行操作;对于Vb也是存在繁琐的字符串操作;为了实现这个转化工具要专门的学习Vb语言。综合以上的分析,在这里我们选择js语言编程
工具是用js脚本语言实现,相比于C语言和VB,他有以下一些好处首先,其处理js文件相当方便,可以很方便的引用其中变量,相比于C语言,省去了很多C语言中字符串复杂的操作;其次,提供EXCEL文档读写的接口,为方便索引EXCEL文档提供支持;最后,js语言编程灵活,编程逻辑相对要简单。Js编程简单,运行方便,编程无需编译,没有C语言繁琐漫长的编译过程,编辑完代码即可通过浏览器运行,运行发现错误可以很容易根据浏览器的错误提示定位问题。如果工具运行过程中发生错误,可支持从错误处重新运行,调试方便;运行日志详细。工具代码可移植性强。
权利要求
1.一种实现图形用户界面中语言自动翻译的方法,将所述的图形用户界面中语言文字作为源语言文字,替换成另外一种不同于源语言文字的目标语言文字,其特征在于自动翻译过程包括以下步骤 步骤A、生成图形用户界面程序中语言目录中的文件的副本的步骤; 步骤B、获取图形用户界面程序中语言目录中的文件副本中记录的html页面多个id值和相应的语言文字的文件中的id值和相应的源语言文字的步骤; 步骤C、检索源语言到目标语言的对应表,获取源语言文字对应的目标语言文字; 步骤D、将目标语言文字取代图形用户界面程序中语言目录中的文件副本中记录的html页面多个id值的相应的语言文字的步骤; 步骤E、保存图形用户界面程序中语言目录中的文件副本文件,并将目录文件名按规定修改成目标语言的文件名的步骤。
2.根据权利要求I所述的实现图形用户界面中语言自动翻译的方法,其特征在于所述的图形用户界面源程序为Javascript编写。
3.根据权利要求2所述的实现图形用户界面中语言自动翻译的方法,其特征在于所述的记录的html页面多个id值和相应的语言文字的文件为后缀为js的文件。
4.根据权利要求I至3中任一所述的实现图形用户界面中语言自动翻译的方法,其特征在于所述的源语言到目标语言的对应表为excel表格。
全文摘要
本发明提供了一种实现图形用户界面中语言自动翻译的方法,将所述的图形用户界面中语言文字作为源语言文字,替换成另外一种不同于源语言文字的目标语言文字,实现自动翻译。本发明通过该方法,可以对GUI中的文字进行自动翻译。
文档编号G06F17/28GK102637168SQ20121007212
公开日2012年8月15日 申请日期2012年3月19日 优先权日2012年3月19日
发明者苏邓海 申请人:深圳市共进电子股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1