WritingRegionNode Class
Represents a group of paragraphs with similar orientation.
Assembly: Microsoft.Ink.Analysis (in Microsoft.Ink.Analysis.dll)
A writing region has a single reading order, such as top down.
Several writing regions can coexist in the same document on the same page if they have different orientations. For example, if a user writes notes that are primarily horizontal but then scribbles a few words diagonally in a corner, the diagonal words are considered to have a different orientation. A new WritingRegion is created for that diagonal text.
A WritingRegionNode object can contain the following types of child elements:
Any number of ParagraphNode objects.
Any number of nodes with an unknown Guid value.
For more information, see conceptual topic on WritingRegion and AlignmentLevel.
The following example takes a TextBox, selectedResultsTextBox, whose Text property has previously been set to the value returned by GetRecognizedString for a WritingRegionNode, writingRegion. The user has selected some text in the TextBox. The example code marks the Strokes that corresponds to that selection.
// Find out what's been selected in the text box int selectionStart = selectedResultsTextBox.SelectionStart; int selectionLength = selectedResultsTextBox.SelectionLength; // Return if no text is selected. // selectionLength must be > 0 or GetNodesFromTextRange(...) // will throw an ArgumentOutOfRangeException if (selectionLength == 0) return; // Get the nodes that correspond to that range ContextNodeCollection selectedRegionSubNodes = writingRegion.GetNodesFromTextRange(ref selectionStart, ref selectionLength); // Use the new start and length value to update the // selection in the TextBox selectedResultsTextBox.SelectionStart = selectionStart; selectedResultsTextBox.SelectionLength = selectionLength; // First, set all strokes to black foreach (Stroke stroke in writingRegion.Strokes) stroke.DrawingAttributes = new DrawingAttributes(Color.Black); // Next, set all selected sub nodes to red foreach (ContextNode node in selectedRegionSubNodes) { foreach (Stroke stroke in node.Strokes) { stroke.DrawingAttributes = new DrawingAttributes(Color.Red); } }
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.