AnalysisAlternate Class
Represents one of the possible handwriting recognition word matches for ContextNode objects.
Namespace: Microsoft.Ink
Assembly: Microsoft.Ink.Analysis (in Microsoft.Ink.Analysis.dll)
Syntax
'Declaration
Public Class AnalysisAlternate
'Usage
Dim instance As AnalysisAlternate
public class AnalysisAlternate
public ref class AnalysisAlternate
public class AnalysisAlternate
Remarks
Because so many variations exist between users' handwriting, handwriting recognizers can sometimes convert handwriting into text that is different from what the user intended. When an InkAnalyzer performs analysis on a Strokes collection, the InkAnalyzer finds the most likely set of words that the handwriting represents. In addition, the InkAnalyzer also finds sets of alternative recognition matches, which are stored in an AnalysisAlternateCollection. In order for a user to take advantage of recognition alternates, you must create a user interface that allows the user to select the correct AnalysisAlternate.
AnalysisAlternate objects are generally obtained through the InkAnalyzer.GetAlternates method. The first AnalysisAlternate object in the collection is what the InkAnalyzer considers to be the most likely alternate.
Examples
This example calls GetAlternates on an InkAnalyzer, theInkAnalyzer. It then loops through the AnalysisAlternateCollection and populates a ListBox, alternatesListBox, with all of the alternates that do not have an InkRecognitionConfidence of Poor recognition confidence.
alternatesListBox.Items.Clear()
' ContextNodeCollection selectedSubNodes is obtained via
' DirectCast(theInkAnalyzer.RootNode, RootNode).GetNodesFromTextRange(selStart, selLength);
Me.currentAlternates = theInkAnalyzer.GetAlternates(selectedSubNodes)
Dim alternate As AnalysisAlternate
For Each alternate In Me.currentAlternates
' Add only those that are not Poor confidence
If alternate.InkRecognitionConfidence <> _
Microsoft.Ink.InkRecognitionConfidence.Poor Then
alternatesListBox.Items.Add(alternate.RecognizedString)
End If
Next alternate
alternatesListBox.Items.Clear();
// ContextNodeCollection selectedSubNodes is obtained via
// ((RootNode)theInkAnalyzer.RootNode).GetNodesFromTextRange(ref selStart, ref selLength);
this.currentAlternates = theInkAnalyzer.GetAlternates(selectedSubNodes);
foreach (AnalysisAlternate alternate in this.currentAlternates)
{
// Add only those that are not Poor confidence
if (alternate.InkRecognitionConfidence !=
Microsoft.Ink.InkRecognitionConfidence.Poor)
{
alternatesListBox.Items.Add(alternate.RecognizedString);
}
}
Inheritance Hierarchy
System.Object
Microsoft.Ink.AnalysisAlternate
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 7, Windows Vista, Windows Server 2008 R2, Windows Server 2008
The .NET Framework and .NET Compact Framework do not support all versions of every platform. For a list of the supported versions, see .NET Framework System Requirements.
Version Information
.NET Framework
Supported in: 3.0