次の方法で共有


InkAnalyzerBase.Load メソッド

保存された分析結果をインク アナライザに読み込みます。

名前空間 :  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 を追加すると、新しいグローバル一意識別子 (GUID) を ContextNodeBase オブジェクトの Id プロパティに割り当てます。

このメソッドは、保存された分析結果を既存の ContextNodeBase ツリーに追加します。結合された結果の順序を正しいものにするため、読み込まれたコンテキスト ノードが含まれている領域をインク アナライザの DirtyRegion に追加し、インクを再分析します。

SaveResults メソッドは、分析結果と共にパケット データを保存しません。

originalToNewStrokeIdMap の各キーは、保存された分析結果内のストロークのストローク識別子です。originalToNewStrokeIdMap の各値は、読み込まれた分析結果内で元の識別子と置き換える新しい識別子です。

保存された分析のヒントが既存の分析のヒントと競合する場合、インク アナライザは保存されたヒントを読み込みませんが、保存された結果の残りの部分を読み込みます。ただし、アナライザが読み込まない保存された分析のヒントの領域内にあるストロークの結果をアナライザが読み込む場合、アナライザはストロークの境界ボックスを InkAnalyzerBase オブジェクトの DirtyRegion プロパティに追加します。さらに、既存の分析のヒントの領域内にあるストロークの結果をアナライザが読み込む場合、アナライザはストロークの境界ボックスを InkAnalyzerBase オブジェクトの DirtyRegion プロパティにも追加します。分析のヒントの詳細については、PropertyGuidsForAnalysisHintsBase を参照してください。

InkAnalyzerBase は、保存された結果を読み込むと、ContextNodeCreatedBaseContextNodeLinkAddingBase、および ContextNodePropertiesUpdatedBase イベントを発生させます。

次の例では、保存された分析結果を 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