다음을 통해 공유


CustomRecognizerNode.GetNodesFromTextRange 메서드 (Int32%, Int32%)

업데이트: 2007년 11월

인식된 문자열의 지정된 텍스트 범위와 관련된 하위 ContextNode 개체의 컬렉션을 반환합니다.

네임스페이스:  Microsoft.Ink
어셈블리:  Microsoft.Ink.Analysis(Microsoft.Ink.Analysis.dll)

구문

‘선언
Public Function GetNodesFromTextRange ( _
    ByRef start As Integer, _
    ByRef length As Integer _
) As ContextNodeCollection
‘사용 방법
Dim instance As CustomRecognizerNode
Dim start As Integer
Dim length As Integer
Dim returnValue As ContextNodeCollection

returnValue = instance.GetNodesFromTextRange(start, _
    length)
public ContextNodeCollection GetNodesFromTextRange(
    ref int start,
    ref int length
)
public:
ContextNodeCollection^ GetNodesFromTextRange(
    int% start, 
    int% length
)
public ContextNodeCollection GetNodesFromTextRange(
    /** @ref */int start,
    /** @ref */int length
)
public function GetNodesFromTextRange(
    start : int, 
    length : int
) : ContextNodeCollection

매개 변수

  • start
    형식: System.Int32%
    인식된 문자열의 텍스트 범위 시작 위치입니다.
  • length
    형식: System.Int32%
    인식된 문자열의 텍스트 범위 길이입니다.

반환 값

형식: Microsoft.Ink.ContextNodeCollection
인식된 문자열의 지정된 텍스트 범위와 관련된 하위 ContextNode 개체의 컬렉션을 반환합니다.

설명

지정된 텍스트 범위의 기준은 전체 RootNode의 인식된 문자열이 아닌 이 CustomRecognizerNode의 인식된 문자열이어야 합니다.

예제

다음 예제에서는 TextBox인 selectedResultsTextBox를 사용합니다. Text 속성은 CustomRecognizerNode 개체인 customRecognizer의 GetRecognizedString에서 반환된 값으로 설정되어 있습니다. 사용자는 TextBox의 텍스트 중 일부를 선택합니다. InkRecognitionConfidence 수준이 Strong이면 선택 영역에 해당하는 Strokes가 빨간색으로 강조 표시됩니다.

' Find out what's been selected in the text box
Dim start As Integer = selectedResultsTextBox.SelectionStart
Dim length As Integer = selectedResultsTextBox.SelectionLength

' Only highlight if strong recognition
If customRecognizer.InkRecognitionConfidence = Microsoft.Ink.InkRecognitionConfidence.Strong Then
    Dim selectedNodes As ContextNodeCollection = _
        customRecognizer.GetNodesFromTextRange(start, length)

    ' Use the new start and length value to update the
    ' selection in the TextBox
    selectedResultsTextBox.SelectionStart = start
    selectedResultsTextBox.SelectionLength = length

    ' Color the strokes red if part of the selected words.
    ' Otherwise, color them black.
    Dim theStroke As Stroke
    For Each theStroke In customRecognizer.Strokes
        theStroke.DrawingAttributes = _
                    New DrawingAttributes(Color.Black)
    Next theStroke
    Dim selectedNode As ContextNode
    For Each selectedNode In selectedNodes
        For Each theStroke In selectedNode.Strokes
            theStroke.DrawingAttributes = _
                     New DrawingAttributes(Color.Red)
        Next theStroke
    Next selectedNode
End If
// Find out what's been selected in the text box
int start = selectedResultsTextBox.SelectionStart;
int length = selectedResultsTextBox.SelectionLength;

// Return if no text is selected.
if (length == 0)
    return;

// Only highlight if strong recognition
if (customRecognizer.InkRecognitionConfidence == Microsoft.Ink.InkRecognitionConfidence.Strong)
{
    ContextNodeCollection selectedNodes =
        customRecognizer.GetNodesFromTextRange(ref start, ref length);

    // Use the new start and length value to update the
    // selection in the TextBox
    selectedResultsTextBox.SelectionStart = start;
    selectedResultsTextBox.SelectionLength = length;

    // Color the strokes red if part of the selected words.
    // Otherwise, color them black.
    foreach (Stroke stroke in customRecognizer.Strokes)
    {
        stroke.DrawingAttributes =
                    new DrawingAttributes(Color.Black);
    }
    foreach (ContextNode selectedNode in selectedNodes)
    {
        foreach (Stroke stroke in selectedNode.Strokes)
        {
            stroke.DrawingAttributes =
                     new DrawingAttributes(Color.Red);
        }
    }
}

플랫폼

Windows Vista

.NET Framework 및 .NET Compact Framework에서 모든 플랫폼의 전체 버전을 지원하지는 않습니다. 지원되는 버전의 목록을 보려면 .NET Framework 시스템 요구 사항을 참조하십시오.

버전 정보

.NET Framework

3.0에서 지원

참고 항목

참조

CustomRecognizerNode 클래스

CustomRecognizerNode 멤버

GetNodesFromTextRange 오버로드

Microsoft.Ink 네임스페이스