Поделиться через


SpeakProgressEventArgs Класс

Определение

Возвращает данные из события SpeakProgress.

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
Наследование

Примеры

В следующем примере показаны сведения, доступные из SpeakProgressEventArgs. Обратите внимание, StartParagraphкак методы , EndParagraph, StartSentenceи EndSentence влияют на , CharacterCount сложение тегов <p>, </p>, <s> и </s> в созданный SSML. Кроме того, в выходных данных есть две записи для "30%", по одной для каждого слова, чтобы произнести эту числовую строку (тридцать процентов). И CharacterCountCharacterPosition одинаковы для каждой записи и представляют символы "30 %. AudioPosition Однако изменения, отражающие произнесение слов "тридцать" и "процент" в 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);  
    }  
  }  
}  

Комментарии

Экземпляр SpeakProgressEventArgs создается, когда SpeechSynthesizer объект вызывает SpeakProgress событие . Вызывает SpeechSynthesizer это событие для каждого нового слова, произнесемого в запросе, с помощью любого из Speakметодов , SpeakAsync, SpeakSsmlили SpeakSsmlAsync .

Возвращаемые данные основаны на языке разметки синтеза речи (SSML), который создает код. Значения, возвращаемые для CharacterCount , включают пробелы, символы и содержимое тегов SSML, созданных кодом.

Свойства

AudioPosition

Получает положение события в аудио.

Cancelled

Возвращает значение, показывающее, была ли отменена асинхронная операция.

(Унаследовано от AsyncCompletedEventArgs)
CharacterCount

Получает количество символов в слове, которое было произнесено непосредственно перед возникновением события.

CharacterPosition

Получает число символов и и пробелов с начала запроса до позиции перед первой буквой только что произнесенного слова.

Error

Возвращает значение, показывающее, какая ошибка произошла в течение асинхронной операции.

(Унаследовано от AsyncCompletedEventArgs)
Prompt

Получает запрос, связанный с событием.

(Унаследовано от PromptEventArgs)
Text

текст, который был только что произнесен, когда было создано событие.

UserState

Возвращает уникальный идентификатор для асинхронной задачи.

(Унаследовано от AsyncCompletedEventArgs)

Методы

Equals(Object)

Определяет, равен ли указанный объект текущему объекту.

(Унаследовано от Object)
GetHashCode()

Служит хэш-функцией по умолчанию.

(Унаследовано от Object)
GetType()

Возвращает объект Type для текущего экземпляра.

(Унаследовано от Object)
MemberwiseClone()

Создает неполную копию текущего объекта Object.

(Унаследовано от Object)
RaiseExceptionIfNecessary()

Вызывает предоставленное пользователем исключение в случае неудачного выполнения асинхронной операции.

(Унаследовано от AsyncCompletedEventArgs)
ToString()

Возвращает строку, представляющую текущий объект.

(Унаследовано от Object)

Применяется к