在System.Speech命名空間下,SpeechSynthesizer類可以把文字讀出來,一起來玩下~~
首先在Windows窗體項目中引入System.Speech。界面部分:
後台代碼也很簡單,只不過調用了SpeechSynthesizer類的一些方法:
using System.Windows.Forms;
using System.Speech;
using System.Speech.Synthesis;
namespace WindowsFormsApplication1
{
public partial class Form1 : Form
{
private SpeechSynthesizer ss;
public Form1()
{
InitializeComponent();
}
private void Form1_Load(object sender, EventArgs e)
{
ss = new SpeechSynthesizer();
}
private void buttonRead_Click(object sender, EventArgs e)
{
ss.Rate = trackBarSpeed.Value;
ss.Volume = trackBarVolumn.Value;
ss.SpeakAsync(txtMsg.Text);
}
private void buttonPause_Click(object sender, EventArgs e)
{
ss.Pause();
}
private void buttonContinue_Click(object sender, EventArgs e)
{
ss.Resume();
}
private void buttonRecord_Click(object sender, EventArgs e)
{
SpeechSynthesizer ss = new SpeechSynthesizer();
ss.Rate = trackBarSpeed.Value;
ss.Volume = trackBarVolumn.Value;
SaveFileDialog sfd = new SaveFileDialog();
sfd.Filter = "Wave Files|*.wav";
ss.SetOutputToWaveFile(sfd.FileName);
ss.Speak(txtMsg.Text);
ss.SetOutputToDefaultAudioDevice();
MessageBox.Show("完成錄音~~","提示");
}
private void buttonClose_Click(object sender, EventArgs e)
{
Application.Exit();
}
}
}