SpeechRecognitionEngine.LoadGrammar(Grammar) Metode
Definisi
Penting
Beberapa informasi terkait produk prarilis yang dapat diubah secara signifikan sebelum dirilis. Microsoft tidak memberikan jaminan, tersirat maupun tersurat, sehubungan dengan informasi yang diberikan di sini.
Secara sinkron memuat Grammar objek.
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)
Parameter
- grammar
- Grammar
Objek tata bahasa yang akan dimuat.
Pengecualian
Grammar adalah null.
Grammar tidak dalam status valid.
Contoh
Contoh berikut menunjukkan bagian dari aplikasi konsol yang menunjukkan pengenalan ucapan dasar. Contoh membuat DictationGrammar dan memuatnya ke pengenal ucapan.
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);
}
}
}
Keterangan
Recognizer melemparkan pengecualian jika Grammar objek sudah dimuat, sedang dimuat secara asinkron, atau gagal dimuat ke pengenal apa pun. Anda tidak dapat memuat objek yang sama Grammar ke dalam beberapa instans SpeechRecognitionEngine. Sebagai gantinya, buat objek baru Grammar untuk setiap SpeechRecognitionEngine instans.
Jika pengenal berjalan, aplikasi harus menggunakan RequestRecognizerUpdate untuk menjeda mesin pengenalan ucapan sebelum memuat, membongkar, mengaktifkan, atau menonaktifkan tata bahasa.
Saat Anda memuat tata bahasa, tata bahasa diaktifkan secara default. Untuk menonaktifkan tata bahasa yang dimuat, gunakan Enabled properti .
Untuk memuat Grammar objek secara asinkron, gunakan LoadGrammarAsync metode .