共用方式為


SpeechSynthesizer.AllVoices 屬性

定義

取得所有已安裝語音合成引擎的集合, (語音) 。

public:
 static property IVectorView<VoiceInformation ^> ^ AllVoices { IVectorView<VoiceInformation ^> ^ get(); };
static IVectorView<VoiceInformation> AllVoices();
public static IReadOnlyList<VoiceInformation> AllVoices { get; }
var iVectorView = SpeechSynthesizer.allVoices;
Public Shared ReadOnly Property AllVoices As IReadOnlyList(Of VoiceInformation)

屬性值

VoiceInformation物件的集合。

範例

在這裡,我們會示範如何使用找到第一個女性語音 (VoiceGender) ,或只選取預設系統語音 (SpeechSynthesizer.DefaultVoice) ,以選取語音 (VoiceInformation.Gender) 的性別。

using (SpeechSynthesizer synthesizer = new SpeechSynthesizer())
{
    VoiceInformation voiceInfo =
        (
            from voice in SpeechSynthesizer.AllVoices
            where voice.Gender == VoiceGender.Female
            select voice
        ).FirstOrDefault() ?? SpeechSynthesizer.DefaultVoice;

    synthesizer.Voice = voiceInfo;

    // Windows.Media.SpeechSynthesis.SpeechSynthesisStream
    stream = await synthesizer.SynthesizeTextToStreamAsync(text);
}

備註

只有安裝在系統上的 Microsoft 簽署語音,才能使用 SpeechSynthesizer產生語音。 每個語音都會以單一語言產生合成語音,如特定國家/地區所說。

根據預設,新的 SpeechSynthesizer 物件會使用目前的系統語音 (呼叫 DefaultVoice ,以瞭解預設語音) 。

若要指定使用者系統上所安裝的任何其他語音合成 (文字轉換語音) 語音,請使用 Voice 方法 (找出系統上已安裝的 語音 ,呼叫 AllVoices) 。

如果您未指定語言,則會載入最接近 [語言] 控制台中所選取語言的語音。

適用於

另請參閱