产生未知字母之字模的方法与系统技术方案

技术编号:2891659 阅读:210 留言:0更新日期:2012-04-11 18:40
一种用于对文本元素产生字模的方法和设备。每一个文本元素至少包括一个码点,通常是几个码点。系统在表内寻找代表一个被输入文本元素的字模,且如果字模未被找到同时系统地产生文本元素的子集,并且在表内寻找代表每一子集的字模。对不在表中的码点产生缺省字符。系统对每一码点进行分类,如统一码分类,并且采用根据其类别对未知码点进行处理的方式。(*该技术在2014年保护过期,可自由使用*)

【技术实现步骤摘要】
随着计算机在世界各地使用的激增,绝大多数语言民族的人们目前经常性地使用计算机和工作站产生文件和进行国际间交流,这就使得使用不同语言的人们之间传递的信息能在再现这些语言的打印和显示系统内相互兼容变得日益重要,现在有一种国际标准,尽管还不是非常广泛,但已覆盖了世界上大多数书写字母表;这一标准就是统一码标准/国际字符编码(Addison—Wesley,ISBN 0—201—56788—1),(此申请中所讨论的每一出版物在此均附作参考)统一码对其所覆盖语言的每一字母、发音符号、语调记号或其它特殊字符均赋与一个编码。欲获得有关统一码的更多信息,可参见G.Adams著《统一码介绍》(Introduction toUnicode),见由高等专业研究学院,剑桥,马萨诸塞(Institutefor Advanced Professional Studies,Cambridge,Massachusetts)创立的“统一码实施者研讨会”(Unicode ImplementersWorkshop)(8月6日,1992年)及“统一码联盟”,(UnicodeConsortium)/统一码实施者研讨会(Unicode,Inc.和Taligent)的会议录,尤其是下列研究室的会议录《无间隔记号》,2号统一码实施者研讨会(Merrimack,新罕布什尔州,3月12—13日,1993年);M.Davis的《处理无间隔记号的策略》(Strategies for Handling Non—spacing Marks)以及T.Yamasaki著的《打印服务器的统一码》(Unicode on Print Servers),此二文均出自3号统一码实施者研讨会(圣何塞,加利福尼亚州,8月6—7日,1992年)。另一可获得的编码系统为通用串(Universal String)或10646串(10646 String),它包括通用字符集编码ISO/IEC10646(Universal Character Set Code ISO/IEC10646),就如ISO和IEC联合技术委员会ISO/IEC JTCI(ISO and IEC JointTechnical Committee)以通用标题“信息技术—通用八重编码字符集”(UCS)(1993)(Information technology—UniversalMultiple—Octet Coded Character Set)制备的“ISO/IEC国际标准(10646—1”1993)(ISO/IEC International Standard)中所描述的那样,10646码集的大部分与统一码的相似,其缺点也和统一码的缺点相似,本申请中的讨论与这两种及其它编码系统相关。当一计算机系统翻译一由统一码、10646码或其它方法编码的字符串时,它执行一再现过程以显示或打印那些字符。三种传统再现过程单独或以某种联合使用一核心表,一查找表和一连字表,再现系统的输入是一长串编码点(即字符的二进制码表示),输出是每一输入字符编码的字模编码,一个字模是一个字符在单独显示或一打印单元里的表现形式,有可能是几个可能的独立字符的组合;例如,下面是七种不同的字模a′àà ¨_其中最后的一个是由三个码点即“a”的码点,变音符号的码点和下加横线的码点来表示。在目前系统中,这三个码点被结合并显示成一个单一字模。当一个查找表被使用,再现系统将编码点与表中的那些相比较;如果某一特定码点组合被找到,那么输出仅仅是在查找表入口所找到的字模。系统可能会附加查找连字表以对字母的一些特定组合形成连字,许多语言(如阿拉伯语)有相当多的连字;英语只有几个连字,如以“fi”代替“fi”,“ffi”代替“ffi”及“fl”代替“fl”。这些连字在英语中是可选件,而在其它语言字母表中,连字是书写语言必需的一个特性,一个关于计算机对再现阿拉伯连字及类似问题处理的分析可见J.Becker所著《“多连字文字处理”(Multilingual Word Processing)《科学美国人》(ScientificAmerican)1984年7月号和J.Becker著的“阿拉伯文字处理”《Communications of the acm》1987年7月号(第30卷,第七号)。再现系统还可查对核心表,在此决定对某些特定字模组合的分离,即对显示出或打印出的字符之间的分隔。上述三种系统可被结合使用以适应多种语言。拉丁语系的字母表处理起来非常简单。然而,许多语言关于字母、语调记号和其它字符的组合相互间有很复杂的规则,不能很好适应上述这些方法。核心表和连字表在大多数系统中是很小的,不能容纳哪怕是一门简单语言的表达所必需的上千种可能的字符组合;例如,泰语有2700种可能的字符组合,已足以使查找表、连字表和核心表大到无法接受,而且将使每一组合的查对占据过长的处理器时间。类似地,阿拉伯文字可以有至少三种不同的组合方式,具有初期、中期和最后形式,且其它的还会有除此之外的第四种(独立)形式,这些字母在书面语言中形成复杂的连字,且每种语言形式通常有一种不同的形状。如果建立一个连字表来容纳所有这些,此表将十分庞大,还需要成千上万的入口以存入28个字母的字母表中可能的组合。其它语言,如朝鲜语和越南语,具有类似数量众多且复杂的字母组合。而为一种将出现此问题的语言建立其专门的表将防碍这些表的标准化和规模缩小化,占用过多内存,且需要大量处理时间对其检索,这样,在一个必需处理不只一种书面字母表或字符集的系统中,也就是说,实质上用于国际目的的系统中,使用包含阿拉伯语、朝鲜语、泰国语、越南语、英语等语言中所有可能字母组合的核心表和连字表是不切实际的。一种可工作的国际再现系统应当能够在所有这些系统内显示字符时处理各种变化,而不需要对每一字母的组合有一个表的入口。当用户输入一不能在表中特定查找到的字符时,另一个问题产生了。例如,为某种原因,一个用户可能想输入一个y(也就是,一个“y”和一变音符号或分音符)而其可能未被给定系统定义,或者想创造某些其它字符,如用一个拉丁式发音创造一个非拉丁字母表字符。后者的一个实例是 (泰语字符“kokai”和其上的一个音调符号),这是一个不存在于任一预先规定的字母表中的组合。这些特别的字符不能被传统的系统所处理,这些传统系统遇到未预设定的字符时,典型做法是仅以一个空格或一个缺省记号替代不知的码点。现需要一种能通过分析码点和再现尽可能相似的字模来提供用户创造的未预先设置于系统的表中的字模的系统,这些要在无需建立庞大的特殊字符表的基础上完成。更确切地说,需要这样一种系统,它能够容纳在泰语、阿拉伯语、朝语等语言中找到的如此大量的字符组合,同时要使如连字表和核心表等字符表的规模最小化。附图说明图1显示了一个用于改进传统方法以再现字符的系统的一部分,再现系统10是位于中央处理单元的存贮器内的一个常驻应用程序,且存取一个包括核心表50、字模查找表60和连字表70的字体资源40。这些表也贮存在存贮器中,被编码为码点20的字符被输入再现系统10,而再现系统10输出字模30,字模30取决于码点如何映射到表50、60和70中的一个或几个。作为字符的2进制缩码表示的码点20被一个本文档来自技高网...

【技术保护点】
一种从包含许多码点的文本元素产生字模的方法,上述每个码点代表一个所述字模;本方法由存贮在含有用于控制存贮器的处理器的计算机的程序执行,且存贮器中至少存有一个查找表与预先设定的含所述字模的预设定集的所述码点集对应,此办法包括步骤有:(1) 确定文本元素是否与表中一个字模相对应;如果是,继续进行到步骤4,否则进行到步骤2;(2)通过移去第一个预先设定的文本元素的子集来修改文本元素;(3)判断在表中是否存在与修改后的文本元素相应的字模,如果有,处理步骤(4),且:(4 )输出相应字模。

【技术特征摘要】
...

【专利技术属性】
技术研发人员:约翰I麦克恩内尔莫迪海休伯曼
申请(专利权)人:计数设备公司
类型:发明
国别省市:US[美国]

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1