如何在我们的程序中电脑说英语?

如何在我们的程序中电脑说英语?

随着计算机多媒体技术的发展,让电脑唱歌说话已经不是什么新鲜事了。但是能不能在我们自己编写的软件中让电脑朗读文本信息呢?微软公司开发的一套文字朗读引擎(Text-To-Speech Engine,简称 TTS)使我们这一功能的实现变得易如反掌。只要您安装了“金山词霸2000”(或“金山词霸.net”),那么在 Windows 文件夹下会生成一个 Speech 文件夹,里面的 VTXTAUTO.TLB 文件就包含了有关的类型库和函数,我们完全可以在我们的程序中调用它们,使电脑开口说话。TTS 包含在“金山词霸”的安装盘上,文件名为 mstts.exe 和 spchapi.exe。要在 VB 程序中调用 TTS,必须首先引用 VTXTAUTO.TLB 文件中的“VoiceText 1.0 Type Library”类型库,方法是执行“工程/引用”,再点击“浏览”按钮,找到文件 /Windows/Speech/VTXTAUTO.TLB,将它添加到应用列表中,然后选中它,按“确定”按钮。这时可以按 F2 键打开“对象浏览器”查看 Vtxtauto 对象的有关参数。
然后键入以下代码,执行它,电脑就可以说话了:
Option Explicit
Private Sub Form_Load()
Call VTxtAuto.VTxtAuto.Register(Space(1), Space(1)) '注册
VTxtAuto.VTxtAuto.Speed = 170 '设置语速(170 为正常语速,值越小语速越慢)
Dim strTxt
strTxt = "I'm a chinese. I love my motherland very much."
On Error GoTo ErrorHand
Call VTxtAuto.VTxtAuto.Speak(strTxt, vtxtsp_VERYHIGH + vtxtst_READING)
MsgBox "OK!"
End
ErrorHand:
'错误处理语句
End
End Sub
美中不足的是微软的这套文字朗读引擎只能让电脑朗读英文。相信大家和我一样,盼望着国产的、技术成熟的汉语朗读软件的出现。

张庆 zhangking@263.net
http://www.why100000.com
2003.1.24