다음을 통해 공유


InkAnalyzerBase.Load 메서드

업데이트: 2007년 11월

저장된 분석 결과를 잉크 분석기에 로드합니다.

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

구문

‘선언
Public Function Load ( _
    serializedResults As Byte(), _
    originalToNewStrokeIdMap As Hashtable _
) As Boolean
‘사용 방법
Dim instance As InkAnalyzerBase
Dim serializedResults As Byte()
Dim originalToNewStrokeIdMap As Hashtable
Dim returnValue As Boolean

returnValue = instance.Load(serializedResults, _
    originalToNewStrokeIdMap)
public bool Load(
    byte[] serializedResults,
    Hashtable originalToNewStrokeIdMap
)
public:
bool Load(
    array<unsigned char>^ serializedResults, 
    Hashtable^ originalToNewStrokeIdMap
)
public boolean Load(
    byte[] serializedResults,
    Hashtable originalToNewStrokeIdMap
)
public function Load(
    serializedResults : byte[], 
    originalToNewStrokeIdMap : Hashtable
) : boolean

매개 변수

  • serializedResults
    형식: array<System.Byte[]
    저장된 분석 결과가 들어 있는 부호 없는 8비트 정수 배열입니다.
  • originalToNewStrokeIdMap
    형식: System.Collections.Hashtable
    이전 스트로크 식별자를 새 스트로크 식별자와 연결하는 매핑이거나 원래 스트로크 식별자를 유지하려는 경우 nullNull 참조(Visual Basic의 경우 Nothing)입니다.

반환 값

형식: System.Boolean
잉크 분석기에서 분석 결과를 로드했으면 true이고, 그렇지 않으면 false입니다.

설명

잉크 분석기가 저장된 결과에서 ContextNodeBase를 추가할 때는 ContextNodeBase 개체의 Id 속성에 새 GUID(Globally Unique Identifier)를 할당합니다.

이 메서드는 저장된 분석 결과를 기존 ContextNodeBase 트리에 추가합니다. 결합된 결과가 올바른 순서로 배열되도록 하려면 로드된 컨텍스트 노드가 포함된 영역을 잉크 분석기의 DirtyRegion에 추가한 다음 잉크를 다시 분석합니다.

SaveResults 메서드는 패킷 데이터를 분석 결과와 함께 저장하지 않습니다.

originalToNewStrokeIdMap의 각 키는 저장된 분석 결과에서 스트로크에 대한 스트로크 식별자입니다. originalToNewStrokeIdMap의 각 키는 로드된 분석 결과에서 원래 식별자를 대체하는 새 식별자입니다.

저장된 분석 힌트가 기존 분석 힌트와 충돌하는 경우 잉크 분석기는 저장된 힌트를 로드하지 않지만 저장된 결과의 나머지 부분은 그대로 로드합니다. 하지만 분석기가 로드하지 않은 저장된 분석 힌트 영역 안에 있는 스트로크에 대한 결과를 분석기가 로드하는 경우 분석기는 스트로크의 경계 상자를 InkAnalyzerBase 개체의 DirtyRegion 속성에 추가합니다. 분석기가 기존 분석 힌트 영역 안에 있는 스트로크에 대한 결과를 로드하는 경우에도 분석기가 스트로크의 경계 상자를 InkAnalyzerBase 개체의 DirtyRegion 속성에 추가합니다. 분석 힌트에 대한 자세한 내용은 PropertyGuidsForAnalysisHintsBase를 참조하십시오.

InkAnalyzerBase는 저장된 결과를 로드할 때 ContextNodeCreatedBase, ContextNodeLinkAddingBaseContextNodePropertiesUpdatedBase 이벤트를 적절하게 발생시킵니다.

예제

다음 예제에서는 부호 없는 8비트 정수 배열인 savedResults에서 저장된 분석 결과를 로드합니다. 예제에서는 InkAnalyzerBase인 theInkAnalyzerBase로 결과를 로드합니다. 이 예제에서는 잉크 분석기에 이미 스트로크 데이터가 있는 경우 새 스트로크 식별자를 계산하는 방법은 보여 주지 않습니다.

' Load previously saved analysis results
Dim successful As Boolean = False
If 0 = theInkAnalyzerBase.RootNode.GetStrokeIds().Length Then
    ' If the analyzer does not already contain stroke data, do not
    ' remap the identifiers for the strokes.
    successful = theInkAnalyzerBase.Load(savedResults, Nothing)
Else
    ' If the analyzer does already contain stroke data, remap the stroke
    ' identifiers for the saved stroke data. Then use that remapping
    ' to load the results.
End If
// Load previously saved analysis results
bool successful = false;
if (0 == theInkAnalyzerBase.RootNode.GetStrokeIds().Length)
{
    // If the analyzer does not already contain stroke data, do not
    // remap the identifiers for the strokes.
    successful = theInkAnalyzerBase.Load(savedResults, null);
}
else
{
    // If the analyzer does already contain stroke data, remap the stroke
    // identifiers for the saved stroke data. Then use that remapping
    // to load the results.
}

플랫폼

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 네임스페이스

System.Windows.Ink.AnalysisCore.ContextNodeBase

InkAnalyzerBase.DirtyRegion

InkAnalyzerBase.SaveResults