基于移动智能设备的汉语学习软件的研究与实现
2017-04-27热合曼·吾拉音吾守尔·斯拉木热依曼·
热合曼·吾拉音 吾守尔·斯拉木 热依曼·吐尔逊 努尔麦麦提·尤鲁瓦斯
摘要:为了有效地满足新疆地区少数民族对学习汉语的需求,针对基于移动智能设备的汉语教学软件进行了分析和研究。根据维吾尔语的特点,提出了自动选形算法的维吾尔文显示和输入处理技术,利用语音合成技术实现了汉语学习软件的正确发音和朗读功能。在存储及处理大量的相关文件时,利用了SDF Viewer工具来创建,查看,编辑或导出数据。该软件为新疆地区少数民族提供了随时随地都能够方便的学习汉语的环境,弥补了少数民族在Windows Phone平台上没有汉语学习软件的空缺。
关键词:汉语学习;维吾尔语;移动智能设备;语音合成
中图分类号:TP18 文献标识码:A 文章编号:1009-3044(2016)29-0183-04
1背景
随着信息技术的迅速发展和各族人们交流的进一步加深,学习汉语已成为少数民族人们的重要任务。不管是在学习还是生活方面,都需要加强汉语能力。各个少数民族只要学好汉语才能可以跟汉族同志们进行正常的交流,因而可以避免不懂语言所带来的误解,可以实现和谐发展。因此给少数民族提供方便的学习汉语环境是发展少数民族地区的重要策略。维吾尔族作为新疆地区人口最多的少数民族,对学习汉语的需求日益增多,但是维吾尔语是属于阿勒泰语系突厥语族葛逻禄语支,跟汉语和其他语言之间的差别比较大,维吾尔语的书写格式从右到左,词与词之间用空格分隔,词是不等长的,这些特点给维吾尔语信息处理带来一定的困难,尤其是在移动智能设备上处理维吾尔语是比较困难的。最近几年随着国家对少数民族语言文字发展的大力支持,维吾尔语信息处理技术也得到了快速的发展。在个人电脑上已经实现了维吾尔语信息处理,但是在移动智能设备上,尤其是在Windows Phone平台上处理维吾尔语还需要进一步研究。本文研究与实现基于移动智能设备的汉语学习软件,用自动选形算法处理维吾尔文的显示和输入,用语音合成技术实现灵活而方便的学习环境。由于该软件基于Windows Phone上实现的,用户可以随时随地学习汉语,考虑到边远地区网络信号不是很好,该软件是不需要联网的。突厥语族中哈萨克语,柯尔克孜语,塔吉克语等语言跟维吾尔语的相似性比较高,本文研究的技术对这些语言的信息处理有很高的参考价值。本文的结构如下:第二节主要介绍开发环境的搭建和配置,第三节主要介绍软件的总体架构,第四节主要介绍各个功能模块的实现关键技术,第五节是本文的总结部分。
2系统研发
2.1平台的选择
Windows Phone(下面简称WP)操作系统是微软公司在建立于Microsoft Win32 API基础上研发出的一款移动智能设备操作系统。到目前为止系统版本更新到了WP10版本。经历几代版本更新之后WP依然成为微软的唯一独特的移动智能设备操作系统。其独特的Metro风格更是受到广大用户的青睐。本文针对移动智能设备操作系统进行了一系列分析和研究,最后决定利用WP这个平台,之所以选择要使用WP这个平台是因为主要有如下两种原因,一是WP作为三大移动平台之一,以其独特的性能和很好的兼容性,受到了广大用户的青睐,用户的数量在不断的增多,因为价格比较合适,在新疆使用WP的用户也比较多,在此平台上开发软件具有一定的实用价值。第二个原因是在WP平台上维吾尔语的软件比较少,这方面的研究也不是很多,本文研究可以填补此方面的空缺,进一步提高维吾尔语基于移动设备上信息处理技术的发展。
2.1平台搭建以及配置
开发WP需要两个工具:Windows Phone SDK和MicrosoftVisual Studio集成开发工具。Microsoft Visual Studio Ultimate2012是收费软件,而且里面不包括Windows Phone SDK,需要另行安装。如果广大开发者没有授权,也可以使用Microsoft Visu-al Studio Express 2012 for Windows Phone(简称MVS2012)。MVS2012开发工具中包含了Windows Phone SDK8.0。如果开发者需要其他版本的SDK的话根据自己的需求和开发对象,从微软官方网站中进行下载。MVS2012的安装过程除了安装Windows Phone SDK 8.0,还会安装测试WP模拟器(或称为仿真器),Windows Phone Developer Registration和Application De-ployment等工具。所以它是开发WP的最好工具。因此,本设计选用MVS2012工具作為应用程序开发工具。此外,.NETCompact Framework2.0运行库相比前版本来说,在界面设计、数据库访问以及安全性等方面做了突出的改进。本文选择.NETCompact Framework 2.0作为开发框架。开发语言方面,本文通过XAML语言与C#的结合开发WP应用程序前端。在MVS2012开发环境中,XAML界面设计拥有丰富的控件支持和可视化的工作界面。代码的逻辑部分用C#语言实现,而UI界面部分用XAML设计,这样开发变得快速而高效。
3系统功能划分
本系统是一个基于移动智能设备的汉语学习系统,在进行系统设计时,按照维吾尔语和汉语的特点,结合维汉词典的结构,使用模块化的设计思想,设计出具有简单而优美界面的方便,高效的学习平台。通过调研分析,确定了少数民族对汉语学习软件的基本需求,从而确定了汉语学习软件中需要实现的功能和总目标。本文研究软件的最重要特点就是简单,由于使用该软件的用户的文化水平不是很高,对电子产品也不是很理解,因此太复杂的软件,他们是没办法有效的利用。为了提高该软件的实用价值,本文设计的理念是尽可能降低用户的操作难度。根据学习语言的基本步骤和特点使该软件分为课程学习,综合学习和高级学习三部分,学习的难度会越来越提升但不是很高级,课程的设置是深入浅出的,从而提高学习者的学习效率。每一部分又可以进一步细分,软件的功能划分如图1所示,主界面如图2所示。
课程学习这个模块是由字母学习,词汇学习和句子学习构成的。字母学习是初步学习的汉语字母表组成,它里面有每一个字的按拼音写法,按拼音读法和按汉字写法。词汇学习功能是由简单,日常生活中常用的词和词汇组成的。句子学习是生活中使用的常用句子和句型组成的。词汇学习和句子学习也基本上相同的功能,不一样的功能是有给用户提供每个词汇和句子翻译成维吾尔语,为用户提供对比学习的环境。
综合学习模块主要包括语法要点,课文学习和课程练习。语法要点就是汉语语法基础知识。里有汉语里的常用词,根据它们的词汇意义和语法特点进行分类。现代汉语教学系统把词分为十二类。还有语素和语素分类,短语和短语的类型等等的说明。课文学习里有个较短的课文和它的维吾尔语翻译,语音合成出来的正确男女发音。课程练习里有选择题,填空题,连成句子题等等。有返回,保存,修改和清空功能。用户使用課程联系模块是可以根据已学习的知识来练习因而提高水平。
高级学习模块主要包括造句,维汉互翻和写作文。造句就是用给定的词或词组来造成句子。有返回,保存,清空和修改功能。维汉互翻里面有很多维吾尔文句子和汉文句子,每个句子下面设定了适当的空白处,用户按给定句子的意思来翻译成另一种语言并填写对应句子下面的空白处。有返回,修改,保存和清空功能。写作文是根据给定的题目要求写出作文,软件的写作文功能里面预存了很多各种要求的写作题。有返回,修改,保存和清空功能。这个模块是为了用户测试自己的学习能力而设计的。但要求并不高,因为这个软件使用对象是维吾尔文农民为主而设计的。
除此之外,系统里面还加入了很好的词典模块。词典模块是由维汉词典和汉维词典组成的。维汉词典就是把用户输入的维吾尔与单词翻译成汉语。汉维词典就是把用户输入的汉语单词翻译成维吾尔语。用户可以根据自己的需要进行查词典。词典模块已包含了我们在日常生活中常用的词汇的读法,写法和它的翻译。
4软件功能实现
4.1关键功能的实现
设计软件的界面时,用XAML语言来设计页面控件和显示模块。通过读取设计好的数据库文件加载到DataContext里面的自定义对象中,每个模块的自定义对象不一样。此自定义对象已绑定到各自的数据列表ListBoxDataTemplate中。每行内容选中的时候被选的内容从数据库里面查找其详细解释加载到新布局页面。因为,词汇学习,句子学习和课文学习模块中有汉文和维吾尔文混合显示,这给WP屏幕中每个汉字和所对应的维文对齐显示带来一定的麻烦。通过.NET框架中Control基类提供的界面控件RightToLeft属性来派生出来的。在.NET框架中Control基类提供了界面控件的RightToLeft属性。RightToLeft属性:获取或设置一个值,该值指示是否将控件的元素对齐以支持使用从右向左的字体的区域设置。RightToLeft属性用于语言是从右向左书写的国际应用程序。当将该属性设置为RightToLeft Yes时,包括文字的控件元素从右向左显示。RightToLeft属性接受RightToLeft枚举,包括以下成员:
1)No是文本从左至右读取。默认选项。
2)Yes是文本从右到左读取。
3)Inherit是文本的读取方向从父控件继承。
一般情况下,如果设置了窗体的RightToLeft属性,窗体的控件会继承这个属性。但还是可以为大部分控件单独设置RightToLeft属性。
其次,每个模块里的汉语发音和朗读功能是由MVS2012工具自带的语音合成tSlSpeech svnthesizer类来实现的。引用Speech svnthesizer类时将使用默认系统语音。若要配置Speech Synthesizer以使用其中已安装的语音合成(文本到语音),可以使用SelectVoice或SelectVoiceByHints方法。语音获取安装,可以使用GetInstalledVoices和Voicehffo类方法的信息。
在存储和读取相关的数据文件时,用了SDF Viewer工具来处理。由于SDF Viewer是一个全面和方便的工具,可以最简单的方法来创建,查看,编辑或导出您的Windows Mobile PocketPC设备SQLCE数据库中的数据。SQLCE数据库上运行SQL命令,并可以立即查看结果,因而在WP平台下具有更优越的条件。微软的SQL Server Compact(SQLCE)是微软在移动设备和台式机上运行的应用程序产生一个小型关系数据库。根据对该软件进行的需求分析,确定了系统的数据需求,并进行设计软件的数据库。
4.2维吾尔与的输入和显示处理
在处理及显示维文时,由于WP10以前版本的移动设备不支持从右向左的文字输入和标准显示维吾尔文。这个是本论文主要研究的难题。维吾尔语的书写规则与其他语言的书写规则不一样,比如,汉语和英语的书写方向是从左到右,而维吾尔语的书写方向是从右到左;维吾尔语的词是词干和词缀组成的,这点类似于英语,但是跟英语的不同点是维吾尔语中字母的变化比较多,在词中不同位置的出现形式是不一样的,有些字母在单词中的出现形式有四种,而且且字母的宽度是不一样的,这造成字母的不等宽,给维吾尔语的显示带了一定的困难,因此在处理维吾尔语信息时需要使用特殊的方法。在文字输入时的形式是字母在文字中实际的位置来决定的。因此,输入及正常显示的时候需要进行前后判断。完成了文字的前后连续性判断以后,我们再可以将文字的顺序进行反序调整就完成了正常显示文字过程。
维吾尔文在WP设备中利用自动选形算法规则和字母序列转换函数来实现正常显示和输入处理,如图3所示,设i为当前需要选形的字母,i-1为当前字母的前字符,i+l为当前字母的后字符,赋值i-1、i、i+1为0或l,当i-1、i、i+l的值不同时,i字符的形状也不同。主要实现代码:
4.3维吾尔文自动选形规则
如上几节叙述,维吾尔语跟其他语言有以下几个方面的区别和独特性。第一,与上下文内容相关的显现形式。维吾尔文字符在单词的不同位置具有不同的显现形式,一般可分为四种显现形式:独立形、词首形、词中形、词尾形。第二,双向性质。维吾尔文书写的方向既有从右到左,也有从左到右的形式。一般,维吾尔文字符都是从右到左方向写,与维吾尔文字混合来的数字和特殊符号及特殊的英文字母是从左到右方向写。第三,连接字符形式。维吾尔文字有时候用一个字形来显示出几个字形。所以维吾尔文是一个属于复杂的文本(Com-D1ex Text Layout)。在写维吾尔文的时候一个字符选形取决于此字符两边的字符的字形。因此,在正常显示维吾尔文的时候需要不断地替换一个字符的各种形状。此过程就称为自动选形。本文经过大量的分析,总结出了维吾尔文字母选形算法规则如表1所示。自动选形规则接收到某一维吾尔文字符时,根据当前字母的形状对该字母进行选形,按照字符在单词中的位置选择维吾尔文字符对应的首、中、尾和独立形状等不同形状的内码,从而得到正确的前后字母字形的相连。
5结束语
本文研究了汉语学习软件在WP平台上的实现。通过分析维吾尔文的语言特征,采用自动选形算法规则来实现在WP平台上维吾尔文的输入和正常显示等处理技术。这个方法可以直接应用到其他少数民族语言处理或其他复杂文本处理。另外,本文利用语音合成技术来实现此学习平台的朗读和发音功能,从而更好的展现了该汉语学习软件的功能优势。本文设计的软件已发布,并且使用的用户数目也比较多,用户反映该软件为他们学习汉语提供了很多便利,提高了他们的学习效率,降低了学习汉语的成本。为了提高该软件的性能,可以增加联网的功能,学习者可以联网及时获取最新的知识,创建一个论坛,在此论坛上学习者可以互相学习,这样可以提高软件的交互性能,给学习者带来更好的学习环境。