SpeechRecognitionEngine.LoadGrammar(Grammar) Metoda
Definicja
Ważne
Niektóre informacje odnoszą się do produktu w wersji wstępnej, który może zostać znacząco zmodyfikowany przed wydaniem. Firma Microsoft nie udziela żadnych gwarancji, jawnych lub domniemanych, w odniesieniu do informacji podanych w tym miejscu.
Synchronicznie ładuje Grammar obiekt.
public:
void LoadGrammar(System::Speech::Recognition::Grammar ^ grammar);
public void LoadGrammar (System.Speech.Recognition.Grammar grammar);
member this.LoadGrammar : System.Speech.Recognition.Grammar -> unit
Public Sub LoadGrammar (grammar As Grammar)
Parametry
- grammar
- Grammar
Obiekt gramatyki do załadowania.
Wyjątki
Grammar
to null
.
Grammar
nie jest w prawidłowym stanie.
Przykłady
W poniższym przykładzie przedstawiono część aplikacji konsolowej, która demonstruje podstawowe rozpoznawanie mowy. Przykład tworzy element DictationGrammar i ładuje go do rozpoznawania mowy.
using System;
using System.Speech.Recognition;
namespace SpeechRecognitionApp
{
class Program
{
static void Main(string[] args)
{
// Create an in-process speech recognizer for the en-US locale.
using (
SpeechRecognitionEngine recognizer =
new SpeechRecognitionEngine(
new System.Globalization.CultureInfo("en-US")))
{
// Create and load a dictation grammar.
recognizer.LoadGrammar(new DictationGrammar());
// Add a handler for the speech recognized event.
recognizer.SpeechRecognized +=
new EventHandler<SpeechRecognizedEventArgs>(recognizer_SpeechRecognized);
// Configure input to the speech recognizer.
recognizer.SetInputToDefaultAudioDevice();
// Start asynchronous, continuous speech recognition.
recognizer.RecognizeAsync(RecognizeMode.Multiple);
// Keep the console window open.
while (true)
{
Console.ReadLine();
}
}
}
// Handle the SpeechRecognized event.
static void recognizer_SpeechRecognized(object sender, SpeechRecognizedEventArgs e)
{
Console.WriteLine("Recognized text: " + e.Result.Text);
}
}
}
Uwagi
Rozpoznawanie zgłasza wyjątek, jeśli Grammar obiekt jest już załadowany, jest ładowany asynchronicznie lub nie może załadować do dowolnego rozpoznawania. Nie można załadować tego samego Grammar obiektu do wielu wystąpień programu SpeechRecognitionEngine. Zamiast tego utwórz nowy Grammar obiekt dla każdego SpeechRecognitionEngine wystąpienia.
Jeśli rozpoznawanie jest uruchomione, aplikacje muszą użyć RequestRecognizerUpdate do wstrzymania aparatu rozpoznawania mowy przed załadowaniem, zwalnianiem, włączaniem lub wyłączaniem gramatyki.
Podczas ładowania gramatyki jest ona domyślnie włączona. Aby wyłączyć załadowaną gramatykę, użyj Enabled właściwości .
Aby załadować Grammar obiekt asynchronicznie, użyj LoadGrammarAsync metody .