InkRecognizerContext クラス

インク認識を実行し、認識結果を取得し、代替を取得する機能を有効にします。 InkRecognizerContext を使用すると、システムにインストールされているさまざまな認識エンジンが、インク認識を使用して入力を適切に処理できます。

InkRecognizerContext には、次の種類のメンバーがあります。

イベント

InkRecognizerContext クラスには、これらのイベントがあります。

Event 説明
認識 InkRecognizerContext が BackgroundRecognize メソッドから結果を生成したときに発生します。
RecognitionWithAlternates BackgroundRecognizeWithAlternates メソッドを呼び出した後に InkRecognizerContext が結果を生成したときに発生します

インターフェイス

InkRecognizerContext クラスは、これらのインターフェイスを定義します。

インターフェイス 説明
IInkRecognizerContext このオブジェクトは、 IInkRecognizerContext COM インターフェイスを実装します。

メソッド

InkRecognizerContext クラスには、これらのメソッドがあります。

メソッド 説明
BackgroundRecognize 認識エンジンが関連するストロークを認識し、認識が完了したときに Recognition イベントを発生させる必要があることを指定します。
BackgroundRecognizeWithAlternates 認識エンジンが関連付けられているストロークを認識し、認識が完了したときに RecognitionWithAlternates イベントを 発生させる必要があることを指定します。
クローン 重複する InkRecognizerContext を作成します。
EndInkInput InkRecognizerContext へのインク入力を終了します。
IsStringSupported システム ディクショナリ、ユーザー 辞書、または 単語リスト に指定した文字列が含まれているかどうかを示します。
Recognize InkStrokes コレクションに対して認識を実行し、認識結果を返します。
StopBackgroundRecognition BackgroundRecognize またはBackgroundRecognizeWithAlternates の呼び出しで開始されたバックグラウンド認識を終了します。

プロパティ

InkRecognizerContext クラスには、これらのプロパティがあります。

プロパティ アクセスの種類 説明
CharacterAutoCompletion
読み取り/書き込み
文字または単語が認識されるタイミングを決定する文字オートコンプリート モードを取得または設定します。
擬似 事実
読み取り/書き込み
InkRecognizerContext オブジェクトで使用される factoid の文字列名を取得または設定します。
ガイド
読み取り/書き込み
インク入力に使用する InkRecognizerGuide を取得または設定します。
PrefixText
読み取り/書き込み
InkRecognizerContext オブジェクトの InkStrokes コレクションの前にある文字を取得または設定します。
RecognitionFlags
読み取り/書き込み
認識エンジンがインクを解釈し、結果文字列を決定する方法を指定するフラグを取得または設定します。
認識エンジン
読み取り/書き込み
InkRecognizerContext オブジェクトによって使用される IInkRecognizer オブジェクトを取得または設定します。

読み取り/書き込み
InkRecognizerContext オブジェクトに関連付けられた InkStrokes コレクションを取得または設定します。
SuffixText
読み取り/書き込み
InkRecognizerContext オブジェクトの InkStrokes コレクションの後にある文字を取得または設定します。
単語
読み取り/書き込み
認識結果を向上させるために使用される InkWordList オブジェクトを取得または設定します。

解説

このオブジェクトは、C++ で CoCreateInstance メソッドを呼び出すことによってインスタンス化できます。

認識には、バックグラウンド (非同期) とフォアグラウンド (同期) の 2 種類があります。 バックグラウンド認識は、BackgroundRecognize メソッドまたは BackgroundRecognizeWithAlternates メソッドの呼び出しによって開始され、バックグラウンド スレッドで発生し、イベント メカニズムを介してアプリケーションに結果を報告します。 フォアグラウンド認識は、すべての認識が完了するまで返されないため、認識イベントをリッスンせずに呼び出し元のスレッドで認識結果を使用できるようになります。

インクはバックグラウンドで連続して処理されます。 InkRecognizerContext が参照する InkStrokes コレクションに IInkStrokeDisp が追加された場合、IInkStrokeDisp はすぐに認識されます。 詳細については、 EndInkInput メソッドのトピックの「解説」を参照してください。

すべての認識は、認識エンジン コンテキストを介して行われます。 コンテキストは、1 つの認識セッションの設定を定義します。 認識する必要があるインクを受け取り、インク入力と認識出力に対する制約を定義します。 コンテキストで設定できる制約には、使用されている言語、辞書、文法が含まれます。

Note

Strokes プロパティまたは CharacterAutoCompletion プロパティ以外のプロパティの設定は、InkStrokes コレクションが NULL の場合にのみ成功します。 InkStrokes コレクションを InkRecognizerContext にアタッチする前に、他のプロパティを設定する必要があります。または、InkStrokes コレクションを NULL に設定してから、他のプロパティを設定する必要があります。 InkStrokes コレクションを NULL に設定し、その他のプロパティを設定した場合は、InkStrokes コレクションを再アタッチする必要がある場合があります。 これは、 InkStrokes を InkRecognizerContext に割り当てた直後に認識が開始されるためです。 Recognize メソッド [InkRecognizeContext クラス] または BackgroundRecognize の呼び出しが行われると、呼び出し結果が既に使用できる可能性があります。

アプリケーションのパフォーマンスを向上させるには、 InkRecognizerContext オブジェクトが不要になったら破棄します。

要件

要件
サポートされている最小のクライアント
Windows XP タブレット PC エディション [デスクトップ アプリのみ]
サポートされている最小のサーバー
サポートなし
ヘッダー
Msinkaut.h (Msinkaut_i.c も必要)
ライブラリ
InkObj.dll

関連項目

IInkRecognizer インターフェイス

InkStrokes コレクション