用C#实现语音技术(实例)

P_802ER 2005-05-08 07:23:44
觉得文章还不错,是从:http://www.weblogic.com.cn 转来的

“电脑朗读”(英文)一个很好的触发点,通过它可以实现电子小说阅读、英文听力测试、英文单词学习...
下面的Speech已对MSTTS作了简单封装。
1.安装好MSTTS(如果你有装金山词霸,系统就已经安装了),可以在winnt\speech中打到vtxtauto.tlb文件;
2.用.Net SDK自带的tlbimp工具把vtxtauto.tlb转换成.dll格式:
tlbimp vtxtauto.tlb /silent /namespace:mstts /out:mstts.dll
这时的mstts.dll已成为.net framework运行库的一个类。
3.编写一个封装vtxtauto的简单类:Speech .
//========================Speech.cs======================
using System;
using mstts; //MSTTS名称空间
namespace Bedlang{ //定义名称空间
public class Speech{
private VTxtAuto VTxtAutoEx;
public Speech(){
VTxtAutoEx = new VTxtAuto();
VTxtAutoEx.Register(" "," "); //注册COM组件
}
public void Speak(String text){
VTxtAutoEx.Speak(text, 0); //发音
}
}
}
//========================Speech.cs======================
4.编译Bedlang.Speech
csc /target:library /out:Bedlang.dll speech.cs /r:mstts.dll
 如果用vs.net开发,可直接生成项目就可以了。
5.发音实现
//========================demo.cs======================
分别加入Label,TextBox,Button控件各一个到windows Form中,修改它们的属性,源代码如下:
using System;
using System.Drawing;
using System.Collections;
using System.ComponentModel;
using System.Windows.Forms;
using System.Data;
namespace Bedlang
{
///
/// Form1 的摘要说明。
///
public class demo : System.Windows.Forms.Form
{
private System.Windows.Forms.Label label1;
private System.Windows.Forms.TextBox textBox1;
private System.Windows.Forms.Button button1;
///
/// 必需的设计器变量。
///
private System.ComponentModel.Container components = null;
public demo()
{
//
// Windows 窗体设计器支持所必需的
//
InitializeComponent();
//
// TODO: 在 InitializeComponent 调用后添加任何构造函数代码
//
}
///




【回贴】 [原创] 续:用C#实现语音技术 作者:小猪哥 查看:0 回复:0

[第 2 楼] 发表于4/13/2005 16:54:33

/// 清理所有正在使用的资源。
///

……太多!未完待续……,也可直接去看
...全文
210 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
dl_guoxin 2005-05-08
  • 打赏
  • 举报
回复
共享代码,向你学习
koenemy 2005-05-08
  • 打赏
  • 举报
回复
回复人: qhdok(Dreamer) ( ) 信誉:92


把你的代码拉出来看看
里沃特 2005-05-08
  • 打赏
  • 举报
回复
尽快贴完哦,吊起胃口了
代码廉颇 2005-05-08
  • 打赏
  • 举报
回复
哪有这么复杂,用讲述人,不到过十几条语句就搞定
xzhy80 2005-05-08
  • 打赏
  • 举报
回复
en

110,536

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧