C# 利用 TTS 来朗读文本的实现方式:

来源:互联网 发布:ai如何画矩阵圆点 编辑:程序博客网 时间:2024/05/17 17:18

C# 利用 TTS 来朗读文本的实现方式:

.NET 3.0开始,.NET Framework里,提供了托管的Speech API 调用方法,这样,就非常流畅了。而不必拘泥于繁琐的非托管COM调用了。

.Net 3.0 的实现代码:
using System.Speech.Synthesis;SpeechSynthesizer synth = new SpeechSynthesizer();synth.Speak("Hello, world! 你好么?");synth.Dispose();

非常easy吧

从.NET 4.0开始,增加了一个 dynamic 动态绑定的功能,使得C#可以像VB.NET那样,使用后期绑定的方式,使用COM对象了,从而使得直接COM调用,也非常的简单了。

.Net 4.0 的实现方式:
Type type = Type.GetTypeFromProgID("SAPI.SpVoice");dynamic spVoice = Activator.CreateInstance(type);spVoice.Speak("你好,欢迎使用 CSharp 4.0!");

说明: 如果是XP系统,并且没有安装 TTS 5.1 语言包的话,上面的朗读,会忽略所有的中文的。

我这里,也把 TTS5.1的下载地址,一并发布出来:

SDK 5.1 下载, 这里

SDK 5.1 语言包,这里

SDK 5.1 语音文件,这里