用于输入汉字的方法和系统的制作方法

文档序号:6429359阅读:184来源:国知局
专利名称:用于输入汉字的方法和系统的制作方法
技术领域
本发明总体上涉及计算机数据输入,具体而言,涉及用于向计算机输入汉字的方法和系统。术语汉字习惯于包含主要用于台湾的繁体汉字以及主要用于中国大陆的简体汉字。
背景技术
从引入计算机那时到现在,由于用来构造字符的唯一形状数量相当大,故而向计算机中输入汉字始终并且将继续成为难题。近几年来,已经开发出很多方法来解决此问题,但是没有方法设法同时解决要求容易使用和效率高之间的矛盾。本发明是在现有技术的基础上、在容易使用和效率方面同时做出改进的方法。
现有技术中的汉字输入法通常落入两大类之一拼音或者合成,以及一些混合。本发明属于基于合成方法的类别。此分类中的方法指定键盘按键来表示用于构造汉字的字符部首。例如英文字的按键序列因此表示一系列汉字部首。可以将这种序列与序列库相比,匹配的序列将对应于特定的汉字。
合成法的优势在于它类似于汉字书写的方式,并且因此使用自然。然而,主要缺陷在于在语言中存在200个以上经常出现的部首,当标准计算机键盘仅仅具有26个按键时,使其无法为每个部首指定唯一按键。另一个主要缺陷在于各种各样的汉字构造使其无法定义用于描述如何构造任意汉字的标准规则。本发明创建了能克服这两个主要缺陷的技术。

发明内容
本发明提供了一种用于向计算机中输入汉字的方法和系统。本发明在现有技术的基础上提高了输入汉字的使用容易程度和效率。在汉字输入系统中,容易使用和效率高是固有的矛盾目标。
依照本发明的第一方面,将用于构造汉字的一些200+部首(在文献中也称为偏旁)通过英文字母表中的其中一个字母表示。所选择的部首集合足以构造感兴趣的任意汉字。本发明涉及的每个汉字被指定一“编码”,其可以是英语语言中的文本串,并且依照本发明定义的那样,所述字符串的每个字母对应于汉字部首。这在现有技术中是标准作法。在现有技术中,输入系统对照编码字母集合(库)为字母匹配特定文本串。与库中的字符串相匹配的输入字符串选择与该编码相关联的汉字。此技术需要用户精确地熟记分配给每个汉字的准确编码,巨大的工作倾向于错误、模糊和忘记,以至于无法使用。本发明使用新颖的技术以求减少需要用户记忆的数量。除预定编码集(库)之外,本发明还定义了两个“等价”表“向前”等价表和“向后”等价表。这些表为英文字母的每个字母定义了一组字符串,在比较运算期间,认为所述字符串与该字母“等价”。当将输入的文本串和来自于所述库中的一个字符串进行比较时,两个字符串不是简单地比较字母与字母。而是将输入字符串中的每个字母进一步扩大为由向前等价表给定的预定字符串集。因此,如果在向前等价表中将字母‘a’定义为包括字符串集{‘bc’,‘def’,‘hijk’},那么输入字符串“a”将匹配库字符串“a”、“bc”、“def”和“hijk”。将此技术应用于输入字符串中的每个字母。同样地,将向后等价表应用于库中定义的字符串中的所有字母。因此,如果在向后等价表中将字母‘a’定义为等价于集合{‘zy’,‘xwv’,‘utsr’},那么库字符串“a”将匹配输入字符串“zy”、“xwv”、和“utsr”。向前向后等价表在每个比较过程中都应用。最后结果是大幅度削减了强加于用户的记忆量。示例将更加明显地阐明此技术。
例如,汉字“昨”可以利用部首“日”和“乍”构造,或者利用部首“日”、“丿”和 构造,或者利用部首“日”、“”和 构造,或者利用部首“口”、“一”和“乍”构造。对于哪种合成是“正式的”合成没有标准定义。在现有技术中,用户必须根据设计者定义的准确序列来提供部首的准确集合,以便获得匹配。(一些方法定义了映射同一字符的多种序列,但是这只针对一些字符进行,仍然需要任意预定等价序列的准确匹配)。这实际上需要用户熟记每个汉字的准确编码。在本发明中,在描述输入法的字符构造中允许无限制的变化量。在上述例子中,任何可能的描述都将可以识别字符。随后是对如何进行匹配的更加详细的说明。
“日”本身是完整的汉字,并且也是用于构造其他字符经常出现的部首。作为字符,它包括部首“口”和“一”,而作为部首,将它映射到英文字母表的26个字母之一,即‘a’。同样地,“乍”本身也是汉字,但不是经常用于构造其他字的部首,根据分配由指定的英文字母表示。作为字符,它包括部首“丿”、“一”、“丨”、“一”和“一”。假定将部首“口”、“丿”、“丨”和“一”分别映射到字母表字母‘o’‘j’‘i’和‘h’。由此,字符昨可以通过编码“ajhihh”来描述,不过这不是仅有的可能的编码,而是设计者选择的一种。然而,与现有技术相比,用户不需要提供此准确编码来识别字符昨。相反,如随后的表所示出的,用户可以根据其理解为字符昨的部首的内容来提供多种不同输入字符串的任意一个,其可能或者未必与设计者定义的输入法相同,所述表为

依照本方法的第二方面,使用“局部匹配”算法来进一步增强编码比较运算的智能性。除允许一个或多个“通配符”字符依照给定序列来匹配编码中字母的一个或多个未指定子串之外,每当给定的输入序列没有产生任何匹配时,本发明自动地创建“暗示”通配符。由此,假定‘*’是通配符,输入序列“*jhihh”将匹配“昨”的编码,那么“aihh”也将匹配它。当为匹配运行而继续执行比较时,本发明的此方面自动地跳过输入字符串内非匹配文本运行,由此导致接受局部匹配输入序列的比较过程。
依照本方法的第三方面,设计了一种新颖的方法,该方法解决了具有相同编码的字符之间的冲突。有时候,一个以上的汉字包括相同准确部首,仅仅在这些部首的相对位置上结构有所不同。为解决此模糊编码,将具有位置描述的指定语义的附加字母添加到每个冲突编码。图2包含阐明此新颖技术的例子。
依照本方法的第四方面,设计了一种新颖的方法,该方法可以选择输入法匹配的字符。每当一个以上候选字符匹配一用户给定的字母序列时,将候选呈现给用户以便手动选择。在现有技术中,有时将数字用作指定用户选择的手段。由于提供了候选的线性列表以供选择,虽然数字依照其意思是显而易见的,但是本发明选择使用按字母顺序的字母。由此,字母‘a’表示选择第一候选,‘b’表示选择第二,诸如此类。由于将按字母顺序的字母用于编码汉字不都适用任意给定的输入法,并且如果还将其用作候选选择按键的话,可能会干扰系统,所以使用按字母顺序的字母而不是数字是非显而易见的,并且在现有技术中从未这样做过。本发明的此方面意义重大,这是由于它允许用户将其手指保持在基本触摸键入位置(与必须移动他们以便键入数字相比),由此使打字速度更快。
依照本方法的第五方面,设计了一种新颖的方法,所述方法将辅助信息附加到输入字符串上。由于本发明仅仅采用了26个小写按字母顺序的字母来构造输入序列,所以使用集合之外的字母可以用作有关输入序列的辅助信息的载体。例如,输入序列“abc6-9”被解释为这样的意思匹配由编码“abc”定义的并且具有笔画数是6到9的所有字符。另一个例子是将以大写字母开始的输入序列定义为表示“通过”,其指的是输出给定的输入序列而不进行翻译,由此创建在汉字当中输入英语句子的有效方法。


当结合附图参照以下详细说明使本发明的上述方面和许多附带的优势变得更透彻时,也使它们变得更加易于理解,其中图1是用于实现本发明的由通用英语键盘上的每个按键表示的笔画、笔画序列或者偏旁的列表;图2是某些确定字符的多个编码例子,如何得出所述编码的说明,以及识别同一字符的各种编码;图3是示出了作为在个人计算机上运行的计算机程序实现的本发明的一个实施例的系统图;图4是图解如何将本发明用于实际产品的本发明一个实施例的实现方式的屏幕快照。
具体实施例方式
本发明提供了一种用于向设备有效地输入汉字的方法和系统,所述设备具有存储表示用于语言的字符的编码的能力,并且使用基于标准英语语言的键盘,诸如个人计算机、手持式计算机或者任何其他这种电子设备。提供以下描述,以便使本领域普通技术人员可以做出并且使用本发明,并且在示例性优选实施例的上下文中给出具体描述。对于本领域技术人员来说,对所述优选实施例的各种修改是显而易见的,并且在此定义的通用原理可以应用于其他实施例。由此,本发明不意指局限于在此示出的实施例,而是与此处所述的原理和特性的范围一致。
贯穿此说明书提及的“一个实施例”或者“一实施例”指的是与所述实施例相关联描述的特定特性、结构或者特性包括在本发明的至少一个实施例中。由此,贯穿此说明书不同地方中出现的短语“在一个实施例中”或者“在一实施例中”未必都涉及同一实施例。此外,在一个或多个实施例中,可以依照适当的方式合并特定的特征、结构或者特性。
用于实现本发明的示例性计算机系统依照本发明,希望向计算机中输入汉字的人员(用户)启动计算机程序,所述计算机程序是本发明的一个实施例,并且将所述计算机程序并入对应于汉字的预定编码的数据库。此计算机程序通常驻留在个人计算机上,该个人计算机具有安装在其上的键盘,键盘上描述有字母a到z。图3示出了供这种程序使用的典型计算机设置,这是可以实现本发明的适当的计算环境。
虽然不需要,但是将依照计算机可执行指令的通用上下文来描述本发明,所述计算机可执行指令诸如由个人计算机执行的程序模块。通常,程序模块包括例行程序、程序、对象、组件、数据结构等等,用于执行特定任务或者实现特定的抽象数据类型。此外,本领域技术人员将理解的是,本发明可以采用其他计算机系统结构来实施,包括手持设备、多处理机系统、基于微处理器或者可编程消费电子设备、专用硬件设备、网络处理设备、小型计算机、主计算机等等。本发明还可以依照分布式计算环境来实施,其中通过经由通信网络链接的远程处理设备来执行所述任务。在分布式计算环境中,程序模块可以位于本地和远程存储器存储设备中。
参照图3,用于实现本发明的示例性系统300包括依照常规个人计算机301形式的通用计算装置,其包括用于处理程序和/或模块指令的处理单元304,其中存储有程序和/或模块指令的存储器305,系统总线306及其他系统部件,诸如存储设备,虽然没有示出这些设备,但是本领域技术人员应熟知。系统总线用于将各种部件连接到处理单元304,以便处理单元可以作用于来自于这些部件的数据,并且向这些部件发送数据。例如,系统300可以包括键盘308,用于收集由用户输入的文本。在以下讨论的上下文中,将键盘308作为独立的部件来描述。将理解的是,由这种键盘提供的功能可以通过独立的硬件设备或者模拟这种硬件设备功能的虚拟设备来实现。
系统体系结构在一个实施例中,本发明可以实现为在个人计算机上运行的计算机程序。当用户希望向计算机的输入流中输入汉字时,用户首先激活实现本发明的程序。当激活时,此程序监视来自于键盘的输入按键压力。用户按压的每个按键依照接收顺序被读取并且存储在缓冲器中,直到按下某个指定按键、诸如空格键,信号表示一个字符识别序列结束。然后,所述程序利用现有技术中公开的多种检索算法的任意一种以及本发明中描述的特定匹配技术、将完成的输入序列与表示汉字的预定序列的数据库进行比较,所述检索算法诸如串行检索、快速搜索、索引检索、散列搜索等。如果找到一个并且仅仅一个准确匹配,那么将由此定义的汉字发送到计算机的输入流。如果发现一个以上的匹配,那么将多个字符呈现给用户以供手动选择。如果没有找到匹配,那么不发送字符。在所有情况中,输入指定的‘end sequence(结束序列)’字符终止一个序列,并且同时启动下一个,重新重复上述过程。此过程继续,直到用户按下按键来解除程序,或者立即终止它。
虽然已经结合实施本发明的优选形式及其修改形式描述了本发明,但是本领域普通技术人员将理解的是,对本发明做出的任何其他修改都包括在随后的权利要求书的范围内。据此,本发明的范围不意指由上述描述来限定,而是由随后的权利要求书来全部确定。
权利要求
1.一种汉字输入方法,其中将汉字定义为按键序列,并且通过对照预定序列集合匹配给定的序列来加以选择,其特征在于,包括序列比较方法,其中依照按键和按键运行的预定映射、考虑将来自于一个序列的按键或按键的连续运行与另一个序列中的按键或按键连续运行相匹配。
2.如权利要求1所述的方法,还包括将给定的序列与预定序列进行比较的方法,其中,在不使用指定的‘通配符’符号的情况下,当给定的序列仅仅匹配预定序列的一部分时,就实现匹配。
3.如权利要求1所述的方法,还包括将汉字编码为另一种语言的文本串的方法,其中定义编码中使用的确定字母来传达涉及由所述编码表示的汉字部首的确定位置信息。
4.如权利要求1所述的方法,还包括将汉字编码指定为另一种语言的文本串的方法,其中定义存在于指定字符串中的确定字母来承担用于权利要求1所述方法的专用指令。
5.如权利要求1所述的方法,还包括将英文字母表的每个字母定义为一个或多个中文笔画、笔画组合或者偏旁的表示,如图1所示。
6.如权利要求1所述的方法,还包括选择技术,从而显示一组候选字符以供用户选择,其中用户通过输入用作为所希望的候选的标识符的符号来进行选择,其中标识符符号集合与在定义汉字本身中使用的符号集合重叠,包括用作定义终止的字符。
7.一种汉字输入方法,其中将汉字定义为按键序列,并且根据一给定序列与预定序列集合的匹配来加以选择,其特征在于包括字符识别方法,其中分别将中文书面语言的确定笔画与部首映射到确定的按键,并且依照预定的映射,可以通过多个按键序列来识别汉字,其中序列中的变化是将字符中包含的部首表示为单个按键或者表示部首中包含笔画和/或子部首的按键序列的唯一结果。
8.如权利要求2所述的方法,还包括将英文字母表的每个字母定义为一个或多个中文笔画、笔画组合或者偏旁的表示,如图1所示。
全文摘要
一种用于从某种类型键盘向计算设备中输入汉字的方法和系统。本发明经由在计算设备上运行的软件来实现。所述软件应用程序具有均对应于汉字的按键序列数据库。所述软件应用程序分析用户操作键盘生成的按键序列,并且利用多个新技术来为相应的汉字搜索其数据库。
文档编号G06F3/01GK1648829SQ20041007983
公开日2005年8月3日 申请日期2004年9月23日 优先权日2003年9月23日
发明者保罗·鹏 申请人:保罗·鹏
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1