用.net 朗读文本的方法

.Net Framework 3.0 中增加了一个命名空间:System.Speech 使用这个空间的类和方法,我们可以很方便的2行代码就可以让一段文本被读出来。

演示代码如下:

using System.Speech.Synthesis;

SpeechSynthesizer synth = new SpeechSynthesizer();

synth.Speak("Hello, world!你好么?");

但是需要注意的事情是:

WinXP 系统自带的底层Speech API  版本是:Microsoft Speech API 5.1

Vista 系统自带的底层Speech API 版本是:Microsoft Speech API 5.3

目前还没有看到可以在 WinXP 使用的 Microsoft Speech API 5.3。

而 Microsoft Speech API 5.1 只支持英文文本的读,而Microsoft Speech API 5.3 出了支持英文文本的读外,还支持中文文本的读。

Microsoft Speech API 5.3 并不会因为你装了 .Net FrameWork 3.0 或者 3.5  就会也把 Microsoft Speech API 5.3 装上去。

这样,我们在装了 .Net FrameWork 3.0 的 WinXP 电脑上运行上述两行代码,只要你的声卡设置正常,可以播放声音,你听到的Hello, world!这一句英文,听不到你好么这个中文。

同时上述代码并不会报任何错误以及抛异常。

如果你是在 Vista 电脑上运行上述代码,只要你的声卡设置正常,你则可以正常听到中文和英文。

posted @ 2008-10-23 11:16  Landy_di  阅读(319)  评论(0编辑  收藏  举报