InkRecognizerGuide 类

表示 InkRecognizer 对象用来绘制墨迹的区域。该区域称为recognizer guide。

命名空间:  System.Windows.Ink
程序集:  IAWinFX(在 IAWinFX.dll 中)

语法

声明
Public Class InkRecognizerGuide
用法
Dim instance As InkRecognizerGuide
public class InkRecognizerGuide
public ref class InkRecognizerGuide
public class InkRecognizerGuide
public class InkRecognizerGuide

备注

InkRecognizerGuide 可由行和列组成,它为识别器提供了更好的上下文来执行识别。例如,您可以在用户的屏幕上绘制一些水平线条(差不多类似于刻度纸),以显示墨迹应出现的位置(这一类型的参考线仅由行组成,而没有列)。如果用户在这些线条上而不是在任意空白处书写,可提高识别的准确度。例如,如果使用参考线为墨迹提供上下文,则可以更容易地识别诸如“t”和“I”这样的字母。

InkRecognizerGuide 通过定义两个矩形(drawn box和writing box)指定墨迹绘制区域的边界。绘制框的边界是可见的提示,而书写框的边界不可见。两种边界一起指定可以进行书写的区域。用户通常在绘制框的可见线条的边界内书写。绘制框由 DrawnBoxTopDrawnBoxLeftDrawnBoxBottomDrawnBoxRight 属性指定。这些属性仅供识别器使用。设置这些属性的操作本身不会在屏幕上绘制可见线条,而必须使用应用程序或控件来绘制可见线条。

书写框大于绘制框,当用户在绘制框的线条之外绘制墨迹时,书写框可以为用户提供一个误差范围。书写框由 WritingBoxTopWritingBoxLeftWritingBoxBottomWritingBoxRight 属性指定。

除了在屏幕上绘制用于表明用户书写位置的线条或标尺之外,还可以绘制用于书写字符或单词的单元格。这称为boxed input,对于某些东亚语言,这种方式很有用。若要确定识别器是否支持框式输入,请调用 InkRecognizer 对象的 Capabilities 属性。

默认情况下,参考线的所有属性值都设置为 0,这意味着没有参考线。必须使用 InkRecognizerGuide 对象的属性才能设置参考线。

示例

下面的示例同时设置 InkRecognizerGuide 中的所有值。

Dim guideBoxTop As Double = 0
Dim guideBoxBottom As Double = 50
Dim guideBoxLeft As Double = 0
Dim guideBoxRight As Double = 600

Dim WRITINGBOXMARGIN As Integer = 10

' Find the midline of the guide box.
Dim midline As Double = (guideBoxBottom - guideBoxTop) / 2 + guideBoxTop

theGuide.Rows = 1
theGuide.Columns = 0
theGuide.Midline = midline

theGuide.WritingBoxLeft = guideBoxLeft - WRITINGBOXMARGIN
theGuide.WritingBoxTop = guideBoxTop - WRITINGBOXMARGIN
theGuide.WritingBoxRight = guideBoxRight + WRITINGBOXMARGIN
theGuide.WritingBoxBottom = guideBoxBottom + WRITINGBOXMARGIN

theGuide.DrawnBoxLeft = guideBoxLeft
theGuide.DrawnBoxTop = guideBoxTop
theGuide.DrawnBoxRight = guideBoxRight
theGuide.DrawnBoxBottom = guideBoxBottom
double guideBoxTop = 0;
double guideBoxBottom = 50;
double guideBoxLeft = 0;
double guideBoxRight = 600;

const int WRITINGBOXMARGIN = 10;

// Find the midline of the guide box.
double midline = (guideBoxBottom - guideBoxTop) / 2 + guideBoxTop;

theGuide.Rows = 1;
theGuide.Columns = 0;
theGuide.Midline = midline;

theGuide.WritingBoxLeft = guideBoxLeft - WRITINGBOXMARGIN;
theGuide.WritingBoxTop = guideBoxTop - WRITINGBOXMARGIN;
theGuide.WritingBoxRight = guideBoxRight + WRITINGBOXMARGIN;
theGuide.WritingBoxBottom = guideBoxBottom + WRITINGBOXMARGIN;

theGuide.DrawnBoxLeft = guideBoxLeft;
theGuide.DrawnBoxTop = guideBoxTop;
theGuide.DrawnBoxRight = guideBoxRight;
theGuide.DrawnBoxBottom = guideBoxBottom;

继承层次结构

System.Object
  System.Windows.Ink.InkRecognizerGuide

线程安全

此类型的任何公共 static(在 Visual Basic 中为 Shared) 成员都是线程安全的。但不保证所有实例成员都是线程安全的。

平台

Windows Vista

.NET Framework 和 .NET Compact Framework 并不是对每个平台的所有版本都提供支持。有关支持的版本的列表,请参见.NET Framework 系统要求

版本信息

.NET Framework

受以下版本支持:3.0

另请参见

参考

InkRecognizerGuide 成员

System.Windows.Ink 命名空间

Recognizer

RecognizerContext