2

我正在尝试突出显示文本到语音中读取的单词,但它不起作用。直到现在我做了:

    string startSpan = "<span style=" + "background-color:Yellow" + ">";
    string endSpan = "</span>";

 //button onclick
protected void speak_Hope(object sender, EventArgs e)
    {
            speaker.Rate = -4;
            speaker.SpeakAsync(announce.InnerText);
            speaker.SpeakProgress += new EventHandler<SpeakProgressEventArgs>    (speaker_SpeakProgress);
            System.Diagnostics.Debug.WriteLine("processing");

    }


void speaker_SpeakProgress(object sender, SpeakProgressEventArgs  e)
    {
        counter2 = e.CharacterPosition - 10;
        counter3 = e.Text.Length;
        counter4 = counter2 + counter3;
        System.Diagnostics.Debug.WriteLine(e.CharacterPosition - 10 + " next one" + e.Text);
        announce.InnerHtml = announce.InnerText.Substring(0, counter2) + startSpan + announce.InnerText.Substring(counter2, counter3) + endSpan + announce.InnerText.Substring( announce.InnerText.Length - 1);


    }

我做得对还是有其他方法,可以用javascript方式完成吗?多谢

4

1 回答 1

0

如果您正在寻找文本到语音,这可能是此Stackoverflow Question的副本。该问题提供了使用WebAnywhere的建议,这提供了语音到文本,而无需任何额外的下载或特殊软件。很酷!

但是,您似乎实际上正在寻求实现语音识别。根据您的代码,您正朝着错误的兔子洞前进。您将无法使用 Microsoft Speech 库来实现此目标(无法将它们嵌入 XBAP),这是因为它们在服务器上而不是在客户端上运行。

有一些基于 Flash 和 Java 的解决方案确实允许客户端语音识别。我建议您探索它们,因为我相信它们可以实现您的目标。

1) Speech API - 开源和他们的网站包括一系列我发现运行良好的演示。2) wami - 也是开源的

于 2012-04-20T14:25:34.490 回答