shellhandwriting.h 标头
允许在任何文本编辑控件上或附近使用笔墨迹书写,而无需先将焦点设置到控件上。 系统确定意向、标识输入目标、呈现墨迹笔划、将墨迹识别为文本 (或用于修改文本) 的笔势、建议文本候选项(如果可用),并将新的或修改的文本插入控件的编辑字段。
此标头由 Ink 输入使用。 有关详细信息,请参阅:
文本服务框架 (TSF) 和 UI 自动化 (UIA) 都用于支持 ShellHandwriting 功能。
以下步骤介绍用于 ShellHandwriting 功能的基本过程。
- 选择退出决定: 确定应用程序是否支持 ShellHandwriting。 通常,没有可靠的UI 自动化 (UIA) 实现或具有自定义墨迹处理的应用程序。
- 意向确定: 如果应用支持 ShellHandwriting,系统会确定是应将笔下指针输入传递到应用还是用于手写。
- 点击确定: 如果笔输入应用于手写,请测试输入是否由可操作的控件 ((如按钮)接收,该控件) 采用输入优先级,以及是否可以找到能够接收文本 (编辑、ComboBox 或文档类型的控件,) 已启用,而不是只读,并且能够接受键盘焦点。
- 目标确定: 如果输入可用于手写,则会在输入的一部分周围创建一个边界框,以确定最适合接收墨迹识别结果 (目标确定) 的编辑控件。
- 最终确定: 标识目标编辑控件并指定焦点时,在墨迹识别结果复制到控件之前,将使用各种其他上下文指示器 (,例如输入范围、语言、现有文本边界矩形) 来确认适当性。
shellhandwriting.h 包含以下编程接口:
接口
IHandwritingInputRoutingCallback 提供输入路由支持,用于将笔输入处理系统线程与输入目标的 UI 线程分开。 |
ITfDetermineProximateHandwritingTargetArgs 提供手写响应行为和近似目标信息。 |
ITfFocusHandwritingTargetArgs 提供手写响应行为和目标信息。 |
ITfHandwriting 支持在任何近似编辑字段上使用笔输入墨迹,而无需先将焦点设置为编辑控件。 墨迹笔划呈现,手写识别 (作为文本或编辑手势) 执行,并将文本输入到编辑字段中。 |
ITfHandwritingRequest 应用程序必须使用此接口来通知系统,它们已评估手写请求后发生的笔输入。 |
ITfHandwritingSink 支持在焦点设置为编辑字段之前指定自定义手写行为的功能。 |
函数
GetHandwritingStrokeIdForPointer 检索与指定指针 ID 关联的墨迹笔划的唯一 ID。 |
RegisterHandwritingInputRoutingCallback |
枚举
TfHandwritingFocusTargetResponse 指定在调用 FocusHandwritingTarget 函数时,实现 IHandwritingInputRoutingCallback 接口的客户端如何响应。 |
TfHandwritingState 指定系统如何处理手写。 |
TfInputEvaluation 指定应如何识别笔输入。 |
TfProximateHandwritingTargetResponse 根据手写目标对象的近似位置指定支持的手写行为。 |