基于Delphi的英文发音教学软件的实现

基于Delphi的英文发音教学软件的实现,第1张

基于Delphi的英文发音教学软件的实现,第2张

介绍

MSTTS是微软公司开发的一套功能强大的英语文本阅读引擎。它可以将文档中的英文文本信息转换成计算机语音信息,然后通过计算机声卡发音读出内容。利用它和相关的语音接口开发英语发音教学软件,可以实现英语单词的发音,演示整个英语段落的流畅朗读。因此,学生可以在课后或没有老师的情况下,从软件中获得标准的英语发音辅助,这对一些发音不好的英语学习者有很大的帮助。

MSTTS发动机简介

要在软件开发过程中使用MSTTS技术,必须安装MSTTS引擎。MSTTS引擎的安装包可以从微软官网下载,也可以在金山词霸软件的安装盘中找到。运行安装包后,MSTTS引擎将被安装在系统中。同时,卸载项“Microsoft Text-to-speech Engine”会出现在操作系统控制面板的添加/删除程序中。安装MSTTS引擎后,可以使用Borland Delphi平台,利用MSTTS技术开发相应的英语教学软件,实现英语阅读等功能。

设计原理

1.软件设计原理

Delphi平台下软件的设计原理是通过调用微软语音API实现英文字符的朗读功能。MS Speech API的安装方法和MSTTS引擎一样,也可以在微软官网或者金山词霸的安装盘里找到。运行spchapi.exe后,Windows目录下会生成一个Speech子目录,其中有一个Vtxtauto.tlb文件,它是对应的类型库,给出了与语言无关的服务器的接口描述。作为VCmd.exe进程之外的自动服务器,它提供将文本转换成语音的服务。

软件的功能分为三个模块:语音显示模块、语音控制模块和编辑模块。在语音显示模块中,会动态显示朗读对象,即语音自动化服务器的处理对象;在语音操作模块中,提供了一系列的语音操作,即语音业务的动态个性化处理;编辑模块是对文本内容的个性化设置,以满足特殊用户的需求。软件的原理如图1所示。

2.VtxtAuto接口描述

Delphi中使用的MSTTS引擎的类型库名为VtxtAuto。通过分析,我们可以知道VtxtAuto的相关成员函数和属性。

2.1扬声器功能

过程Speak(const PSZ buffer:WideString;dwFlags:整数);安全呼叫;

朗读功能用于实现朗读的功能。它有两个参数。第一个参数将要朗读的文本传递给MSTTS引擎,第二个参数是两个符号的组合,指定朗读时使用的音调和优先级。

2.2寄存器功能

过程寄存器(const PSZ site:wide string;const PS zapp:WideString);安全呼叫;

Register函数用于注册接口。在软件初始化期间,寄存器操作是必要的,因为在操作系统中可能有许多类似的程序使用MSTTS引擎。通过注册操作,可以设置和区分使用MSTTS引擎的每个软件。

2.3是说话的属性

属性is speaking:word bool read Get _ is speaking;

IsSpeaking属性是一个布尔函数,通过它可以获得当前程序的状态。

2.4朗读操作成员功能

VtxtAuto对象有一系列成员函数,通过这些函数可以实现读取函数的各种操作和控制。具体功能如表1所示。

表vtxtauto对象的成员函数


功能命令表单

功能描述

VTAuto。音频恢复

用于恢复阅读状态

vtautoto . stop speaking

用于停止朗读

vtxt auto . audio pause

用于暂停朗读

VTXT自动。音频快进

用于向前跳过一个句子并大声朗读

VTXT自动。AudioRewind

用于跳过向后阅读的句子

此外,还有一个属性Speed,可以用来获取或设置语速。其单位为“字数/分钟”,默认值为170。

软件功能的实现

1.导入VtxtAuto类型库

首先,在Borland Delphi平台上,创建一个新的应用程序,然后选择“添加...”从“导入类型库...”在项目菜单中,浏览到Windows目录下的Speech子目录,打开vtxtauto.tlb可以看到我们需要的接口的包装类的文件“TVTxtAuto”会出现在下面的类名中。选择对话框底部的Generate Component Wrapper,然后单击Create Unit打开一个名为VTxtAuto_TLB的单元。

2.程序界面设计。

在Form1上添加以下控件:1个Memo文本控件、1个TrackBar滚动条控件和8个button控件。合理安排这些控件,软件主界面如图2所示。然后,设置每个控件的属性。

文本控件用于显示和编辑阅读内容;滚动条控件用于动态设置语速,其MAX属性设置为300;第一个按钮的Caption属性设置为“朗读”,其作用是在用户点击按钮时朗读;第二个按钮控件的Caption属性设置为“停止”,其作用是在软件处于朗读状态时停止朗读;第三个按钮控件的Caption属性设置为Pause,其作用是在软件处于阅读状态时暂停阅读;第四个按钮控件的Caption属性设置为“恢复”,其作用是在软件暂停时恢复朗读;第五个按钮控件的Caption属性设置为“前进”,其作用是在软件处于阅读状态时快速跳转到下一句话;第六个按钮控件的Caption属性设置为“后退”,其作用是在软件处于阅读状态时快速回到上一句话;第七个按钮控件的Caption属性设置为“Import”,其作用是将新的阅读内容导入到文本控件中;第八个按钮控件的Caption属性设置为Export,其作用是保存编辑好的阅读内容。

位律师回复
DABAN RP主题是一个优秀的主题,极致后台体验,无插件,集成会员系统
白度搜_经验知识百科全书 » 基于Delphi的英文发音教学软件的实现

0条评论

发表评论

提供最优质的资源集合

立即查看 了解详情