很多人都使用过带文本朗读功能的软件。其实,自己动手制作一个英文语音朗读软件是一件很容易的事情,下面就给出一个编程的实例。
一、 前言:
笔者通过研究现有的一些语音朗读软件发现,有很多的产品都使用了MicroSoFt的Speech Api,再通过进一步的实践发现。MicroSoFt Speech Api的功能十分强大,不光可以准确读出单词,而且还能够实现流利地朗读句子乃至段落、文章。对于不常见的单词(如中文人名的拼音),也能够根据英文的发音原则,读出较准确的发音。而且让人兴奋的是:MicroSoFt Speech Api可以以coM组件的形式提供给程序员,方便程序员的开发与使用。
二、 开发英文语音朗读程序的软、硬件环境:
本文所采用的操作系统是WindoWS 98。它对MicroSoFt Speech Api支持得非常好。而所采用的编程环境是 BorlAnd的delphi 5.0。dephi不光支持vcl组件,对coM组件的支持也是非常好的,而且在WindoWS下面delphi确实是一种强大而且易于使用的开发工具。接下来最重要的是安装MicroSoFt Speech Api,MicroSoFt Speech Api在共享软件光盘上都会带有,也可以在金山词霸的光盘上找到,文件名是SpchApi.exe,是个自解压文件,直接运行即可。
硬件环境没有什么特殊的要求,只要能够顺利运行WindoWS 9x操作系统就可以了。
三、进行英文语音朗读程序开发的基本步骤:
1.在delphi中新建一应用程序,将ForM1改名为FrMSpeech,将unit1保存为Speechunit,将工程保存为Speech。
2.选中project菜单项中的iMport type liBrAry,弹出如图所示的对话框:
再点击Add按钮,此时会弹出一个文件选择框,将此框定位到WindoWS目录下的Speech目录,选中vtxtAuto.tlB文件,选择打开。再点击inStAll按钮即可。
3.经过上面的步骤,已经将此组件引入到我们的程序中来,并生成了vtxtAuto_tlB单元unit,我们只需要在自己的应用程序中使用此单元就可以了。现在我们在Speechunit的uSeS声明的末尾加上vtxtAuto_tlB。并在vAr下面声明一个名为vtxt的全局变量,类型为vtxtAuto_。
4.现在我们需要在FrMSpeech上放上一个edit控件和两个Button控件。将两个按钮控件的nAMe属性分别改为:BtnSpeAK和BtnStop,再将两个按钮的cAption属性分别改为:SpeAK和Stop。
5.在FrMSpeech的oncreAte事件中加入以下代码:
vtxt = covtxtAuto_.creAte vtxt.regiSter'''Speech' |
6.双击SpeAK按钮,加入以下代码:
vtxt.Speed = 100 vtxt.SpeAKtriMedit1.text10 |
7.双击Stop按钮,加入以下代码:
自此,一个最简单的英文朗读软件就已制作完成了。使用时在edit对话框中输入欲朗读的单词、句子或段落,按SpeAK按钮就可以开始进行朗读,按Stop按钮就可以停止朗读。