zoukankan      html  css  js  c++  java
  • DotNet语音技术实现(实现电脑发音)

    “电脑发音”(英文)一个很好的触发点,通过它可以实现电子小说阅读、英文听力测试、英文单词学习...
        下面的Speech已对MSTTS作了简单封装。

    1.安装好MSTTS,可以在windows\speech中打到vtxtauto.lib文件

    2.用.Net SDK自带的tlbimp工具把vtxtauto.tlb转换成.dll格式:
      tlbimp vtxtauto.tlb /silent /namespace:mstts /out:mstts.dll
      这时的mstts.dll已成为.net framework运行库的一个类。

    3.编写一个封装vtxtauto的简单类:Speech .
    //========================Speech.cs======================

    using System;
    using mstts;  //MSTTS名称空间

    namespace Bedlang{      //定义名称空间

    public class Speech{

      private VTxtAuto VTxtAutoEx;

      public Speech(){
       VTxtAutoEx = new VTxtAuto(); 
       VTxtAutoEx.Register(" "," "); //注册COM组件  
      }

      public void Speak(String text){
       VTxtAutoEx.Speak(text, 0);   //发音
      }

    }

    }

    //========================Speech.cs======================

    4.编译Bedlang.Speech
      csc /target:library /out:Bedlang.dll  speech.cs /r:mstts.dll

    5.发音实现
    //========================demo.cs======================
    using System;
    using System.Windows.Forms;
    using Bedlang;   //引用名称空间

    public class demo : Form {     

    public static void Main() {
      Application.Run( new demo() );
    }

    public demo(){
      Speech s = new Speech();    //创建一个Speech对象
      s.Speak("Bedlang");     //发音 
    }

    }
    //========================demo.cs======================

    6.编译demo.cs
      csc demo.cs /r:bedlang.dll

    7.运行demo.exe
      程序发音啦.

  • 相关阅读:
    Delphi cxGrid –--> RecordIndex out of Range
    局域网共享需要密码
    提高AdoQuery的速度
    string literals may have at most 255 elements
    delphi控件属性大全-详解-简介
    Cxgrid获取选中行列,排序规则,当前正在编辑的单元格内的值
    FastReport 使用说明
    delphi的取整函数round、trunc、ceil和floor
    cxGrid 速度
    SQL Server 无法在服务器上访问指定的路径或文件解决方法
  • 原文地址:https://www.cnblogs.com/happyday56/p/946314.html
Copyright © 2011-2022 走看看