CN1567296A - 一种嵌入式系统的多语言显示方法 - Google Patents
一种嵌入式系统的多语言显示方法 Download PDFInfo
- Publication number
- CN1567296A CN1567296A CN 03113405 CN03113405A CN1567296A CN 1567296 A CN1567296 A CN 1567296A CN 03113405 CN03113405 CN 03113405 CN 03113405 A CN03113405 A CN 03113405A CN 1567296 A CN1567296 A CN 1567296A
- Authority
- CN
- China
- Prior art keywords
- character
- character string
- embedded system
- chinese
- multilingual
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Landscapes
- Document Processing Apparatus (AREA)
Abstract
本发明提供一种嵌入式系统的多语言显示方法,通过查询多语言字符的对照表,并且在屏幕上根据相关定义信息打印不同语言的字符,该方法包括以下步骤:建立字符串对照表;将所述字符串存储在存储单元中;定义所述字符串的打印函数;以及调用所述打印函数,显示字符串。采用本发明提供的测试方法对多语言显示方法,可以对嵌入式系统的界面实现多种语言显示,函数调用简单,通用性强,容易实现标准化定义,减少了数据冗余量,提高了程序运行和编制效率,节省了软件开发人力和成本。
Description
技术领域
本发明公开了在嵌入式系统领域的一种新型多语言显示方法,,尤其涉及通讯、电子行业、智能控制等嵌入式系统领域的多语言人机界面显示方法。
背景技术
当前,产品国际化已成大势所趋,特别是随着通讯产品这一高技术含量产品出口量的增加,迫切需要能够低成本、高效地开发出能够支持多种语言的操作界面。对于这种操作界面的开发,一般的思路是开发两套功能相同,版本不同的软件,这样一来,就大大增加了软件的开发和维护的工作量,相当于增加了成本。也有的厂家开发了中英文合一的版本,但是软件内部实现起来比较罗嗦,经常有这样的语句:
if(language==CHINESE)
DisChinese(″实时数据″);
else
DisEnglish(″Real Data″);
上面的方法对于一些简单的多语言界面还可以支持,但对于复杂的界面,则增加了软件设计的工作量,同时也浪费了宝贵的程序空间。而对于嵌入式系统来说程序空间、数据空间是很宝贵的,尽量用低成本的材料设计出高质量的产品是每个工程师永无止境的追求。
本发明正是为了克服上述现有技术的缺陷,而提出一种嵌入式系统的多语言显示方法。
发明内容
本发明所解决的技术问题是实现嵌入式系统的多语言显示操作界面。
为了达到上述目的,本发明提供一种嵌入式系统的多语言显示方法,通过查询多语言字符的对照表,根据相关定义信息打印不同语言字符,该方法包括以下步骤:
建立字符串对照表;
将所述字符串存储在存储单元中;
定义所述字符串的打印函数;以及
调用所述打印函数,显示字符串。
采用本发明提供的测试方法对多语言显示方法,可以对嵌入式系统的界面实现多种语言显示,函数调用简单,通用性强,容易实现标准化定义,减少了数据冗余量,提高了程序运行和编制效率,节省了软件开发人力和成本。
下面将结合实施例参照附图进行详细说明,以便对本发明的目的、特征及优点有更深入的理解。
附图说明
图1为本发明的主流程图;
图2为本发明的打印函数定义流程图;
图3为本发明的字符匹配结构示意图。
具体实施方式
如图1所示,本发明的主流程的具体步骤说明如下:
首先,建立字符串对照表,步骤101;该对照表的结构参见后面的表1所示;将所述字符串存储在存储单元中,步骤102,具体来说,该步骤的任务是把所有要显示的语言界面(如中文和英文界面)上的字符串都存储在存储单元(如ROM)中,在这种ROM存储单元中,可以根据实际情况选择放在程序空间中还是数据空间中,并且分成不同语言的字符串组:如中文菜单字符串组和英文菜单字符串组,在两个组内中文意义同英文意义相同的两个字符串之间的间距是固定相同的;定义所述字符串的打印函数,步骤103,详细流程请参见图2;以及调用所述打印函数,按照需求在界面上显示不同语言的字符串,步骤104。
如图2所示,为本发明的打印函数定义流程图,首先给对照表不同语言字符串组设置不同的地址偏移量,步骤201;通过指针在对照表中获得要显示的字符串的地址,步骤202;根据用户输入的参数,判断当前指针是否需要自动加相应地址偏移量,步骤203;如果需要,进行步骤204,对字符串指针加上相应的地址偏移量,获得所要显示的语言的字符串的地址,即根据选择的语言,将字符串指针加上不同的偏移量:举例来说,如果语言选择中文,则选择中文的偏移量;如果语言选择英文,则选择英文的偏移量;最后,调用不同的函数来显示每个要显示的字符,即根据选择的语言,调用不同的函数来显示界面上一个个的字符,步骤205。举例来说:由于在中文字符串中也会有英文字符串和数字,所以在显示中文字符串时,应该根据中文区位码的特征,将中文和英文ASCII码区分出来,单个显示中文和英文ASCII码。如图3所示,为字符匹配结构示意图。
下面结合实例对技术方案的实施作进一步的详细描述,具体的函数我们采用C语言来说明:
首先,我们假定要显示的界面的语言为中文和英文两种,中文为256个汉字,采用16*16的字模,那么在一个汉字占用32+2=34个字节,256个汉字占用256*34+2=7978个字节。英文为128个,包括一些数字、符号等,采用16*8的字模,那么一个英文的字模占用16个字节,128个英文的字模占用空间128*16=2048个字节,那么总的字模占用的空间为7978+2048=10026个字节。
其次,我们定义一个函数PrinStr()。
Void PrintStr(char*DispStr,unsigned char IfAutoAddOffset) /*DispStr是一个字符串。 IfAutoAddOffset-是否自动加偏移量 AUTO_ADD_OFFSET-自动加偏移量 NO_OFFSET-------------不加偏移量*/ PrintStr函数如下: { unsigned char i; unsigned char qu_code,wei_code; unsigned char*pStr; pStr=DispStr; if(IfAutoAddOffset==AUTO_ADD_OFFSET)//是否自动加偏移量 { //根据语言的类型,选取不同语言类型的字符串。 if(Language==CHINESE) { pStr=DispStr+ChineseOffset; } else if(Language==ENGLISH) { pStr=DispStr+EnglishOffset; } else if(Language==FRENCH) <!-- SIPO <DP n="3"> --> <dp n="d3"/> { pStr=DispStr+FranchOffset; } } //由于不同的语言需要不同的字符,所以不同的语言要调用不同的函数来 显示字符串。 if(Language==CHINESE) { while(*pStr) { i++; qu_code=*pStr++; wei_code=*pStr++; if((qu_code>0XA0)&&(wei_code>0XA0))//若是汉字,显示汉字 { PrintHZ(qu_code,wei_code);//打印单个汉字 } else { PrintEnglish(qu_code);//若是英文字母,显示ASCII码 str--; } } PrintHz(pStr); } else if(Language==ENGLISH)//是英文显示英文 { while(*pStr) { PrintEnglish(*pStr);//打印单个英文 } } else if(Language==RUSSIAN)∥是俄文调用打印俄文的函数 { while(*pStr) <!-- SIPO <DP n="4"> --> <dp n="d4"/> { PrintRussian(*pStr);//打印单个俄文 } } }
最后,在需要显示字符串的地方,调用显示字符串函数。
假设中文字符串组和英文字符串组相差10240即相差10K,那么上面提到的PrintStr函数中的ChineseOffset=0;EnglishOffset=10240;
在中文语言的选择下,Language=CHINESE,例如打印“实时数据”,PrinStr(StrRealData,AUTO_ADD_OFFSET);//StrRealData是指向“实时数
//据”的指针
就会打印“实时数据”。
在英文语言的选择下,Language=ENGLISH;例如打印“RealData”,PrintStr(StrRealData,AUTO_ADD_OFFSET);//StrRealData+EnglishiOffset
//是指向“RealData”的指针
就会打印“RealData”。
以上所述,仅是本发明的实施方式举例说明,不应被视为是对本发明范围的限制,而且本发明所主张的权利要求范围也并不局限于此,凡熟悉此技艺的人士,依据本发明所揭露的技术内容,可轻易思及的等效变化,均应落入本发明的保护范围。
Claims (8)
1.一种嵌入式系统的多语言显示方法,通过查询多语言字符的对照表,根据相关信息打印不同语言字符,该方法包括以下步骤:
建立字符对照表;
将所述字符串存储在存储单元中;
定义打印函数;及
调用所述打印函数,显示字符串。
2.如权利要求1所述的嵌入式系统的多语言显示方法,其中所述定义打印函数的步骤,还包括以下步骤:
给对照表不同语言字符串组设置不同的地址偏移量;
通过指针在对照表中获得要显示的字符串的地址;
根据用户输入的参数,判断当前指针是否需要自动加相应地址偏移量;
如果需要,对字符串指针加上相应的地址偏移量,获得所要显示的语言的字符串的地址;
最后,调用不同的函数来显示每个要显示的字符。
3.如权利要求1所述的嵌入式系统的多语言显示方法,其中所述字符为多种语言的字符或字符串。
4.如权利要求1所述的嵌入式系统的多语言显示方法,其中所述存储单元可为只读存储器ROM。
5.如权利要求4所述的嵌入式系统的多语言显示方法,其中所述存储单元可为只读存储器ROM的程序空间或数据空间。
6.如权利要求1所述的嵌入式系统的多语言显示方法,当显示中文字符或字符串时,根据中文区位码的特征,将中文和英文ASCII码区分出来,单个显示中文和英文ASCII码。
7.如权利要求6所述的嵌入式系统的多语言显示方法,其中中文采用16*16的字模。
8.如权利要求6所述的嵌入式系统的多语言显示方法,其中英文采用16*8的字模。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN 03113405 CN1567296A (zh) | 2003-05-07 | 2003-05-07 | 一种嵌入式系统的多语言显示方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN 03113405 CN1567296A (zh) | 2003-05-07 | 2003-05-07 | 一种嵌入式系统的多语言显示方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN1567296A true CN1567296A (zh) | 2005-01-19 |
Family
ID=34468955
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN 03113405 Pending CN1567296A (zh) | 2003-05-07 | 2003-05-07 | 一种嵌入式系统的多语言显示方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN1567296A (zh) |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN100456233C (zh) * | 2005-10-09 | 2009-01-28 | 光宝科技股份有限公司 | 应用程序的图形用户界面呈现方法及系统 |
CN101876907A (zh) * | 2010-05-18 | 2010-11-03 | 杭州海康威视数字技术股份有限公司 | 人机交互界面的多语言实现方法及装置 |
CN101888472A (zh) * | 2010-07-30 | 2010-11-17 | 福建新大陆通信科技股份有限公司 | 一种机顶盒支持多国文字的方法 |
CN102109958A (zh) * | 2011-03-04 | 2011-06-29 | 深圳市开立科技有限公司 | 实现多语言用户界面的方法和系统 |
CN102681851A (zh) * | 2012-05-11 | 2012-09-19 | 许继集团有限公司 | 嵌入式装置多语言的动态切换方法 |
CN107766228A (zh) * | 2016-08-19 | 2018-03-06 | 阿里巴巴集团控股有限公司 | 一种基于多语种的自动化测试方法和装置 |
-
2003
- 2003-05-07 CN CN 03113405 patent/CN1567296A/zh active Pending
Cited By (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN100456233C (zh) * | 2005-10-09 | 2009-01-28 | 光宝科技股份有限公司 | 应用程序的图形用户界面呈现方法及系统 |
CN101876907A (zh) * | 2010-05-18 | 2010-11-03 | 杭州海康威视数字技术股份有限公司 | 人机交互界面的多语言实现方法及装置 |
CN101876907B (zh) * | 2010-05-18 | 2014-08-13 | 杭州海康威视数字技术股份有限公司 | 人机交互界面的多语言实现方法及装置 |
CN101888472A (zh) * | 2010-07-30 | 2010-11-17 | 福建新大陆通信科技股份有限公司 | 一种机顶盒支持多国文字的方法 |
CN102109958A (zh) * | 2011-03-04 | 2011-06-29 | 深圳市开立科技有限公司 | 实现多语言用户界面的方法和系统 |
CN102109958B (zh) * | 2011-03-04 | 2012-12-19 | 深圳市开立科技有限公司 | 实现多语言用户界面的方法和系统 |
CN102681851A (zh) * | 2012-05-11 | 2012-09-19 | 许继集团有限公司 | 嵌入式装置多语言的动态切换方法 |
CN107766228A (zh) * | 2016-08-19 | 2018-03-06 | 阿里巴巴集团控股有限公司 | 一种基于多语种的自动化测试方法和装置 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP3834289B2 (ja) | 動的言語選択を有する多言語システム | |
EP2291010A1 (en) | Structure processing method and apparatus for layout file | |
US20060080082A1 (en) | System and method for product migration in multiple languages | |
CN102109958B (zh) | 实现多语言用户界面的方法和系统 | |
CN101916192A (zh) | 用户界面的多语言切换方法和装置 | |
CN101118558B (zh) | 资源文件的转换方法及装置 | |
CN1567296A (zh) | 一种嵌入式系统的多语言显示方法 | |
CN110310226B (zh) | 图片的拼接显示方法及系统 | |
CN1371043A (zh) | 数码操作系统 | |
CN1945526A (zh) | 应用程序的图形用户界面呈现方法及系统 | |
CN1858701A (zh) | 在屏帮助的实现方法 | |
CN102467490B (zh) | 一种字体数据的处理方法及装置 | |
CN102129386B (zh) | 一种移动微件及其实现终端移植的方法 | |
CN100390783C (zh) | 进行格变换的方法和系统 | |
CN1466039A (zh) | 可以进行中文和多种文字输入的电子遥控器 | |
CN101325758A (zh) | 可显示多种语言的移动通讯装置及方法 | |
CN2834054Y (zh) | 一种快速查找电视频道的专用菜单 | |
CN100345108C (zh) | 多国语言软件程序开发系统 | |
CN114756140A (zh) | 生僻字录入处理方法、装置、电子设备和存储介质 | |
CN1831761A (zh) | 计算机可执行的人机接口画面编辑系统及其方法 | |
CN117408230A (zh) | 一种基于iText的支持生僻字转换方法及系统 | |
CN113326087B (zh) | 一种lvgl上的中文字库处理方法及装置 | |
CN1145898C (zh) | 可扩充的多国文字的显示方法 | |
CN1369829A (zh) | 可在各种语系操作系统中显示中文的方法 | |
Gupta et al. | Text entry in South and Southeast Asian scripts |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C12 | Rejection of a patent application after its publication | ||
RJ01 | Rejection of invention patent application after publication |
Open date: 20050119 |