蒙古青年论坛

 找回密码
 注册
查看: 81|回复: 5

蒙古文在计算机上的显示技术介绍

[复制链接]
发表于 2006-3-31 13:53:29 | 显示全部楼层
<P>呵呵,表格乱了</P>
发表于 2006-3-31 14:44:58 | 显示全部楼层
<P>总结得非常好!谢谢!</P>[em01]
发表于 2006-3-31 15:05:56 | 显示全部楼层
如果有蒙文的Opentype字体,蒙文的很多问题就简化了。这样再也不用把显现字符放到用户区了,使得避免了和其他使用同一用户区的字符产生冲突的可能。
发表于 2006-3-31 15:31:20 | 显示全部楼层
[em06][em06]本人计算机盲,只会用,不懂原理。不过希望蒙文输入法普及……
发表于 2006-4-1 02:14:50 | 显示全部楼层
不懂  呵呵  但是 进来 顶一下下
 楼主| 发表于 2006-3-31 13:52:25 | 显示全部楼层 |阅读模式
<P>蒙古文在计算机上的显示技术介绍<br>一、引言<br>   蒙古文字(以下简称蒙古文)又被称为传统蒙古文、回鹘式蒙古文、老蒙古文、胡都木文等。蒙古文字属拼音文字类型,书写习惯是由上到下竖写,从左到右换行。蒙古文的字母在蒙古词的不同位置出现时有各种变体。<br>   由于蒙古文特殊的书写习惯和变形显现特性在计算机上应用带来了很大不便,很多编辑器或文字编辑控件不支持由上到下竖写,从左到右换行更不用说变形显现。<br>二、计算机上的显示文字技术介绍 <br>1.字体技术<br>   计算机上显示的文字与印刷品上的文字不同。计算机显示文字实际上是在电脑在输出设备上模拟显示文字。计算机上显示的文字是通过把印刷品上的文字经过数学方法描述出来的。所谓的数学描述文件就是电脑上的“字体”。<br>   描述方法首先人们想到的点阵字体,将字模用矩阵描述。一般用于屏幕显示,如软件菜单文字。在它只能描述某一字号的字体,放大、变形后有很严重的锯齿(自己画的,不精确):<br>   蒙古文a的词首体,放大后。(自己画的,不精确)<br>   矩阵描述的方法不太成功,人们又将字模用直线曲线等图形数据来描述,采用二次曲线是之边框更加平滑。这种曲线字体由于精确地描述绘制字型,得到了广泛应用<br>   点阵字体和曲线字体的比较如下:<br>字体          应用范围                                              理想应用范围                 特点                          描述方法<br>点阵字体   显示器,制定大小的字体在屏幕      (CTR屏幕、液晶屏幕        最大的缺点是精度低,                  点阵   </P>
<P>                                                                     、电子屏幕)上显示       放大、变形后有很严重的锯齿,</P>
<P>                                                                                                                  不能作为印刷字体<br><br>曲线字体   显示器,印刷品                               印刷品                         精确,平滑,在屏幕显示上                 直线曲线</P>
<P>                                                                                                                不如优化过的点阵字体                      图形数据等<br></P>
<P>   典型的曲线字体有TrueType字体、PostScript字体、OpenType字体。<br>   TrueType字库是由Microsoft和Apple在1991年共同推出的,供前端排版时显示和打印输出,虽然打印质量没有PostScript字库好,但是完全可以满足一般用字的需求。TrueType字库有一套字体即可用于屏幕显示又可作为打印字体。是使用最为广泛的字体。 <br>   PostScript是Adobe于1985年发表的文件描述技术,按该 PostScript页面描述语言语法定义的字库就是PostScipt字库,其主要特点是可以精确地描述绘制字型,因而按印刷工业中的质量标准,PostScript字库在平滑性、细节和忠实性方面比TrueType字库要好。PostScript字库一般装于后端输出设备如激光打印或RIP软件中,而它在前端的使用需要依靠特殊的软件比如Adobe 的ATM,由于PostScript字库在操作系统软件中的兼容性不是很理想,目前主要还是用于后端输出。<br>   TrueType字体与PostScript字体的区别: TrueType字体装在电脑中,屏幕显示与打印使用同一套字体。而PS字则不同,在照排机中装入PS字,用于最终打印输出,而电脑中装入与PS字相对应的点阵字,用于屏幕显示。输出时电脑发送字体的代码到照排机中,然后照排机根据字体代码寻找相应的PS字。 </P>
<P>   OpenType也叫Type 2字体,是由Microsoft和Adobe公司从1995年开始联合开发的一种基于Unicode且与平台无关的字体模式。它是TureType字体格式的一种扩展,并融合了PostScript字体技术。它也是一种PostScript轮廓字体,比TrueType更为强大,最明显的一个好处就是可以把PostScript字体嵌入到TrueType的软件中,因此不管在屏幕显示和打印都可以获得优秀的输出质量。同时支持Windows、Mac和Linux系统平台,支持Unicode大字符集,还有版权保护。此外OpenType还可以包含连体字、上下标、花饰字等丰富的排版特性。可以说它是Type 1和TrueType的超集。<br>   OpenType的特殊特征为:标准连字、上下文替代字、自由连字、花饰边、旧样式、替代文字、标题替代字、花饰字、序数字、分数字。此外还有一些专门应用于亚洲语言的特征。不同的OpenType字体提供的可用特征种类也不相同,某些特征可能不可用。由下面的例子我们可以看出OpenType具有很大的优势。<br>   <br>        <br>   <br>   利用OpenType的特殊特征,将蒙古文名义字符转化为蒙古文显现字符。<br>   TrueType字体、PostScript字体、OpenType字体的比较:</P>
<P>字体                            计算机                        印刷设备                          显示效果                     使用范围<br>TrueType字体 操作系统平台无关,           打印机、复印机等             屏幕显示上的         Windows,Mac等</P>
<P>                          但Windows,Mac等          办公打印设备中使用时      忠实性方面不太好    操作系统及打印机</P>
<P>                          操作系统中广泛应用            方便快捷                                                         、复印机等办公打印设备<br><br>PostScript字体 操作系统平台无关,          最理想的字体                       平滑性、细节和     后端输出设备<br></P>
<P>                          计算机上使用点阵字体,                                                忠实性方面很好     如激光打印或RIP软件<br></P>
<P>                           但操作系统软件中的</P>
<P>                          兼容性不是很理想<br><br>OpenType字体 操作系统平台无关,     PostScript字体一样            屏幕显示和打印都          Windows,Mac等                          </P>
<P>                           有丰富的排版特性                                          可以获得优秀的输出质量  操作系统及后端输出设备<br><br><br></P>
<P>   注:OpenType标准定义了OpenType文件名称的后缀名。包含TureType字体的OpenType文件后缀名为.ttf,包含PostScript字体的文件后缀名为.OTF。如果是包含一系列TrueType字体的字体包文件,那么后缀名为.TTC。<br>2.显示与编辑环境<br>   有了字体计算机上就能显示显示文字,但显示和编辑环境是比较复杂的。<br>   目前的操作系统是以英语作为操作系统首选语言。大多数操作系统中英语的字母已经帮定最基本的资源中,在操作系统、应用软件以及软件开发工具中英语的参透根深蒂固。<br>   英语以外的语言如书写文字跟英语书写方向一样,那很多操作系统中只要把字体改变了就可显示不同的东西。如中文windows就是把英文windows中的默认字体和语言包改变了而已。<br>   蒙古语的书写方式跟英语书写方式有很大的出入,而且蒙古语的显示与编辑在现有操作系统以及软件的设计与开发中很少考虑到。所以蒙古语的显示与编辑成了比较难的事情。<br>   但对蒙古文来说通用控件中显示的蒙古文是横向的,例如蒙古文WPS。它的菜单及对话框上的文字虽然替换成了蒙古文也是横向的。<br>   Dos 和Windows中显示与编辑文字环境的比较:<br>操作系统<br>显示环境<br>编辑环境<br>举例<br>Dos<br>全屏文字由上到下从左到右显示方式<br>专门环境<br>方正蒙古文书版6.0<br>Windows<br>通用控件<br>文字编辑控件<br>蒙古文WPS的菜单、对话框</P>
<P>支持竖写的软件工作区<br>文字编辑控件<br>蒙古文WPS的工作区</P>
<P>蒙古文控件<br>蒙古文编辑控件<br>明安图的蒙古文控件</P>
<P>   <br>3.输入方法<br>   输入法就是将键盘上打出来的编码进行转换的程序。随着操作系统的发展输入法也经历了。<br>   在DOS操作系统中没有专门设计输入法的接口。因为DOS是针对英文设计的,键盘上打出来的编码不用变化即可使用。DOS核心中没有英文以外的文字支持程序。汉文输入的实现是通过专门设计中文处理模块,将不支持中文的操作系统设计成了支持汉文的操作系统。输入法绑定到这个中文处理模块中。蒙古文输入的实现是与编辑软件捆绑的,如方正6.0。总的来说DOS操作系统中输入法是需要跟程序绑定。<br>   进入windows时代对操作系统做大量修改是不大可能的。因为windows的代码比DOS的代码复杂的多。中文windows出来以前,人们用一种叫做外挂的方法进行中文的处理。外挂就是将用某种方法拦截windows中的键盘事件,然后进行编码转换。这种外挂的方法在中文windows出来以前很流行,中文windows出现以后不太多了。蒙古文外挂输入法现在也有使用,如赛汗输入法。<br>   Windows操作系统的键盘事件有windows的user.exe程序接收后,user.exe在将键盘事件传导输入法管理器(Input Method Manager,简称IMM)中,IMM再将键盘事件传到输入法中,输入法根据用户编码字典,翻译键盘事件为对应的编码,然后再反传到user.exe中,user.exe再将翻译后的键盘事件传给当前正运行的应用程序。Windows操作系统中输入法的名称是"Input Method Editor" ,简称IME,输入法的程序名称为:*.ime。</P>
<P>   输入方法的比较:</P>
<P>输入方法<br>操作系统<br>字体<br>特点<br>专门设计<br>DOS<br>点阵字库<br>须跟别的程序绑定<br>外挂<br>Windows<br>True Type字体<br>OpenType字体<br>输入前须启动外挂输入法<br>Ime<br>Windows<br>True Type字体<br>OpenType字体<br>Windows系统管理输入法</P>
<P>4.文字编码<br>   (1)UNICODE编码<br>   国际组织以大字库方法。当互联网的发展,使全世界成为一个地球村时,各民族文字都要求、也应当一视同仁,能够在同一网页上显示。于是有了统一码Unicode,总码位达20亿。设计Unicode的组织有两个,即国际标准化组织(ISO)和一个软件制造商的协会(unicode.org)。ISO开发了ISO 10646项目,Unicode协会开发了Unicode项目。在1991年前后,开始合并双方的工作成果,并为创立一个单一编码表而协同工作。从Unicode2.0开始,Unicode项目采用了与ISO 10646-1相同的字库和字码。目前两个项目仍都存在,并独立地公布各自的标准。Unicode协会现在的最新版本是2005年的Unicode 4.1.0。ISO的最新标准是10646-3:2003。<br>2000年蒙古文国际编码(ISO 10646)被ISO和unicode.org的认可。由于蒙古文国家编码没有制定显现字符编码,所以计算机利用Unicode编码正确显示蒙古时需要用到上面提到的OpenType技术。<br>   (2)ANSI 代码<br>   现流行的操作系统WINDOWS不是特别支持UNICODE,主要用ANSI 代码。<br>   电脑处理文字,也要先转变为电脑能识别的信息交换码。电脑只能分辨用电压高低表示的0和1,所以?一个文字的代码都是特定的二进制数。电脑的存贮是以8个二进制位为单位,叫做字节,通常表示为二个各由4个二进制位组成的十六进制字符(012……9AB……F),从最小值00到最大值FF(8个二进制位均为1,等于十进制255),只有256种不同的值,只能表示ASCII(美国信息交换标准代码)字符。实际上可显示的ASCII字符不到100个,开头32个是不能显示的控制码,如07为嘟一声,0A为换行,0D为回车,1B为键盘左上角的逃脱键。从空格20开始才是真正的ASCII字符,如30…39是十个数字0…9,41…5A是A…Z,61…7A是a…z。从20到7F的96个代码,每个都有一组数据,用来显示它所代表的字形。这些数据组成一个ASCII字库。从00到7F的128个代码,最高位为0,是基本拉丁字符,最高位为1的另外128个代码,是基本拉丁字符的扩展码,多为制表符等图形。英文以外的拼音文字,还有一些与拉丁字母不同的字母,它们也被安排在扩展码中。像中文那样,字符特多,更要两个以上这样的字节。总之,不同国家和地区的不同文字,编码安排不一样,字库内容不相同,分别用一个叫代码页的数值来区别。常见的代码页有:美国37,英国285,德国273,中国大陆(简体)936,中国台湾(繁体)950,日语932等。不过所有代码页中,都包含00……7F的基本拉丁字符。如果出现随机高位 ANSI 字符(如 ?、?、‰、? 和 ?)而不是可读的文本,则表示问题出在使用错误代码页的 ANSI 代码中。<br>   现在ANSI 代码中没有蒙古文代码页(有蒙古国斯拉夫蒙古文的代码页)。所以WINDOWS中不能正确显示蒙古文的。即ISO 10646蒙古文编码转换不了ANSI编码。不过处理蒙古文软件提供商通过自设区中制定蒙古文显现字符编码的方法使用ANSI 代码处理蒙古文。这样的处理方法显然不符合《UCS》的ISO 10646蒙古文编码和《蒙古文编码系统使用用户协议》,但可实现windows上用truetype字体显示和编辑蒙古文。<br>   不过蒙古文显现字符编码的制定目前有着很大的随意性。比如证联和明安图的蒙古文显现字符编码都是蒙科利的编码一样(实际上就是蒙科利制定的),但蒙科利对从前的编码进行了优化和修改,造成了三个公司的编码不统一、互相不兼容的局面。<br>   蒙古文显现字符编码:<br>蒙古文软件提供商<br>UNICODE编码<br>区域类型<br>方正<br>CJK统一汉字<br>自设区<br>智能</P>
<P>R保留区<br>证联<br>E234-&gt;E347<br>自设区<br>蒙科利<br>E235-&gt;E33E<br>自设区<br>明安图<br>E235-&gt;E33E<br>自设区<br>   </P>
<P>三、在Dos 或 Windows显示蒙古文文字技术介绍,<br>   (1)编码、字体及输入法<br>   由于Dos 或 Windows对UNICODE的支持不是特别好。目前情况下用ANSI编码处理蒙古文的方式是比较实用的方法。<br>   目前市面上蒙古文输入法有外挂输入法(如赛汗外挂输入法),IME输入法(如明安图、蒙科利的输入法),IME输入法与软件捆绑(如方正输入法)。<br>(2)显示与编辑环境<br>   蒙古文显现字符编码可以勉强显示蒙古文,蒙古文显现字符编码的基础上开发输入法即可显示和编辑蒙古文。蒙古文的特殊书写方式蒙古文的显示与编辑成了比较难的事情。<br>   开发Active控件可以正确显示和方便编辑蒙古文。如明安图的UNICODE编辑器。但Active控件的开发比较复杂而且必须为蒙古文信息处理设计一套能替代标准控件的控件组。当然蒙古文软件提供商们正在努力做着这一切。<br>   当然最理想的是蒙古文以OpenType字体实现蒙古文的处理。如果wendows的通用控件都支持OpenType字体的连字特征,ANSI编码支持ISO 10646蒙古文编码,那蒙古文信息处理会有一个质的飞跃。<br>   Dos 和Windows中蒙古文文字技术比较</P>
<P>操作系统<br>编码<br>字体<br>输入法<br>文字编辑环境<br>Dos 6.2以前版本<br>蒙古文国际编码出现以前<br>点阵字库<br>嵌入<br>专门的系统<br>Windows(95及以上版本)</P>
<P>True Type字体<br>外挂输入法<br>文字编辑环境</P>
<P><br>True Type字体<br>IME 输入法</P>
<P><br>蒙古文国际编码<br>True Type字体<br>外挂输入法</P>
<P>True Type字体<br>IME 输入法</P>
<P>OpenType字体<br>开发当中</P>
<P><br>参考文献<br>1.姚延栋,吴建,孙玉芳,胡斯勒,Linux 国际化框架下蒙古文变形显现机制与实现,首届全国少数民族青年自然语言处理学术研讨会论文集《中国少数民族多文种和信息处理研究与进展》2004,8<br>2.海鹰,巴图吉日格勒,阿拉腾达来,敖日格勒,蒙古文国际标准码在互联网上的应用,首届全国少数民族青年自然语言处理学术研讨会论文集《中国少数民族多文种和信息处理研究与进展》2004,8<br>3.确精扎布,蒙古文编码国际标准通过以后研制的几种蒙古文录入系统比较,第十届全国少数民族语言文字信息处理学术研讨会论文集,2005.7<br>4.乌达巴拉,奥其尔,巩政,蒙古文OpenType字体制作技术,第十届全国少数民族语言文字信息处理学术研讨会论文集,2005.7<br>5.孟和吉雅,奥其尔,巩政,蒙古文网页制作技术分析,第十届全国少数民族语言文字信息处理学术研讨会论文集,2005.7</P><br>
[此贴子已经被作者于2006-4-1 13:15:57编辑过]

您需要登录后才可以回帖 登录 | 注册

本版积分规则

Archiver|手机版|小黑屋|蒙古青年论坛

GMT+8, 2026-7-25 00:42 , Processed in 0.013158 second(s), 14 queries .

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表