IInkAnalyzer::AddStrokes メソッド
複数のストロークのストローク データを IInkAnalyzer に 追加し、アクティブな入力スレッドのカルチャ識別子をストロークに割り当てます。
構文
HRESULT AddStrokes(
[in] ULONG ulStrokeIdsCount,
[in] LONG *plStrokeIds,
[in] ULONG ulStrokePacketDescriptionCount,
[in] GUID *pStrokePacketDescriptionGuids,
[in] ULONG *pulPacketDataCountPerStroke,
[in] LONG *plStrokePacketData,
[out] IContextNode **ppContextNodeStrokeAddedTo
);
パラメーター
-
ulStrokeIdsCount [in]
-
追加するストロークの数。
-
plStrokeIds [in]
-
ストローク識別子を含む配列。
-
ulStrokePacketDescriptionCount [in]
-
各パケットのプロパティの数。
-
pStrokePacketDescriptionGuids [in]
-
パケット プロパティ識別子を含む配列。
-
pulPacketDataCountPerStroke [in]
-
各ストロークのパケット数を含む配列。
-
plStrokePacketData [in]
-
ストロークのパケット データを含む配列。
-
ppContextNodeStrokeAddedTo [out]
-
インク アナライザーがストロークを追加した IContextNode 。
戻り値
戻り値の説明については、「 クラスとインターフェイス - インク分析」を参照してください。
解説
注意事項
メモリ リークを回避するには、オブジェクトを使用する必要がなくなったときに、ppContextNodeStrokeAddedTo で IUnknown::Release を呼び出します。
ppContextNodeStrokeAddedTo が NULL の場合、呼び出し元が メソッドからの戻り値に関心を持たないことを示します。
IInkAnalyzer は、UnclassifiedInk 型の IContextNode にストロークを追加します (「コンテキスト ノードの種類」を参照)。 このノードは、ルート ノードのサブノード コレクションにあります ( 「IInkAnalyzer::GetRootNode メソッド 」および 「IContextNode::GetSubNodes メソッド」を参照)。
IInkAnalyzer は、アクティブな入力スレッドのカルチャ識別子をストロークに割り当て、同じカルチャ識別子を持つストロークを含むインク アナライザーのルート ノードの下にある最初の UnclassifiedInk コンテキスト ノードにストロークを追加します。 インク アナライザーに同じカルチャ識別子を持つノードがない場合は、ルート ノードの下に新しい UnclassifiedInk コンテキスト ノードが作成され、ストロークが新しい UnclassifiedInk コンテキスト ノードに追加されます。
plStrokePacketData には、すべてのストロークのパケット データが含まれています。 pStrokePacketDescriptionGuids には、各ストロークの各ポイントに含まれるパケット データの種類を記述するグローバル一意識別子 (GUID) が含まれています。 使用可能なパケット プロパティの完全な一覧については、「 PacketPropertyGuids 定数」を参照してください。
注意
IInkAnalyzer::AddStrokes メソッドの 1 回の呼び出しでは、同じパケット記述を持つストロークのみを追加できます。
このメソッドは、領域の現在の値と追加されたストロークの境界ボックスの和集合にダーティ領域を展開します。
追加するストロークと同じ識別子を持つストロークが IInkAnalyzer に既に含まれている場合、IInkAnalyzer は E_INVALIDARG の HRESULT を返します。
必要条件
要件 | 値 |
---|---|
サポートされている最小のクライアント |
Windows XP Tablet PC Edition [デスクトップ アプリのみ] |
サポートされている最小のサーバー |
サポートなし |
ヘッダー |
|
[DLL] |
|