在我们的程序中让电脑说英语

发表于:2007-07-01来源:作者:点击数: 标签:
随着计算机多媒体技术的发展,让电脑唱歌说话已经不是什么新鲜事了。但是能不能在我们自己编写的软件中让电脑朗读文本信息呢?微软公司 开发 的一套文字朗读引擎(Text-To-Speech Engine,简称 TTS)使我们这一功能的实现变得易如反掌。只要您安装了“金山词霸

       随着计算机多媒体技术的发展,让电脑唱歌说话已经不是什么新鲜事了。但是能不能在我们自己编写的软件中让电脑朗读文本信息呢?微软公司开发的一套文字朗读引擎(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
    美中不足的是微软的这套文字朗读引擎只能让电脑朗读英文。相信大家和我一样,盼望着国产的、技术成熟的汉语朗读软件的出现。

                                             张庆  
                                                   
                                                            2003.1.24


原文转自:http://www.ltesting.net