Sdílet prostřednictvím


SpeakProgressEventArgs Třída

Definice

Vrátí data z SpeakProgress události.

public ref class SpeakProgressEventArgs : System::Speech::Synthesis::PromptEventArgs
public class SpeakProgressEventArgs : System.Speech.Synthesis.PromptEventArgs
type SpeakProgressEventArgs = class
    inherit PromptEventArgs
Public Class SpeakProgressEventArgs
Inherits PromptEventArgs
Dědičnost

Příklady

Následující příklad ukazuje informace, které jsou k dispozici z SpeakProgressEventArgs. Všimněte si, jak StartParagraphmetody , EndParagraph, StartSentencea EndSentence ovlivňují CharacterCount objekt přidáním <značek p>, </p>, <s> a </s> do vygenerovaného SSML. Ve výstupu jsou také dvě položky pro "30%", jednu pro každé slovo, které přečte tento číselný řetězec (třicet procent). CharacterPosition A CharacterCount jsou pro každou položku stejné a představují znaky "30 %. Změny však AudioPosition odrážejí slova "třicet" a "procento" znakem SpeechSynthesizer.

using System;  
using System.Speech.Synthesis;  

namespace SampleSynthesis  
{  
  class Program  
  {  
    static void Main(string[] args)  
    {  

      // Initialize a new instance of the SpeechSynthesizer.  
      using (SpeechSynthesizer synth = new SpeechSynthesizer())  
      {  

        // Configure the audio output.   
        synth.SetOutputToWaveFile(@"C:\test\weather.wav");  

        // Create a SoundPlayer instance to play the output audio file.  
        System.Media.SoundPlayer m_SoundPlayer =  
          new System.Media.SoundPlayer(@"C:\test\weather.wav");  

        // Build a prompt containing a paragraph and two sentences.  
        PromptBuilder builder = new PromptBuilder(  
          new System.Globalization.CultureInfo("en-US"));  
        builder.StartParagraph();  
        builder.StartSentence();  
        builder.AppendText(  
          "The weather forecast for today is partly cloudy with some sun breaks.");  
        builder.EndSentence();  
        builder.StartSentence();  
        builder.AppendText(  
          "Tonight's weather will be cloudy with a 30% chance of showers.");  
        builder.EndSentence();  
        builder.EndParagraph();  

        // Add a handler for the SpeakProgress event.  
        synth.SpeakProgress +=  
          new EventHandler<SpeakProgressEventArgs>(synth_SpeakProgress);  

        // Speak the prompt and play back the output file.  
        synth.Speak(builder);  
        m_SoundPlayer.Play();  
      }  

      Console.WriteLine();  
      Console.WriteLine("Press any key to exit...");  
      Console.ReadKey();  
    }  

    // Write each word and its character position to the console.  
    static void synth_SpeakProgress(object sender, SpeakProgressEventArgs e)  
    {  
      Console.WriteLine("CharPos: {0}   CharCount: {1}   AudioPos: {2}    \"{3}\"",  
        e.CharacterPosition, e.CharacterCount, e.AudioPosition, e.Text);  
    }  
  }  
}  

Poznámky

Instance je SpeakProgressEventArgs vytvořena, když SpeechSynthesizer objekt vyvolá SpeakProgress událost. Objekt SpeechSynthesizer vyvolá tuto událost pro každé nové slovo, které vysloví, ve výzvě pomocí některé z Speakmetod , SpeakAsync, SpeakSsmlnebo SpeakSsmlAsync .

Vrácená data jsou založená na jazyce SSML (Speech Synthesis Markup Language), který kód generuje. Hodnoty vrácené pro CharacterCount zahrnují mezery a znaky a obsah značek SSML vygenerovaných kódem.

Vlastnosti

AudioPosition

Získá pozici zvuku události.

Cancelled

Získá hodnotu označující, zda asynchronní operace byla zrušena.

(Zděděno od AsyncCompletedEventArgs)
CharacterCount

Získá počet znaků ve slově, které bylo vysloveno těsně před vyvolání události.

CharacterPosition

Získá počet znaků a mezer od začátku výzvy do pozice před prvním písmenem slova, které bylo právě vysloveno.

Error

Získá hodnotu označující, ke které chybě došlo během asynchronní operace.

(Zděděno od AsyncCompletedEventArgs)
Prompt

Získá výzvu přidruženou k události.

(Zděděno od PromptEventArgs)
Text

Text, který byl právě vysloven při vyvolání události.

UserState

Získá jedinečný identifikátor asynchronní úlohy.

(Zděděno od AsyncCompletedEventArgs)

Metody

Equals(Object)

Určí, zda se zadaný objekt rovná aktuálnímu objektu.

(Zděděno od Object)
GetHashCode()

Slouží jako výchozí hashovací funkce.

(Zděděno od Object)
GetType()

Type Získá z aktuální instance.

(Zděděno od Object)
MemberwiseClone()

Vytvoří mělkou kopii aktuálního Objectsouboru .

(Zděděno od Object)
RaiseExceptionIfNecessary()

Vyvolá výjimku zadanou uživatelem, pokud asynchronní operace selhala.

(Zděděno od AsyncCompletedEventArgs)
ToString()

Vrátí řetězec, který představuje aktuální objekt.

(Zděděno od Object)

Platí pro