다음을 통해 공유


InkAnalyzerBase.GetTextRangeFromNodes 메서드

업데이트: 2007년 11월

인식된 문자열에서 컨텍스트 노드의 컬렉션에 해당하는 텍스트 범위를 찾습니다.

네임스페이스:  System.Windows.Ink.AnalysisCore
어셈블리:  IACore(IACore.dll)

구문

‘선언
Public Sub GetTextRangeFromNodes ( _
    nodesToSearch As ContextNodeBaseCollection, _
    <OutAttribute> ByRef start As Integer, _
    <OutAttribute> ByRef length As Integer _
)
‘사용 방법
Dim instance As InkAnalyzerBase
Dim nodesToSearch As ContextNodeBaseCollection
Dim start As Integer
Dim length As Integer

instance.GetTextRangeFromNodes(nodesToSearch, _
    start, length)
public void GetTextRangeFromNodes(
    ContextNodeBaseCollection nodesToSearch,
    out int start,
    out int length
)
public:
void GetTextRangeFromNodes(
    ContextNodeBaseCollection^ nodesToSearch, 
    [OutAttribute] int% start, 
    [OutAttribute] int% length
)
public void GetTextRangeFromNodes(
    ContextNodeBaseCollection nodesToSearch,
    /** @attribute OutAttribute */ /** @ref */int start,
    /** @attribute OutAttribute */ /** @ref */int length
)
public function GetTextRangeFromNodes(
    nodesToSearch : ContextNodeBaseCollection, 
    start : int, 
    length : int
)

매개 변수

  • start
    형식: System.Int32%
    이 메서드가 반환될 때 start 매개 변수에는 텍스트 범위의 시작 부분을 나타내는 부호 있는 32비트 정수가 포함됩니다. 이 매개 변수는 초기화되지 않은 상태로 전달됩니다.
  • length
    형식: System.Int32%
    이 메서드가 반환될 때 length 매개 변수에는 텍스트 범위의 길이를 나타내는 부호 있는 32비트 정수가 포함됩니다. 이 매개 변수는 초기화되지 않은 상태로 전달됩니다.

설명

nodesToSearch에 연속되지 않은 ContextNodeBase 개체가 들어 있는 경우 이 메서드는 모든 컨텍스트 노드를 포함하는 가장 작은 텍스트 범위를 반환합니다.

nodesToSearch에 InkAnalyzerBase와 연결되지 않은 컨텍스트 노드가 들어 있는 경우 이 메서드는 System.ArgumentException을 throw합니다.

예제

다음 예제에서는 InkAnalyzerBase인 theInkAnalyzerBase의 첫 번째 줄 노드에 대한 텍스트 범위를 검색합니다.

' Get all line nodes.
Dim theLineNodes As System.Windows.Ink.AnalysisCore.ContextNodeBaseCollection = _
    theInkAnalyzerBase.FindNodesOfType( _
        System.Windows.Ink.AnalysisCore.ContextNodeTypeBase.Line)

' Remove all but the first line node.
If 0 < theLineNodes.Count Then
    Dim firstLineNode As System.Windows.Ink.AnalysisCore.ContextNodeBase = theLineNodes(0)
    theLineNodes.Clear()
    theLineNodes.Add(firstLineNode)
End If

' Get the text range for the first line node.
Dim selectionStart As Integer = 0
Dim selectionLength As Integer = 0
If 0 < theLineNodes.Count Then
    theInkAnalyzerBase.GetTextRangeFromNodes( _
        theLineNodes, selectionStart, selectionLength)
End If
// Get all line nodes.
System.Windows.Ink.AnalysisCore.ContextNodeBaseCollection theLineNodes =
    theInkAnalyzerBase.FindNodesOfType(
        System.Windows.Ink.AnalysisCore.ContextNodeTypeBase.Line);

// Remove all but the first line node.
if (0 < theLineNodes.Count)
{
    System.Windows.Ink.AnalysisCore.ContextNodeBase firstLineNode = theLineNodes[0];
    theLineNodes.Clear();
    theLineNodes.Add(firstLineNode);
}

// Get the text range for the first line node.
int selectionStart = 0;
int selectionLength = 0;
if (0 < theLineNodes.Count)
{
    theInkAnalyzerBase.GetTextRangeFromNodes(
        theLineNodes, out selectionStart, out selectionLength);
}

플랫폼

Windows Vista, Windows XP SP2, Windows Server 2003

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

버전 정보

.NET Framework

3.0에서 지원

참고 항목

참조

InkAnalyzerBase 클래스

InkAnalyzerBase 멤버

System.Windows.Ink.AnalysisCore 네임스페이스

InkAnalyzerBase.GetNodesFromTextRange