InkRecognizerContext 类
支持执行墨迹识别、检索识别结果和检索备用项的功能。 InkRecognizerContext 使安装在系统上的各种识别器能够使用墨迹识别来正确处理输入。
InkRecognizerContext 具有以下类型的成员:
事件
InkRecognizerContext 类具有这些事件。
事件 | 说明 |
---|---|
识别 | 当 InkRecognizerContext 已从 BackgroundRecognize 方法生成结果时发生。 |
RecognitionWithAlternates | 当 InkRecognizerContext 在调用 BackgroundRecognizeWithAlternates 方法后生成结果时发生 |
接口
InkRecognizerContext 类定义这些接口。
接口 | 说明 |
---|---|
IInkRecognizerContext | 此对象实现 IInkRecognizerContext COM 接口。 |
方法
InkRecognizerContext 类具有这些方法。
方法 | 说明 |
---|---|
BackgroundRecognize | 指定识别器应识别关联的笔划,并在识别完成后触发 识别 事件。 |
BackgroundRecognizeWithAlternates | 指定识别器应识别关联的笔划,并在识别完成后触发 RecognitionWithAlternates 事件。 |
克隆 | 创建重复的 InkRecognizerContext。 |
EndInkInput | 结束 InkRecognizerContext 的墨迹输入。 |
IsStringSupported | 指示系统字典、用户词典或 单词列表 是否包含指定的字符串。 |
Recognize | 对 InkStrokes 集合执行识别并返回识别结果。 |
StopBackgroundRecognition | 结束通过调用 BackgroundRecognize 或 BackgroundRecognizeWithAlternates 开始 的背景识别。 |
属性
InkRecognizerContext 类具有这些属性。
属性 | 访问类型 | 说明 |
---|---|---|
CharacterAutoCompletion |
读取/写入 |
获取或设置字符自动完成模式,该模式确定何时识别字符或单词。 |
Factoid |
读取/写入 |
获取或设置 InkRecognizerContext 对象使用的 factoid 的字符串名称。 |
指南 |
读取/写入 |
获取或设置用于 墨迹输入的 InkRecognizerGuide 。 |
PrefixText |
读取/写入 |
获取或设置 InkRecognizerContext 对象中 InkStrokes 集合之前的字符。 |
RecognitionFlags |
读取/写入 |
获取或设置指定识别器如何解释墨迹并确定结果字符串的标志。 |
识别器 |
读取/写入 |
获取或设置 InkRecognizerContext 对象使用的 IInkRecognizer 对象。 |
中风 |
读取/写入 |
获取或设置与 InkRecognizerContext 对象关联的 InkStrokes 集合。 |
SuffixText |
读取/写入 |
获取或设置 InkRecognizerContext 对象中 InkStrokes 集合之后的字符。 |
WordList |
读取/写入 |
获取或设置用于改进识别结果的 InkWordList 对象。 |
备注
可以通过在 C++ 中调用 CoCreateInstance 方法来实例化此对象。
有两种类型的识别:后台 (异步) 或前台 (同步) 。 背景识别通过调用 BackgroundRecognize 或 BackgroundRecognizeWithAlternates 方法启动,在后台线程上发生,并通过事件机制向应用程序报告结果。 在完成所有识别之前,前台识别不会返回,因此使识别结果可供调用线程使用,而无需侦听识别事件。
墨迹在后台持续处理。 如果将 IInkStrokeDisp 添加到 InkRecognizerContext 所引用的 InkStrokes 集合,则会立即识别 IInkStrokeDisp。 有关更多详细信息,请参阅 EndInkInput 方法主题中的备注。
所有识别都通过识别器上下文进行。 上下文定义单个识别会话的设置。 它接收必须识别的墨迹,并定义墨迹输入和识别输出的约束。 可在上下文上设置的约束包括正在使用的语言、字典和语法。
注意
仅当 InkStrokes 集合为 NULL 时,设置除 Strokes 或 CharacterAutoCompletion 属性以外的属性才会成功。 在将 InkStrokes 集合附加到 InkRecognizerContext 之前,必须设置其他属性,或者必须将 InkStrokes 集合设置为 NULL ,然后设置其他属性。 如果将 InkStrokes 集合设置为 NULL ,然后设置其他属性,则可能必须重新附加 InkStrokes 集合。 这是因为在将 InkStrokes 分配到 InkRecognizerContext 后立即开始识别。 调用 Recognize 方法 [InkRecognizeContext 类] 或 BackgroundRecognize 时,调用结果可能已可用。
若要提高应用程序的性能,请在不再需要 InkRecognizerContext 对象时释放它。
要求
要求 | 值 |
---|---|
最低受支持的客户端 |
Windows XP Tablet PC Edition [仅限桌面应用] |
最低受支持的服务器 |
无受支持的版本 |
标头 |
|
库 |
|