日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程语言 > asp.net >内容正文

asp.net

.NET 将文本转换成语音 (转)

發布時間:2025/6/15 asp.net 25 豆豆
生活随笔 收集整理的這篇文章主要介紹了 .NET 将文本转换成语音 (转) 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

?

?

  用過金山詞霸的都知道金山詞霸里有個功能能夠將單詞按其讀音讀出來。也許會有人認為它是事先將所有的單詞的讀音文件存儲在數據庫里,然后事需要的時候再調用。其實事實上并不是這樣,我們有更好的解決辦法,MS就專門提供了這種技術。

?

  在計算機中將文本轉換成語音的技術叫做語音合成(TTS:Text To Speech)。要使用它的話就需要到MS官網上去下載地址為:http://www.microsoft.com/reader/developers/downloads/tts.mspx

  這個東西不是很大,到于原理還沒有去想過,因為現在只是幫想了解的朋友做個最基本的DEMO。

  下下來了后就安裝,注意:如果想實現漢字或非英語的閱讀就要去下載SpeechSDK51LangPack。

  下面來創建一個TTS程序,首先在VS中創建一個項目,然后添加引用"安裝目錄"Samples"Csharp"ListBox"中的Interop.SpeechLib.dll程序集,在程序里引用SpeechLib Namespace。

  創建SpVoiceClass類,(SpVoiceClass是我們這里要用到的主要的類),面在這里必要的屬性如下:

屬性名

類型

說明

Voice

SpObjectToken

大概是用于設置聲音的效果

AudioOutput

SpObjectToken

用于選擇聲卡

Rate

Int

頻率,說話的速度

Volume

Int

音量,最大為100

?

  根據SpVoiceClass類中幾個必要的屬性,我們可以做一個類似下圖的簡單界面

  具體的實現代碼如下:

?

Code
private void button1_Click(object sender, EventArgs e)
{
try
{
voic.Voice
= voic.GetVoices(null, null).Item(comboBox1.SelectedIndex);
voic.AudioOutput
= voic.GetAudioOutputs(null, null).Item(comboBox2.SelectedIndex);
voic.Rate
= trackBar1.Value;
voic.Volume
= trackBar2.Value;
voic.Speak(textBox1.Text, SpeechVoiceSpeakFlags.SVSFDefault);
}
catch
{
;
}
}

  注意:comboBox1.SelectedIndex不為3時只能讀英語;如果為3,要讀是是英文的話,它就會一個字母一個字母的讀出來,如果是漢字則會讀漢語(前提是裝了話音補丁)

?

  好了,簡單的Demo已經完成了,接著去探索吧……

?

?

注:引用

?

http://www.cnblogs.com/desmend/archive/2008/09/26/1299779.html

轉載于:https://www.cnblogs.com/lbg280/archive/2008/09/26/1299896.html

總結

以上是生活随笔為你收集整理的.NET 将文本转换成语音 (转)的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。