Freigeben über


InkRecognizer-Klasse

Stellt Zugriff auf vom InkAnalyzer verwendete Handschrifterkennungen bereit.

Namespace:  System.Windows.Ink
Assembly:  IAWinFX (in IAWinFX.dll)

Syntax

'Declaration
Public Class InkRecognizer _
    Implements IDisposable
'Usage
Dim instance As InkRecognizer
public class InkRecognizer : IDisposable
public ref class InkRecognizer : IDisposable
public class InkRecognizer implements IDisposable
public class InkRecognizer implements IDisposable

Hinweise

Ein Erkennungsmodul weist spezifische Attribute und Eigenschaften auf, die den Erkennungsvorgang ermöglichen. Bevor eine Erkennung erfolgen kann, müssen die Eigenschaften des Erkennungsmoduls bestimmt werden. Die von einem Erkennungsmodul unterstützten Eigenschaftentypen bestimmen, welche Art von Erkennung es ausführen kann. Wenn ein Erkennungsmodul beispielsweise keine kursive Handschrift unterstützt, werden bei der Eingabe von Kursivschrift ungenaue Ergebnisse zurückgegeben.

Ein Erkennungsmodul verfügt außerdem über integrierte Funktionen, mit denen viele Aspekte der Handschrifteingabe automatisch verwaltet werden. Beispielsweise wird die Metrik für die Zeilen bestimmt, auf denen Striche gezeichnet werden. Sie können die Zeilennummer eines Strichs zurückgeben, aufgrund der integrierten Funktionalität des Erkennungsmoduls brauchen Sie jedoch nicht angeben, wie diese Zeilenmetriken bestimmt werden.

Das InkAnalyzer-Objekt verwaltet eine InkRecognizerCollection-Auflistung der verfügbaren Erkennungsmodule. Um auf diese Auflistung zuzugreifen, verwenden Sie die GetInkRecognizersByPriority-Methode des InkAnalyzer.

Beispiele

Im folgenden Beispiel wird eine Methode definiert, die eine Zeichenfolge zurückgibt. Die Zeichenfolge enthält Informationen über einen angegebenen InkRecognizer. In diesem Beispiel wird die Hilfsmethode ListCapabilities nicht dargestellt, die mithilfe der Reflexion Informationen über die Funktionen des InkRecognizer zurückgibt.

' <summary>
' Generates a string containing information about the specified InkRecognizer.
' </summary>
' <param name="theInkRecognizer">
' The InkRecognizer from which to gather the information.
' </param>
' <returns>
' A string containing information about the specified InkRecognizer.
' </returns>
Private Function GetInkRecognizerData(ByVal theInkRecognizer As InkRecognizer) As String
    ' Create a StringBuilder in which to collect the information.
    Dim result As New System.Text.StringBuilder()

    ' Add the name of the recognizer.
    result.AppendLine(String.Format("Name: {0}", theInkRecognizer.Name))

    ' Add the GUID of the recognizer.
    result.AppendLine(String.Format("   Guid: {0}", theInkRecognizer.Guid))

    ' Add the vendor of the recognizer.
    result.AppendLine(String.Format("   Vendor: {0}", theInkRecognizer.Vendor))

    ' Add the languages the recognizer supports.
    result.AppendLine("   Supports the following languages:")
    If 0 = theInkRecognizer.GetLanguages().Length Then
        result.AppendLine("      No languages supported.")
    Else
        Dim lcid As Integer
        For Each lcid In theInkRecognizer.GetLanguages()
            Dim theCultureInfo As New System.Globalization.CultureInfo(lcid)
            result.AppendLine(String.Format("      0x{0:x4}: {1}", lcid, theCultureInfo.EnglishName))
        Next lcid
    End If

    ' Add the capabilities of the recognizer.
    result.AppendLine(String.Format("   Capabilities: 0x{0:x}", theInkRecognizer.Capabilities))

    ' List each capability separately, using a helper method.
    result.Append(Me.ListCapabilities(theInkRecognizer.Capabilities))

    result.AppendLine(String.Format("      {0} properties supported.", _
        theInkRecognizer.GetSupportedProperties().Length.ToString()))

    Return result.ToString()

End Function 'GetInkRecognizerData

/// <summary>
/// Generates a string containing information about the specified InkRecognizer.
/// </summary>
/// <param name="theInkRecognizer">
/// The InkRecognizer from which to gather the information.
/// </param>
/// <returns>
/// A string containing information about the specified InkRecognizer.
/// </returns>
private string GetInkRecognizerData(
    InkRecognizer theInkRecognizer)
{
    // Create a StringBuilder in which to collect the information.
    System.Text.StringBuilder result = new System.Text.StringBuilder();

    // Add the name of the recognizer.
    result.AppendLine(string.Format(
        "Name: {0}", theInkRecognizer.Name));

    // Add the GUID of the recognizer.
    result.AppendLine(string.Format(
        "   Guid: {0}", theInkRecognizer.Guid));

    // Add the vendor of the recognizer.
    result.AppendLine(string.Format(
        "   Vendor: {0}", theInkRecognizer.Vendor));

    // Add the languages the recognizer supports.
    result.AppendLine("   Supports the following languages:");
    if (0 == theInkRecognizer.GetLanguages().Length)
    {
        result.AppendLine("      No languages supported.");
    }
    else
    {
        foreach (int lcid in theInkRecognizer.GetLanguages())
        {
            System.Globalization.CultureInfo theCultureInfo =
                new System.Globalization.CultureInfo(lcid);
            result.AppendLine(string.Format(
                "      0x{0:x4}: {1}", lcid, theCultureInfo.EnglishName));
        }
    }

    // Add the capabilities of the recognizer.
    result.AppendLine(string.Format(
        "   Capabilities: 0x{0:x}", theInkRecognizer.Capabilities));

    // List each capability separately, using a helper method.
    result.Append(this.ListCapabilities(theInkRecognizer.Capabilities));

    result.AppendLine(string.Format("      {0} properties supported.", 
        theInkRecognizer.GetSupportedProperties().Length.ToString()));

    return result.ToString();
}

Vererbungshierarchie

System.Object
  System.Windows.Ink.InkRecognizer

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

Siehe auch

Referenz

InkRecognizer-Member

System.Windows.Ink-Namespace

System.Windows.Ink.InkRecognizerCollection

System.Windows.Ink.InkAnalyzer

System.Windows.Ink.AnalysisHintNode