RecognizedWordUnit コンストラクター
定義
重要
一部の情報は、リリース前に大きく変更される可能性があるプレリリースされた製品に関するものです。 Microsoft は、ここに記載されている情報について、明示または黙示を問わず、一切保証しません。
RecognizedWordUnit クラスの新しいインスタンスを初期化します。
public:
RecognizedWordUnit(System::String ^ text, float confidence, System::String ^ pronunciation, System::String ^ lexicalForm, System::Speech::Recognition::DisplayAttributes displayAttributes, TimeSpan audioPosition, TimeSpan audioDuration);
public RecognizedWordUnit (string text, float confidence, string pronunciation, string lexicalForm, System.Speech.Recognition.DisplayAttributes displayAttributes, TimeSpan audioPosition, TimeSpan audioDuration);
new System.Speech.Recognition.RecognizedWordUnit : string * single * string * string * System.Speech.Recognition.DisplayAttributes * TimeSpan * TimeSpan -> System.Speech.Recognition.RecognizedWordUnit
Public Sub New (text As String, confidence As Single, pronunciation As String, lexicalForm As String, displayAttributes As DisplayAttributes, audioPosition As TimeSpan, audioDuration As TimeSpan)
パラメーター
- confidence
- Single
用語認識の確実性を示す 0.0 ~ 1.0 の float
値。
- displayAttributes
- DisplayAttributes
認識されたテキストを表示するために、空白の使用を定義します。
例
次の例は、入力から新しい単語が生成され、エミュレーターに渡され、検証されるエミュレーションのやや工夫されたテストです。
private void _emulateAndVerify_Click(object sender, EventArgs e)
{
char[] delimiterChars = { ' ', ',', '.', ':', ';', '\t' };
string text = _emulateTextBox.Text;
string[] words = text.Split(delimiterChars);
RecognizedWordUnit[] InputWordUnits = new RecognizedWordUnit[words.Length];
for (int i = 0; i < words.Length; i++)
{
InputWordUnits[i] = new RecognizedWordUnit(
"",
0,
"",
words[i].ToLower(),
DisplayAttributes.OneTrailingSpace,
new TimeSpan(),
new TimeSpan());
}
RecognitionResult rec = _recognizer.EmulateRecognize(
InputWordUnits,
System.Globalization.CompareOptions.IgnoreCase);
if (rec == null)
{
MessageBox.Show(String.Format("Recognition emulation for {0} failed.\n", text));
}
else if (InputWordUnits.Length != rec.Words.Count)
{
MessageBox.Show(
String.Format("Length mismatch: Input was {0} words, Recognition has {1} words.\n}"));
}
else
{
for (int i = 0; i < InputWordUnits.Length; i++)
{
if (rec.Words[i].LexicalForm.ToLower() != InputWordUnits[i].LexicalForm.ToLower())
{
MessageBox.Show(
String.Format("Input word {0} \"{1}\" not found. Recognition output is {2}",
i, InputWordUnits[i].LexicalForm, rec.Words[i].LexicalForm));
continue;
}
}
}
}
注釈
または pronunciation
が 、""、または RecognizedWordUnitEmpty であり、 が認識操作で使用されている場合text
、認識エンジンは任意の出力RecognizedWordUnitインスタンスで適切な値を生成null
します。
インスタンスの直接構築は、通常、 クラスEmulateRecognizeAsyncEmulateRecognizeの RecognizedWordUnit メソッドまたは クラスの SpeechRecognitionEngine メソッドまたは EmulateRecognizeAsync メソッドSpeechRecognizerをEmulateRecognize使用して認識操作をエミュレートする場合にのみ使用されます。
実際のアプリケーションでは、 を直接構築RecognizedWordUnitするのではなく、 オブジェクトの RecognizedPhrase プロパティをWords使用して取得します。
適用対象
こちらもご覧ください
.NET