iInkDisp::Load 方法 (msinkaut.h)

使用已知的二进制数据填充新的 InkDisp 对象。

语法

HRESULT Load(
  [in] VARIANT Data
);

参数

[in] Data

包含墨迹数据的流。

有关 VARIANT 结构的详细信息,请参阅 使用 COM 库

返回值

此方法可以返回其中一个值。

返回代码 说明
S_OK
成功。
E_INVALIDARG
VARIANT 的类型 (字节数组) 不正确。
E_OUTOFMEMORY
无法为Stream分配内存。
E_UNEXPECTED
意外的参数或属性类型。
E_INK_EXCEPTION
方法内发生异常。

注解

只能将墨迹加载到新的空 InkDisp 对象中,该对象未收集任何笔划或没有任何附加属性。 如果尝试将墨迹加载到已收集笔划或附加属性的 InkDisp 对象中,即使笔划或属性已从 InkDisp 对象中删除,也会引发异常。 发生这种情况的原因是如何分配笔划 ID。 笔划分配有唯一 ID,并且不会重复使用此 ID,即使笔划已从 Ink 对象中删除也是如此。 这意味着,如果 InkDisp 对象包含 ID 为 1 的笔划,并且你删除了笔划并将另一个 InkDisp 对象加载到此 InkDisp 对象中,则笔划 ID 将从 2 开始。 这会令人困惑,因此是不允许的。

注意如果尝试将墨迹加载到不为空的 InkDisp 对象中,则调用 Load 时,InkDisp 对象中的所有数据(包括任何自定义笔划或扩展属性)都将丢失。
 
Save 方法允许以图形交换格式 (GIF) 格式将墨迹保留在 InkDisp 对象中,该格式由字节数据数组组成, (inkPersistenceFormat 枚举类型) 指定tla_gif持久性格式。 拥有字节数据数组后,可以将字节数据数组加载到另一个 InkDisp 对象中。 这意味着,可以将与 GIF 兼容的字节数组数据加载到另一个 InkDisp 对象中,就像调用 Save 方法并接收了一个不采用 GIF 格式的字节数组一样。
注意 不能创建图像,将该图像保留为字节数组,然后将该字节数组加载到另一个 InkDisp 对象中。 这是因为,将字节数组数据加载为 GIF 后,平板电脑无法控制该数据的格式。 因此,再次将图像保存到字节数组中后,无法对该数据调用 Load
 

要求

要求
最低受支持的客户端 Windows XP Tablet PC Edition [仅限桌面应用]
最低受支持的服务器 无受支持的版本
目标平台 Windows
标头 msinkaut.h
Library InkObj.dll

另请参阅

IInkDisp

InkDisp 类

Save 方法