c# 之TTS发音程序

c#的功能十分强大,也非常方便。

这里,我和大家分享下发音程序的制作。

首先,你要准备两样东西:

1.TTS发音类库:DotNetSpeech.dll

2.TTS发音引擎:微软TTS5.1语音引擎(中文).msi

 

这里附录下载地址:

TTS发音引擎(微软TTS5.1语音引擎(中文).msi):

http://download.csdn.net/source/2127563

TTS发音类库(DotNetSpeech.dll):

 http://download.csdn.net/source/2143262

该实例下载地址:

http://download.csdn.net/source/2143262

 

下载完DotNetSpeech.dll后,要手动添加到vs中。步骤如下:

把鼠标移到右上边的解决方案----》右击解决方案----》选择“添加引用”-----》会弹出一个窗口----》选择“游览”项

----》找到你下载的“DotNetSpeech.dll”,就可以了

接着是在程序中添加它的命名空间,如下:

using DotNetSpeech;     //发音类库

 

下面,给出个源代码和注释(是一个WinFor窗体程序):

首先,添加一个textBox命名为“textbox1”和一个Button命名为“button1”以及一个backgroundWorker控件命名为“backgroundWorker1”;

 /// <summary> ///发音线程,来管理发音;如果,多处发音,可以创建多个; ///backgroundWorker的dowork事件,双击backgroundWorker1, 即可自动生成 /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void backgroundWorker1_DoWork(object sender, DoWorkEventArgs e) { SpeechVoiceSpeakFlags spFlags = SpeechVoiceSpeakFlags.SVSFlagsAsync; SpVoice voice = new SpVoice(); voice.Rate = 0;//调整发音语速,可以为负数,如-3,0,5 voice.Speak(e.Argument.ToString(), spFlags); } /// <summary> /// 发音 /// </summary> /// <param name="content"></param> void read(object content) { try { backgroundWorker1.RunWorkerAsync(content); } catch (Exception er) { MessageBox.Show(er.Message, "提示", MessageBoxButtons.OK, MessageBoxIcon.Error); } } /// <summary> /// 点击按钮发音 /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void button1_Click(object sender, EventArgs e) { read(textbox1.Text); }   

如果你的程序,运行时,只能对英文或数字发音,而发不出中文。

说明你的电脑需要安装"微软TTS5.1语音引擎(中文).msi".下载地址如上。

安装完成后,点击控制面板----》选择“语音”-----》在“语言(L)”下面的下拉框里选择中文发音或有Chinese字样的选项

 

 

希望,对大家有帮助。

 

 

 

你可能感兴趣的:(object,C#,button,tts,引擎,textbox)