using System.Speech;
using System.Speech.Recognition;
//1.Async="true"
//2.SpeechSynthesizer speak = new SpeechSynthesizer();
//同步朗讀
//3.1 speak.Speak(txt.Text.Trim());
//speak.Dispose(); //釋放之前的資源
//異步朗讀
//3.2 speak.SpeakAsync(txt.Text.Trim());
//speak.Volume = 100; //設置朗讀音量 [範圍 0 ~ 100]
//speak.Rate = 0; //設置朗讀頻率 [範圍 -10 ~ 10]
//speak.SelectVoice("Microsoft Lili"); //SpeakChina
//speak.SelectVoice("Microsoft Anna"); //SpeakEnglish
//SelectVoiceByHints(VoiceGender.Male, VoiceAge.Child, 2, System.Globalization.CultureInfo.CurrentCulture);
//speak.SpeakAsyncCancelAll(); //取消朗讀
//speak.SetOutputToWaveFile("c:\\message.wav");
//語音合成
//4.PromptBuilder pb = new PromptBuilder();
//speak.SelectVoice("Microsoft Lili");
//pb.ClearContent();
//.Net 4.0 的實現方式:
/*
Type type = Type.GetTypeFromProgID("SAPI.SpVoice");
dynamic spVoice = Activator.CreateInstance(type);
spVoice.Speak("妳好,歡迎使用 CSharp 4.0!");
*/
//5.語音完成
/*
speak.SpeakCompleted += new EventHandler<SpeakCompletedEventArgs>(speak_SpeakCompleted);
void speak_SpeakCompleted(object sender, SpeakCompletedEventArgs e)
{
txt.Text = "完成";
}
*/
//SPEAK 開始
/*var reader = new SpeechSynthesizer();
reader.SpeakAsync(txt.Text); */
//event handler
//reader.SpeakCompleted += new EventHandler<SpeakCompletedEventArgs>(reader_SpeakCompleted);
//或
//sp.SpeakCompleted += (s, arg) => txt.Text = "true";
//PAUSE 暫停
/*if (reader.State == SynthesizerState.Speaking)
{
reader.Pause();
btn_pause.Text = "繼續";
}*/
//RESUME 繼續
/*if (reader.State == SynthesizerState.Paused)
{
reader.Resume();
btn_pause.Text = "暫停";
}*/
//STOP 停止
//reader.Dispose();