潤宇軟件
首 頁 企業簡介 項目案例 軟件定制 行業軟件 解決方案 下載中心 服務專區 客服中心
業務介紹:西安軟件公司、軟件開發、軟件定制、軟件外包
軟件 方案 文章
  潤宇軟件 >> 新聞資訊  >> 解決方案

西安軟件軟件公司講解C#語音技術

發布時間:2017/9/4  瀏覽次數:2次  字體【    】

30选5是每天开奖吗 www.hbadc.icu 1、使用DotNetSpeech.dll。

/// <summary>

/// 朗讀
/// </summary>
/// <param name="text">要朗讀的文本</param>
private void Read(string text)
{
    SpVoice sv = new SpVoice();
    sv.Rate = 0;//設置朗讀速度
    SpeechVoiceSpeakFlags SSF = SpeechVoiceSpeakFlags.SVSFlagsAsync;
    sv.Speak(text, SSF);
}
/// <summary>
/// 生成聲音文件
/// </summary>
/// <param name="text">要朗讀的文本</param>
/// <param name="filePath">生成聲音文件的路徑</param>
/// <param name="fileName">生成聲音文件的名稱</param>
private void CreateFile(string text, string filePath,string fileName)
{
    if (!Directory.Exists(filePath))
        Directory.CreateDirectory(filePath);
    SpVoice sv = new SpVoice();
    SpeechVoiceSpeakFlags SVSF = SpeechVoiceSpeakFlags.SVSFlagsAsync;
    SpeechStreamFileMode SSFM = SpeechStreamFileMode.SSFMCreateForWrite;
    SpFileStream SFS = new SpFileStream();
    SFS.Open(filePath+fileName, SSFM, false);
    sv.AudioOutputStream = SFS;
    sv.Speak(text, SVSF);
    sv.WaitUntilDone(System.Threading.Timeout.Infinite);
    SFS.Close();
}

2、 使用System.Speech

SpeechSynthesizer ss = new SpeechSynthesizer();
//播放
if (ss != null)
{
    ss.Dispose();
    ss.SpeakAsync("朗讀的文本");
}
//暫停
if (ss.State == SynthesizerState.Speaking)
{
    ss.Pause();
}
//繼續
if (reader.State == SynthesizerState.Paused)
{
    ss.Resume();
}
//停止
if (ss != null)
{
    ss.Dispose();

} 

  關閉本頁
西部IT網合作伙伴 合作伙伴
陜西省 | 榆林 | 延安 | 銅川 | 渭南 | 商洛 | 寶雞 | 漢中 | 安康 | 咸陽
網站首頁 | 關于我們 | 售后服務 | 項目合同 | 查看留言 | 在線留言 | 30选5是每天开奖吗
© 版權所有:西安潤宇軟件科技有限公司 
公司地址:西安市碑林區 聯系電話:029-87878512 手機:13468700578 聯系人:李先生
Copyright ® 2009-2015 RunYusoft.com Inc. All Rights Reserved 
技術支持:西安潤宇軟件科技有限公司  陜ICP備11000720號-3