InkRecognizerGuide Class

Represents the area that the InkRecognizer object uses and in which ink can be drawn. The area is known as the recognizer guide.

Namespace: System.Windows.Ink
Assembly: IAWinFX (in iawinfx.dll)
XML Namespace:  https://schemas.microsoft.com/winfx/2006/xaml/presentation

Syntax

'Declaration
Public Class InkRecognizerGuide
'Usage
Dim instance As InkRecognizerGuide
public class InkRecognizerGuide
public ref class InkRecognizerGuide
public class InkRecognizerGuide
public class InkRecognizerGuide
Not applicable.

Remarks

The InkRecognizerGuide can consist of rows and columns, and gives the recognizer a better context in which to perform recognition. For example, you can draw horizontal lines on a user's screen, almost like a ruled piece of paper, that show where inking should occur (this type of guide would consist only of rows without columns). If a user writes on the lines, instead of some arbitrary space, recognition accuracy improves. For example, letters such as "t" and "I" are more easily recognized when a guide is used to give context to the ink.

The InkRecognizerGuide specifies the boundaries of the ink. The InkRecognizerGuide specifies the boundaries where ink can be drawn by defining two rectangles; the drawn box and the writing box. The boundaries of the drawn box are visual cues where they are invisible for the writing box. Together, they specify where writing can take place. The user normally writes within the boundaries of the visible lines. The drawn box is specified by the DrawnBoxTop, DrawnBoxLeft, DrawnBoxBottom, and DrawnBoxRight properties. These properties are for the recognizer's use only. Setting them does not, by itself, draw visual clues on the display. The application or the control must draw the visual clues.

The writing box is larger than the drawn box and provides the users a margin of error if they draw ink outside the lines of the drawn box. The writing box is specified by the WritingBoxTop, WritingBoxLeft, WritingBoxBottom, and WritingBoxRight properties.

In addition to drawing lines or rules on the screen that show users where to write, it is also possible to draw cells on the screen in which characters or words are written. This is called boxed input and is useful with some East Asian languages. To determine if the recognizer is capable of boxed input, call the Capabilities property of the InkRecognizer object.

By default the guide has all property values set to 0, which means there is no guide. You must use the properties of the InkRecognizerGuide object to set the guide.

Example

The following sets all of the values in the InkRecognizerGuide simultaneously.

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;

Inheritance Hierarchy

System.Object
  System.Windows.Ink.InkRecognizerGuide

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Platforms

Windows 98, Windows Server 2000 SP4, Windows CE, Windows Millennium Edition, Windows Mobile for Pocket PC, Windows Mobile for Smartphone, Windows Server 2003, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP SP2, Windows XP Starter Edition

The Microsoft .NET Framework 3.0 is supported on Windows Vista, Microsoft Windows XP SP2, and Windows Server 2003 SP1.

Version Information

.NET Framework

Supported in: 3.0

See Also

Reference

InkRecognizerGuide Members
System.Windows.Ink Namespace
Recognizer
RecognizerContext