RecognizerGuide-Struktur
Stellt den Bereich dar, den das Recognizer-Objekt verwendet und in dem Freihandeingaben gezeichnet werden können. Der Bereich wird als Erkennungsführung bezeichnet.
Namespace: Microsoft.Ink
Assembly: Microsoft.Ink (in Microsoft.Ink.dll)
Syntax
'Declaration
Public Structure RecognizerGuide
'Usage
Dim instance As RecognizerGuide
public struct RecognizerGuide
public value class RecognizerGuide
public final class RecognizerGuide extends ValueType
JScript unterstützt die Verwendung von Strukturen, aber nicht die Deklaration von neuen Strukturen.
Hinweise
Die Erkennungsführung kann aus Zeilen und Spalten bestehen; sie bietet dem Erkennungsmodul einen besseren Kontext bei der Durchführung der Erkennung. Sie können z. B., ähnlich wie bei liniertem Papier, horizontale Linien auf den Benutzerbildschirm zeichnen, die angeben, wo Freihandeingaben vorgenommen werden sollen (diese Art der Erkennungsführung besteht nur aus Zeilen und nicht aus Spalten). Schreibt ein Benutzer auf diesen Zeilen statt in einen beliebigen Bereich, verbessert sich Erkennungsgenauigkeit. Abbildungen von Erkennungsführungen finden Sie unter Ink Recognition.
Buchstaben, wie "t" und "I" werden leichter erkannt, wenn eine Erkennungsführung einen Kontext für die Freihandeingaben bereitstellt.
Die Erkennungsführung gibt die Begrenzungen der Freihandeingaben in Freihandbereich-Koordinaten an. Mit der DrawnBox-Eigenschaft kann ein Feld definiert werden, das gleich groß oder kleiner als das durch die WritingBox-Eigenschaft definierte Feld ist. Auf diese Weise können unterschiedliche Schreibstile berücksichtigt werden. Wenn der Benutzer außerhalb der DrawnBox, jedoch innerhalb der WritingBox schreibt, verwendet das Recognizer-Objekt zur Verbesserung der Erkennung alle Freihandeingaben.
Hat die Anwendung Führungslinien auf dem Bildschirm gezeichnet, auf die der Benutzer schreiben soll, dann sollte die Anwendung die Werte der Eigenschaften der Erkennungsführung festlegen, um das Erkennungsmodul entsprechend zu informieren. Diese Eigenschaften sind nur für die Verwendung durch das Erkennungsmodul vorgesehen. Durch das Festlegen allein werden keine visuellen Hinweise auf der Anzeige gezeichnet. Die Anwendung oder das Steuerelement zeichnet die visuellen Hinweise.
Zusätzlich zu den Linien auf dem Bildschirm, die dem Benutzer zeigen, wo er schreiben soll, können auch Zellen gezeichnet werden, in die Zeichen oder Wörter geschrieben werden. Dies wird als Eingabe in Feldern bezeichnet und ist bei einigen ostasiatischen Sprachen sinnvoll. Sie können anhand der Capabilities-Eigenschaft des Recognizer-Objekts feststellen, ob das Erkennungsmodul mit der Eingabe in Felder umgehen kann.
In der Standardeinstellung ist keine Erkennungsführung gegeben. Bei einer Standarderkennungsführung sind alle Eigenschaftswerte auf 0 (null) festgelegt. Sie müssen die Eigenschaften dieses Objekts verwenden, um eine Erkennungsführung festzulegen.
Beispiele
In diesem Beispiel wird ein RecognizerContext-Objekt instanziiert, und die Guide-Eigenschaft wird durch Erstellen eines neuen RecognizerGuide-Objekts zugewiesen.
' create a new RecognizerContext object
mRecognizerContext = New RecognizerContext()
' if the Recognizer supports LinedInput, set the Guide
If (mRecognizerContext.Recognizer.Capabilities And RecognizerCapabilities.LinedInput) <> 0 Then
' get the lower right corner in pixel units
Dim lowerRight As Point = New Point(mInkOverlay.AttachedControl.Width, mInkOverlay.AttachedControl.Height)
' convert to ink space units
mInkOverlay.Renderer.PixelToInkSpace(Me.CreateGraphics(), lowerRight)
' create Rectangles
Dim writingBox As Rectangle = New Rectangle(0, 0, lowerRight.X, lowerRight.Y)
Dim drawnBox As Rectangle = New Rectangle(0, 0, lowerRight.X, lowerRight.Y)
' shrink drawn box relative to writing box
drawnBox.Inflate(-100, -100)
' create Guide with 8 rows, zero columns, and no midline
Dim guide As RecognizerGuide = New RecognizerGuide(8, 0, 0, writingBox, drawnBox)
mRecognizerContext.Guide = guide
End If
// create a new RecognizerContext object
mRecognizerContext = new RecognizerContext();
// if the Recognizer supports LinedInput, set the Guide
if ((mRecognizerContext.Recognizer.Capabilities & RecognizerCapabilities.LinedInput) != 0)
{
// get the lower right corner in pixel units
Point lowerRight = new Point(mInkOverlay.AttachedControl.Width, mInkOverlay.AttachedControl.Height);
// convert to ink space units
mInkOverlay.Renderer.PixelToInkSpace(this.CreateGraphics(), ref lowerRight);
// create Rectangles
Rectangle writingBox = new Rectangle(0, 0, lowerRight.X, lowerRight.Y);
Rectangle drawnBox = new Rectangle(0, 0, lowerRight.X, lowerRight.Y);
// shrink drawn box relative to writing box
drawnBox.Inflate(-100, -100);
// create Guide with 8 rows, zero columns, and no midline
RecognizerGuide guide = new RecognizerGuide(8, 0, 0, writingBox, drawnBox);
mRecognizerContext.Guide = guide;
}
Threadsicherheit
Alle öffentlichen static (Shared in Visual Basic)-Member dieses Typs sind threadsicher. Bei Instanzmembern ist die Threadsicherheit nicht gewährleistet.
Plattformen
Windows Vista
.NET Framework und .NET Compact Framework unterstützen nicht alle Versionen sämtlicher Plattformen. Eine Liste der unterstützten Versionen finden Sie unter Systemanforderungen für .NET Framework.
Versionsinformationen
.NET Framework
Unterstützt in: 3.0