在中文操作系统环境下的俄文字符编辑和显示方法及装置的制作方法

文档序号:6603271阅读:620来源:国知局
专利名称:在中文操作系统环境下的俄文字符编辑和显示方法及装置的制作方法
技术领域
本发明涉及计算机字符处理技术,特别是一种在中文操作系统环境下的俄文字符 编辑和显示方法及装置。
背景技术
随着我国技术力量的增强,现在越来越多的嵌入式产品销往俄罗斯,这就使得这 些产品支持俄文显示成为必需。由于国内开发人员在中文操作系统环境下对源码中俄文字 符进行编辑时,通常采用我国制定的GB2312编码表标准,所以通过对GB2312编码表标准中 对应的俄文字符进行编辑,来实现俄文显示。然而当把编译好的源码载入到目标系统运行 时,俄文字符经常无法显示或显示不正常。现有的解决方法有几种,方法一是在中文操作系统环境下编辑俄文字符,程序运 行时利用GB2312编码表中现有的俄文编码在目标系统中调用GB2312字体显示俄文,由于 俄文字符在中文操作系统环境下进行编辑,保存形式为GB2312编码,所以运行结果显示为 双字节,既不符合俄语习惯,又影响界面美观(显示效果如图3所示)。方法二是在俄文环 境(即俄文操作系统)下编辑俄文字符,字符编码与K0I8-R的编码保持一致,在目标系统 中使用K0I8-R字体来显示俄文。因为方法二必须是在俄文编辑环境下才能实现,所以对我 国程序开发人员造成极多不便,而且源码中其他语言(如中文)的编码在俄文操作系统环 境下显示为乱码,使得编辑和维护都相当困难。方法三是使用UNICODE编码,以解决各种字 符集的显示的问题。但是,由于很多国家和地区的习惯问题,并不认同UNICODE字符集,而 且UNICODE适合通用型操作系统,对嵌入式系统来讲,并不是好的解决办法,很多嵌入式系 统的图形库软件并不支持UNICODE。

发明内容
本发明针对现有技术中存在的缺陷或不足,提供一种在中文操作系统环境下的俄 文字符编辑和显示方法及装置。所述方法及装置不仅解决了在中文操作系统环境下对源码 中俄文字符进行编辑,运行结果显示不正常的问题,而且也使得对俄文的编辑和维护更加 方便简单。本发明的技术方案如下在中文操作系统环境下的俄文字符编辑和显示方法,其特征在于,包括以下步 骤1)在中文操作系统环境下将俄文字符串编辑进程序源码,并存储;2)利用预先建立的GB2312编码表和K0I8-R编码表中俄文字符的对应关系,对俄 文字符串编码进行映射处理,获得符合K0I8-R编码表标准的俄文字符串编码;3)根据映射后的俄文字符串编码,利用目标系统图形库方法,正常显示俄文字符。所述步骤1)中,在中文操作系统环境下将俄文字符串编辑进程序源码是指,在程 序源码文件中直接编写俄文字符串,或者从EXCEL表格或其他文档中直接将俄文字符串拷贝粘贴到源码文件中;所述存储是指,使用无符号字节方式存储。所述步骤2)中包括以下内容A)首先在GB2312编码表标准中去掉俄文字符的第一个字节0xa7 ;B)利用特殊映射关系,即GB2312编码表和K0I8-R编码表标准中俄文字符代码的 一一对应关系,将GB2312中的俄文编码映射到K0I8-R编码表中;C)所得到的俄文字符的映射代码如下所示static unsigned char map []={0x00,Oxel,0xe2,0xf7,0xe7,0xe4,0xe5,0x00,0xf6,0xfa,0xe9,0xea,Oxeb,Oxec,Oxed,Oxee,Oxef, 0xf0,0xf2,0xf3,0xf4,0xf5,0xe6,0xe8,0xe3,0xfe,0xfb,0xfd,Oxff,0xf9,0xf8,Oxfc,OxeO,Oxfl,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,Oxcl,0xc2,0xd7,0xc7,0xc4,0xc5,0x00,0xd6,Oxda,0xc9,Oxca,Oxcb,Oxcc,Oxcd, Oxce,Oxcf,OxdO,0xd2,0xd3,0xd4,0xd5,0xc6,0xc8,0xc3,Oxde,Oxdb,Oxdd,Oxdf,0xd9,0xd8, Oxdc,0xc0,0xdl}。所述步骤3)中,利用目标系统图形库方法是指,使用IS08859-1标准,将通过映射 处理后的俄文字符串编码,利用目标系统的字符显示机制,调用K0I8-R字体,以正常显示 俄文字符。所述目标系统是具有显示屏的系统。在中文操作系统环境下的俄文字符编辑和显示装置,其特征在于,包括编辑模块 和显示模块,所述编辑模块是在中文操作系统环境下将俄文字符串编辑进程序源码,并存 储;所述显示模块是通过GB2312编码表中俄文字符和K0I8-R编码表中俄文字符的对应关 系映射表,以获得符合K0I8-R编码表标准的俄文字符串编码,并根据映射后俄文字符串编 码,利用目标系统图形库方法,正常显示俄文字符;所述目标系统是具有显示屏的系统。本发明的技术效果如下本发明解决了开发人员过于依赖俄文环境的问题,并且可以独立在中文操作系统 环境下对俄文进行编辑和维护,俄文字符串和其它字符串(如中文)均能正常显示,没有乱 码,编辑和维护工作简单;而且在目标系统中能直接使用K0I8-R字体显示俄文,既符合俄 语习惯,界面又美观。


图1是本发明在中文编辑环境下实现俄文字符串显示和编辑的流程图。图2是本发明中俄文字符串的映射处理流程图。图3是使用现有技术中方法一显示俄文字符串的效果图。
5
图4是使用本发明显示俄文字符串的效果图。
具体实施例方式本发明的发明构思如下在中文操作系统环境下俄文字符显示和编辑的方法,包 括将俄文字符串编辑进程序源码中,使用无符号字符字节方式存储,然后根据GB2312与 K0I8-R标准中的俄文字符的对应关系,获得符合K0I8-R编码表标准的俄文字符串编码,最 后利用目标系统图形库方法,使用IS08859-1标准,调用K0I8-R字体来显示俄文字符。本 发明在中文操作系统环境下对俄文字符串进行编辑,不仅解决了中文操作系统环境下编辑 俄文,运行结果显示不正常的问题,而且也使程序开发人员对俄文的编辑和维护更加简单 方便。本发明涉及GB2312标准编码,在GB2312标准中俄文编码由两个字节组成,一个字 节编码固定为0xa7,另一个字节编码如下表2所示。在中文操作系统环境下,对俄文字符串进行编辑,根据GB2312与K0I8-R标准中的 俄文字符的对应关系表,在目标系统中使用K0I8-R字体来显示俄文字符。下表分别为K0I8-R标准中的俄文字符编码表和GB2312标准中的俄文字符第二个 字节的编码表。表1 :K0I8_R标准中的俄文字符对应的编码表 表2 :GB2312标准中的俄文字符第二个字节的编码表 本方法在对俄文字符串进行显示时,对GB2312标准中的俄文字符编码进行解析, 首先去掉俄文字符编码的第一个字节0xa7,利用特殊映射关系,即一一对应,将GB2312中 的俄文编码(表2所示)映射到K0I8-R编码(表1所示),从而实现在中文操作系统环境 下对俄文源码编辑,并且调用K0I8-R字体显示。其中映射表如下所示static unsigned char map[]={0x00,Oxel,0xe2,0xf7,0xe7,0xe4,0xe5,0x00,0xf6,Oxfa,0xe9,Oxea,Oxeb,Oxec,Oxed, Oxee,Oxef, 0xf0,0xf2,0xf3,0xf4,0xf5,0xe6,0xe8,0xe3,0xfe,0xfb,0xfd,Oxff,0xf9,0xf8, Oxfc,OxeO,Oxfl,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,Oxcl,0xc2,0xd7,0xc7,0xc4,0xc5,0x00,0xd6,Oxda,0xc9,Oxca,Oxcb,Oxcc, Oxcd, Oxce,Oxcf,OxdO,0xd2,0xd3,0xd4,0xd5,0xc6,0xc8,0xc3,Oxde,Oxdb,Oxdd,Oxdf,0xd9,0xd8,Oxdc,0xc0,0xdl}。本发明解决了开发人员过于依赖俄文编码环境的问题,并且可以独立在中文环境 下对俄文进行编辑和维护,俄文字符串和其它字符串(如中文)均能正常显示,没有乱码, 编辑和维护工作简单;而且在目标系统中能直接使用K0I8-R字体显示俄文,既符合俄语习 惯,界面又美观。为使本发明的目的、技术方案和优点更加清楚明白,下面结合具体实施步骤和附 图,对本发明进一步详细说明。图1示出了本发明在中文编辑环境下实现俄文显示和编辑的流程图。如图1所示, 在中文操作系统环境下的俄文字符编辑和显示,包括以下主要流程在中文环境下,获取俄 文字符串编码并存储;利用GB2312与K0I8-R标准对应关系,对俄文字符串进行处理;根据 目标系统图形库方法显示俄文字符。图2是本发明中俄文字符串的映射处理流程图。下面结合图1-图2,说明在中文 操作系统环境下的俄文字符编辑和显示的步骤流程。步骤(1)在中文操作系统环境下将俄文字符串编辑进程序源码中,可以从Excel表格或其 它文档中直接拷贝粘贴到源码文件中,使用无符号字节方式存储。
步骤(2)俄文字符串处理 使用函数 unsigned char氺gb2312_ _to_koi8(unsigned char氺dst, unsigned
char^src)实现,其中src为待处理的俄文字符串,dst为处理后的K0I8-R字符串
a)申明一个临时字符缓冲区buf,申明两个临时指针指向src和buf b)判断pi当前位置字节是否为src字符串末尾,若不是,则执行下一步,否则,跳 出循环,执行步骤e;c)判断pi当前位置字节值是否为0xa7,若值不等于0xa7,则将其赋值给p0指向 位置,并将P0向前移动一个位置;d)将pi向前移动一个位置,返回步骤b ;e)将p0当前位置赋值末尾标志,p0位置重新指向buf开始位置,pi指向dst开 始位置*p0 = ‘\0,;p0 = buf ;pi = dst ;f)判断p0当前位置字节是否为buf字符串末尾,若不是,则执行下一步,否则,跳 出循环,将Pi当前位置赋值末尾标志,返回dst ;g)将p0当前位置值减去OxaO后赋值给map数组当前位置,再将map数组当前位 置值赋值给pl指向位置。氺pl = map[氺p0_0xa0];h)将p0、pl向前移动一个位置,返回步骤f ;步骤(3)根据目标系统图形库方法,使用IS08859-1标准,将gb2312_to_koi8函数处理后 的字符串调用K0I8-R字体,就可显示标准俄文字符了,显示结果如图4所示。显然,图4是 正常显示,图3是不正常显示。应当指出,以上所述实施方式可以使本领域的技术人员更全面地理解本发明,但 不以任何方式限制本发明。unsigned char buf []unsigned char氺pO = buf ;unsigned char氺pl = src ;
if(*pl' = 0xa7) {
氺pO =氺pl ; p0++ ;
权利要求
在中文操作系统环境下的俄文字符编辑和显示方法,其特征在于,包括以下步骤1)在中文操作系统环境下将俄文字符串编辑进程序源码,并存储;2)利用预先建立的GB2312编码表和KOI8-R编码表中俄文字符的对应关系,对俄文字符串编码进行映射处理,获得符合KOI8-R编码表标准的俄文字符串编码;3)根据映射后的俄文字符串编码,利用目标系统图形库方法,正常显示俄文字符。
2.根据权利要求1所述的在中文操作系统环境下的俄文字符编辑和显示方法,其特征 在于,所述步骤1)中,在中文操作系统环境下将俄文字符串编辑进程序源码是指,在程序 源码文件中直接编写俄文字符串,或者从EXCEL表格或其他文档中直接将俄文字符串拷贝 粘贴到源码文件中;所述存储是指,使用无符号字节方式存储。
3.根据权利要求1所述的在中文操作系统环境下的俄文字符编辑和显示方法,其特征 在于,所述步骤2)中包括以下内容A)首先在GB2312编码表标准中去掉俄文字符的第一个字节0xa7;B)利用特殊映射关系,即GB2312编码表和K0I8-R编码表标准中俄文字符编码的一一 对应关系,将GB2312中的俄文编码映射到K0I8-R编码表中;C)所得到的俄文字符的映射代码如下所示static unsigned char map[]={0x00,Oxel,0xe2,0xf7,0xe7,0xe4,0xe5,0x00, 0xf6,Oxfa,0xe9,Oxea,Oxeb,Oxec,Oxed,Oxee, Oxef,0xf0,0xf2,0xf3,0xf4,0xf5,0xe6,0xe8, 0xe3,Oxfe,Oxfb,Oxfd,Oxff,Oxf9,Oxf8, Oxfc, OxeO,Oxfl,0x00,0x00,0x00,0x00,0x00,0x00, 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, 0x00,Oxcl,0xc2,0xd7,0xc7,0xc4,0xc5,0x00, 0xd6,Oxda,0xc9,Oxca,Oxcb,Oxcc, Oxcd, Oxce, Oxcf,OxdO,0xd2,0xd3,0xd4,0xd5,0xc6,0xc8, 0xc3,Oxde,Oxdb,Oxdd,Oxdf,0xd9,0xd8,Oxdc, 0xc0,0xdl}o
4.根据权利要求1所述的在中文操作系统环境下的俄文字符编辑和显示方法,其特征 在于,所述步骤3)中,利用目标系统图形库方法是指,使用IS08859-1标准,将通过映射处 理后的俄文字符串,利用目标系统的字符显示机制,调用K0I8-R字体,以正常显示俄文字 符。
5.根据权利要求1所述的在中文操作系统环境下的俄文字符编辑和显示方法,其特征 在于,所述目标系统是具有显示屏的系统。
6.在中文操作系统环境下的俄文字符编辑和显示装置,其特征在于,包括编辑模块和 显示模块,所述编辑模块是在中文操作系统环境下将俄文字符串编辑进程序源码,并存储; 所述显示模块是通过GB2312编码表中俄文字符和K0I8-R编码表中俄文字符的对应关系映 射表,以获得符合K0I8-R编码表标准的俄文字符串编码,并根据映射后俄文字符串编码,利用目标系统图形库方法,正常显示俄文字符;所 述目标系统是具有显示屏的系统。
全文摘要
在中文操作系统环境下的俄文字符编辑和显示方法及装置,所述方法及装置不仅解决了在中文操作系统环境下对俄文字符进行编辑,运行结果显示不正常的问题,而且也使得对俄文的编辑和维护更加方便简单,其特征在于,包括以下步骤1)在中文操作系统环境下将俄文字符串编辑进程序源码,并存储;2)利用预先建立的GB2312编码表和KOI8-R编码表中俄文字符标准的对应关系,对俄文字符串编码进行处理,获得符合KOI8-R编码表标准的俄文字符串编码;3)根据映射后俄文字符串编码,利用目标系统图形库方法,正常显示俄文字符。
文档编号G06F17/21GK101853245SQ20101018711
公开日2010年10月6日 申请日期2010年5月31日 优先权日2010年5月31日
发明者周玉禄, 赵均辉, 金文波 申请人:深圳市开立科技有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1