System.Speech.Synthesis 命名空間
重要
部分資訊涉及發行前產品,在發行之前可能會有大幅修改。 Microsoft 對此處提供的資訊,不做任何明確或隱含的瑕疵擔保。
包含用於初始化和設定語音合成引擎的類別、用於建立提示、用於產生語音、回應事件,以及修改語音特性。
類別
BookmarkReachedEventArgs |
從 BookmarkReached 事件傳回資料。 |
FilePrompt |
表示從檔案建立的提示。 |
InstalledVoice |
包含安裝在 Windows 中語音合成聲音的相關資訊。 |
PhonemeReachedEventArgs |
從 PhonemeReached 事件傳回資料。 |
Prompt |
代表可以藉由 SpeechSynthesizer 轉譯之項目 (文字或音訊檔案) 的相關資訊。 |
PromptBuilder |
建立空的 Prompt 物件,並提供方法來加入內容、選取語音、控制語音屬性,以及控制口語發音。 |
PromptEventArgs |
表示 System.Speech.Synthesis 命名空間中 |
PromptStyle |
定義說話提示的樣式,其包含強調、速率及音量的設定。 |
SpeakCompletedEventArgs |
從 SpeakCompleted 事件傳回通知。 |
SpeakProgressEventArgs |
從 SpeakProgress 事件傳回資料。 |
SpeakStartedEventArgs |
從 SpeakStarted 事件傳回通知。 |
SpeechSynthesizer |
提供安裝的語音合成引擎功能的存取權。 |
StateChangedEventArgs |
從 StateChanged 事件傳回資料。 |
VisemeReachedEventArgs |
從 VisemeReached 事件傳回資料。 |
VoiceChangeEventArgs |
從 VoiceChange 事件傳回資料。 |
VoiceInfo |
表示已安裝的語音合成引擎。 |
列舉
PromptBreak |
字組界限之間韻律分隔 (分隔) 間隔的列舉值。 |
PromptEmphasis |
列舉提示中的強調等級值。 |
PromptRate |
列舉提示的讀出速率。 |
PromptVolume |
列舉提示中的音量 (聲音大小) 值。 |
SayAs |
列舉適用於讀出如時間、日期和貨幣等項目的內容類型。 |
SynthesisMediaType |
列舉媒體檔案的類型。 |
SynthesisTextFormat |
列舉可用來建構 Prompt 物件的文字格式類型。 |
SynthesizerEmphasis |
列舉合成器強調的等級。 |
SynthesizerState |
SpeechSynthesizer 之狀態的列舉值。 |
VoiceAge |
定義合成語音的年齡的值。 |
VoiceGender |
定義合成語音的性別的值。 |
備註
初始化和設定
類別 SpeechSynthesizer 可讓您存取安裝在主機電腦上的語音合成引擎功能。 已安裝的語音合成引擎是以語音表示,例如 Microsoft Anna。 SpeechSynthesizer實例會初始化為預設語音。 若要設定 SpeechSynthesizer 實例以使用另一個已安裝的語音,請呼叫 SelectVoice 或 SelectVoiceByHints 方法。 若要取得已安裝哪些語音的相關資訊,請使用 GetInstalledVoices 方法。
您可以使用名稱開頭為 「 SetOutputTo
」 的類別中的 SpeechSynthesizer 其中一種方法,將 的輸出 SpeechSynthesizer 路由傳送至資料流程、檔案、預設音訊裝置或 Null 裝置。
建立提示
使用類別的 PromptBuilder 其中一個方法,其名稱開頭為 「 Append
」 來建置文字提示的內容、語音合成標記語言 (SSML) 、包含文字或 SSML 標記的檔案,或預先錄製的音訊檔案。
如需詳細資訊和範例,請參閱系統語音程式設計指南中的建構複雜提示.NET Framework。
產生語音
若要從字串或 Prompt 或 PromptBuilder 物件產生語音,請使用 Speak 或 SpeakAsync 方法。 若要從 SSML 標記產生語音,請使用 SpeakSsml 或 SpeakSsmlAsync 方法。 如需 SSML 標記指南,請參閱 語音合成標記語言參考 。
您可以使用 或 AppendTextWithPronunciation 方法來引導單字 AppendTextWithHint 發音,以及使用 AddLexicon 和 RemoveLexicon 方法新增 SpeechSynthesizer 或移除 實例的語彙。
回應事件
類別 SpeechSynthesizer 包含事件,通知語音應用程式在 SpeechSynthesizer 提示中遇到特定功能的事件,如 、 BookmarkReachedEventArgsPhonemeReachedEventArgs 和 類別 VisemeReachedEventArgs 所 SpeakProgressEventArgs 報告。
若要取得 的提示開頭和結尾 SpeechSynthesizer 的相關資訊,請使用 SpeakStartedEventArgs 和 SpeakCompletedEventArgs 類別。
如需詳細資訊和範例,請參閱使用系統語音程式設計指南中的語音合成事件.NET Framework。
修改語音特性
類別 PromptStyle 和 和 StartStyleAppendText 方法可讓您使用 Emphasis 、 Rate 和 Volume 參數來修改語音的特性 SpeechSynthesizer 。 若要修改語音的特性,例如文化特性、年齡和性別,請使用 類別的 PromptBuilder 其中一種方法 StartVoice 或 SelectVoiceByHints 類別的方法 SpeechSynthesizer 。
如需詳細資訊,請參閱系統語音程式設計指南中的控制語音屬性.NET Framework。
另請參閱
意見反應
https://aka.ms/ContentUserFeedback。
即將登場:在 2024 年,我們將逐步淘汰 GitHub 問題作為內容的意見反應機制,並將它取代為新的意見反應系統。 如需詳細資訊,請參閱:提交並檢視相關的意見反應