SpeechSynthesizer.BookmarkReached Ereignis
Definition
Wichtig
Einige Informationen beziehen sich auf Vorabversionen, die vor dem Release ggf. grundlegend überarbeitet werden. Microsoft übernimmt hinsichtlich der hier bereitgestellten Informationen keine Gewährleistungen, seien sie ausdrücklich oder konkludent.
Wird ausgelöst, wenn das SpeechSynthesizer ein Lesezeichen in einer Eingabeaufforderung feststellt.
public:
event EventHandler<System::Speech::Synthesis::BookmarkReachedEventArgs ^> ^ BookmarkReached;
public event EventHandler<System.Speech.Synthesis.BookmarkReachedEventArgs> BookmarkReached;
member this.BookmarkReached : EventHandler<System.Speech.Synthesis.BookmarkReachedEventArgs>
Public Custom Event BookmarkReached As EventHandler(Of BookmarkReachedEventArgs)
Ereignistyp
Beispiele
Im folgenden Beispiel wird eine Eingabeaufforderung erstellt, die zwei Lesezeichen enthält, und sendet die Ausgabe zur Wiedergabe an eine WAV-Datei. Der Handler für das BookmarkReached Ereignis schreibt den Namen des Lesezeichens und dessen Position im Audiostream, wenn das Ereignis in die Konsole ausgelöst wurde.
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 and append bookmarks.
PromptBuilder builder = new PromptBuilder(
new System.Globalization.CultureInfo("en-US"));
builder.AppendText(
"The weather forecast for today is partly cloudy with some sun breaks.");
builder.AppendBookmark("Daytime forecast");
builder.AppendText(
"Tonight's weather will be cloudy with a 30% chance of showers.");
builder.AppendBookmark("Nighttime forecast");
// Add a handler for the BookmarkReached event.
synth.BookmarkReached +=
new EventHandler<BookmarkReachedEventArgs>(synth_BookmarkReached);
// 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 the name and position of the bookmark to the console.
static void synth_BookmarkReached(object sender, BookmarkReachedEventArgs e)
{
Console.WriteLine("Bookmark ({0}) reached at: {1} ",
e.Bookmark, e.AudioPosition);
}
}
}
Hinweise
Löst SpeechSynthesizer dieses Ereignis aus, während eine der SpeakMethoden , SpeakAsync, SpeakSsmloder SpeakSsmlAsync verarbeitet wird. Informationen zu daten, die dem Ereignis zugeordnet sind, finden Sie unter BookmarkReachedEventArgs.
Sie können Lesezeichen mit der AppendBookmark -Methode hinzufügen.