C# 文字語音應用 - COM元件

  • 1372
  • 0
  • C#
  • 2018-12-19

讓應用程序能發聲提示

專案中引用元件 Microsoft Speech Object Library

把參考的元件,屬性 [內嵌Interop類型]設為 False

加入命名空間

using SpeechLib;

只說英文

#region 應用一: 只說英文
SpVoiceClass voice = new SpVoiceClass();
//Item(1)女聲
voice.Voice = voice.GetVoices(string.Empty, string.Empty).Item(1);
//SVSFDefault: Specifies that the default settings
voice.Speak(txtSpeech.Text, SpeechVoiceSpeakFlags.SVSFDefault);

#endregion

可說中文

#region 應用二: 說中文
SpVoiceClass voice = new SpVoiceClass();
voice.Voice = voice.GetVoices(string.Empty, string.Empty).Item(0);//Item(0)中文女聲
voice.Speak(txtSpeech.Text, SpeechVoiceSpeakFlags.SVSFDefault);

System.Threading.Thread.Sleep(3000);
voice.Speak("SN " + txtSpeech.Text, SpeechVoiceSpeakFlags.SVSFDefault);

System.Threading.Thread.Sleep(3000);
voice.Speak("SJ " + txtSpeech.Text, SpeechVoiceSpeakFlags.SVSFDefault);

#endregion