IInkAnalyzer::AddStroke 方法

将单个笔划的笔划数据添加到 IInkAnalyzer ,并将活动输入线程的区域性标识符分配给笔划。

语法

HRESULT AddStroke(
  [in]  LONG         lStrokeId,
  [in]  ULONG        ulStrokePacketDataCount,
  [in]  LONG         *plStrokePacketData,
  [in]  ULONG        ulStrokePacketDescriptionCount,
  [in]  GUID         *pStrokePacketDescriptionGuids,
  [out] IContextNode **ppContextNodeStrokeAddedTo
);

parameters

lStrokeId [in]

要添加的笔划的标识符。

ulStrokePacketDataCount [in]

笔划中的数据包数。

plStrokePacketData [in]

包含笔划的数据包数据的数组。

ulStrokePacketDescriptionCount [in]

每个数据包中的数据包属性数。

pStrokePacketDescriptionGuids [in]

包含数据包属性标识符的数组。

ppContextNodeStrokeAddedTo [out]

指向 IInkAnalyzer 向其添加笔划的 IContextNode 的指针。

返回值

有关返回值的说明,请参阅 类和接口 - 墨迹分析

备注

注意

若要避免内存泄漏,请在不再需要使用 对象时调用 iUnknown::Release on ppContextNodeStrokeAddedTo

ppContextNodeStrokeAddedToNULL 时,表示调用方对方法的返回值不感兴趣。

IInkAnalyzer 将笔划添加到 UnclassifiedInk 类型的 IContextNode (请参阅上下文节点类型) 。 此节点位于根节点的子节点集合中, (请参阅 IInkAnalyzer::GetRootNode 方法和IContextNode::GetSubNodes 方法) 。

IInkAnalyzer 将活动输入线程的区域性标识符分配给笔划,并将笔划添加到墨迹分析器的根节点下的第一个 UnclassifiedInk 上下文节点,其中包含具有相同区域性标识符的笔划。 如果墨迹分析器没有具有相同区域性标识符的节点,它会在其根节点下创建新的 UnclassifiedInk 上下文节点,并将笔划添加到新的 UnclassifiedInk 上下文节点。

plStrokePacketData 包含笔划中所有点的数据包数据。 pStrokePacketDescriptionGuids 包含全局唯一标识符 (GUID) ,用于描述笔划中每个点包含的数据包数据类型。 有关可用数据包属性的完整列表,请参阅 PacketPropertyGuids 常量

此方法将脏区域扩展到该区域的当前值和添加的笔划的边界框的联合。

如果 IInkAnalyzer 已包含具有相同笔划标识符的笔划,则 IInkAnalyzer 将返回E_INVALIDARGHRESULT

要求

要求
最低受支持的客户端
Windows XP Tablet PC Edition [仅限桌面应用]
最低受支持的服务器
无受支持的版本
标头
IACom.h (还需要 IACom_i.c)
DLL
IACom.dll

另请参阅

InkAnalyzer

IInkAnalyzer::AddStrokeForLanguage 方法

IInkAnalyzer::AddStrokes 方法

IInkAnalyzer::AddStrokesForLanguage 方法

IInkAnalyzer::RemoveStroke 方法

IInkAnalyzer::RemoveStrokes 方法

墨迹分析参考