我查了些资料,乱七八糟的很乱,请教高人给出具体步骤,谢谢

解决方案 »

  1.   


    哇大哥,不是吧,想读出textbox里面的值,必须有这个值对应的发音吗
      

  2.   

    学习
    不过可以调用win32api
      

  3.   

    http://download.csdn.net/source/667484 
      

  4.   

    如果 是.NET 3.0 
    可以使用
    using System.Speech.Synthesis;SpeechSynthesizer synth = new SpeechSynthesizer();synth.Speak("Hello, world!你好么?");但你的系统必须有 :Microsoft Speech API 5.1
    不是3.0 只能通过API调用方式来解决了.
      

  5.   

    我做过排队叫号系统,“请XXX号到X号窗口”,其中X是数字。
    象一楼说的,分成几个文件,最后合成,就行了。参考。
      

  6.   


    我用的3.5  API调用,麻烦么。。没用过啊
      

  7.   

    using SpeechLib;
    private void button1_Click(object sender, EventArgs e)
            {              SpeechVoiceSpeakFlags spflags = SpeechVoiceSpeakFlags.SVSFlagsAsync;
                SpVoice voice = new SpVoice();
                voice.Speak(textBox1.Text.ToString(), spflags);
            
            }
    开始——》控制面板——》语音——》语音选择——》Microsoft simplrfied chinese_>确定
      

  8.   

    .net 下语音合成 
    版本要求:.net 3.0或以上系统要求:Windows xp sp2 ,Windows vista,Windows 2003命名空间:System.Speech.Synthesis示例代码:            SpeechSynthesizer synth = new SpeechSynthesizer();
                PromptBuilder pb = new PromptBuilder();            synth.SelectVoice("Microsoft Lili");
                pb.ClearContent();
                pb.AppendText("这里就是您要合成的文字信息");
                synth.Speak(pb);http://www.cnblogs.com/onion/archive/2009/02/24/1396914.html
      

  9.   

    http://topic.csdn.net/u/20090426/19/add9a217-076f-46a0-8cda-5d3ae14f2a72.html
    以前写的.
    用Windows TTS语音报显卡温度的东东.
    因为硬件原因不保证一定能在LZ的机器上运行,
    不过LZ可以参考TTS语言合成引擎的调用部分.
      

  10.   

    用ms agent 精灵好了public static class HelpAgentControl
        {
            public static Agent HelpAgent = null;
            public static IAgentCtlCharacterEx Character = null;
            static bool Visible = false; // 虚拟的可见性,不能使用Show/Hide;        #region public static void CreateHelpAgent() // 创建助手
            /// <summary>
            /// 创建助手
            /// </summary>
            public static void CreateHelpAgent()
            {
                try
                {
                    HelpAgent = new Agent();
                    HelpAgent.Connected = true;
                    HelpAgent.Characters.Load(Consts.SERVICE_HELPAGENT_ID, Consts.SERVICE_HELPAGENT_FILENAME);
                    Character = HelpAgent.Characters[Consts.SERVICE_HELPAGENT_ID];
                    Character.Balloon.FontName = Consts.SERVICE_HELPAGENT_INIT_BALLOON_FONTNAME;
                    Character.Balloon.FontSize = Consts.SERVICE_HELPAGENT_INIT_BALLOON_FONTSIZE;
                    Character.Left = -999;
                    Character.Top = -999;
                    Character.Show(Consts.SERVICE_HELPAGENT_SHOW_FAST);
                    System.Threading.Thread.Sleep(Consts.SERVICE_HELPAGENT_START_SLEEPTIME);
                    Visible = true;
                    DoAction(new Consts.SERVICE_HELPAGENT_ACTION_START(), true);
                    Character.Left = Consts.SERVICE_HELPAGENT_INIT_LEFT;
                    Character.Top = Consts.SERVICE_HELPAGENT_INIT_TOP;
                    Character.AutoPopupMenu = false; 
                }
                catch
                {
                    if (Character != null)
                        Character = null;
                    if (HelpAgent != null)
                    {
                        HelpAgent.Connected = false;
                        HelpAgent = null;
                    }
                    Visible = false;
                    return;
                }
            }
            #endregion        #region public static void DisposeHelpAgent() // 销毁助手
            /// <summary>
            /// 销毁助手
            /// </summary>
            public static void DisposeHelpAgent()
            {
                if (HelpAgent != null)
                {
                    if (Visible)
                    {
                        DoAction(new Consts.SERVICE_HELPAGENT_ACTION_END(), false);
                        System.Threading.Thread.Sleep(Consts.SERVICE_HELPAGENT_END_SLEEPTIME);
                        ChangeVisiblity(false);
                    }
                    if (HelpAgent.Characters != null)
                        HelpAgent.Characters.Unload(Consts.SERVICE_HELPAGENT_ID);
                    Character = null;
                    HelpAgent.Connected = false;
                    HelpAgent = null;
                    GC.Collect();
                }
            }
            #endregion        #region public static void DoAction(Consts.SERVICE_HELPAGENT_ACTION Action, bool PlayBeforeSay) // 执行动作和说话
            /// <summary>
            /// 执行动作和说话
            /// </summary>
            /// <param name="Action">行为类实例</param>
            /// <param name="PlayBeforeSay">次序</param>
            public static void DoAction(Consts.SERVICE_HELPAGENT_ACTION Action, bool PlayBeforeSay)
            {
                if (HelpAgent != null)
                {
                    if (!Visible)
                        return;
                    try
                    {
                        Character.StopAll(null);
                        String Speak = Action.SPEAK().Trim();
                        String Play = Action.PLAY().Trim();
                        if (PlayBeforeSay)
                        {
                            if (Play != String.Empty)
                                Character.Play(Action.PLAY());
                            if (Speak != String.Empty)
                                Character.Speak(Action.SPEAK(), null);
                        }
                        else
                        {
                            if (Speak != String.Empty)
                                Character.Speak(Action.SPEAK(), null);
                            if (Play != String.Empty)
                                Character.Play(Action.PLAY());                    }
                    }
                    catch
                    {
                    }
                }
            }
            #endregion        #region public static void ChangeVisiblity(bool IsVisible) // 改变可见性
            /// <summary>
            /// 改变可见性
            /// </summary>
            /// <param name="IsVisible">是否可见</param>
            public static void ChangeVisiblity(bool IsVisible)
            {
                try
                {
                    Visible = true;
                    short OldLeft = Character.Left;
                    short OldTop = Character.Top;
                    if (IsVisible)
                    {
                        Character.Left = -999;
                        Character.Top = -999;
                        Character.Show(Consts.SERVICE_HELPAGENT_SHOW_FAST);
                        System.Threading.Thread.Sleep(Consts.SERVICE_HELPAGENT_START_SLEEPTIME);
                        DoAction(new Consts.SERVICE_HELPAGENT_ACTION_SHOW(), true);
                        Character.Left = OldLeft;
                        Character.Top = OldTop;
                    }
                    else
                    {
                        DoAction(new Consts.SERVICE_HELPAGENT_ACTION_HIDE(), false);
                        Character.Hide(Consts.SERVICE_HELPAGENT_END_FAST);
                    }
                    Visible = IsVisible;
                }
                catch
                {
                    Visible = false;
                }
            }
            #endregion
        }
      

  11.   

    不过要读出声音,先要装TTS和配置中文