IWiaPreview::D etectRegions 方法
调用驱动程序分段筛选器,并将 IWiaPreview::GetNewPreview 方法缓存的未筛选图像传递到筛选器。
语法
HRESULT DetectRegions(
[in] LONG lFlags
);
参数
-
lFlags [in]
-
类型: LONG
未使用。 将 设置为零 (0) 。
返回值
类型: HRESULT
此方法可以返回其中一个值。
返回代码 | 说明 |
---|---|
|
操作成功。 |
|
驱动程序不支持分段。 |
|
标准 COM 错误代码。 |
备注
应用程序在调用此函数之前必须调用 IWiaPreview::GetNewPreview 。
当 Windows 映像获取 (WIA) 2.0 预览组件调用 IWiaPreview::D etectRegions 时,它会调用驱动程序分段筛选器,并将以前传递给 IWiaPreview::GetNewPreview 的 IWiaItem2 接口传递。 它还会将内部缓存的图像传递到筛选器。 分段筛选器使用缓存的图像来创建子盘区。
如果应用程序在调用 IWiaPreview::GetNewPreview 后更改 IWiaItem2 接口的任何属性,则必须在应用程序调用 IWiaPreview::D etectRegions 之前还原原始属性。 使用 GetPropertyStream 和 SetPropertyStream 还原原始属性。
IWiaPreview::D etectRegions 用于确定缓存映像的“子区域”。 对于检测到的每个子区域,在 IWiaItem2 接口下创建新的子 WIA 2.0 项。 对于每个子项,分段筛选器必须设置以下 WIA 2.0 属性的值:WIA_IPS_XPOS、WIA_IPS_YPOS、WIA_IPS_XEXTENT和WIA_IPS_YEXTENT。 如果驱动程序支持倾斜,则更高级的筛选器会设置其他 WIA 2.0 属性,例如WIA_IPS_DESKEW_X和WIA_IPS_DESKEW_Y。 WIA_IPS_XPOS、WIA_IPS_YPOS、WIA_IPS_XEXTENT和WIA_IPS_YEXTENT属性表示要扫描的区域的边框。
驱动程序可能不支持分段。 在调用 IWiaPreview::D etectRegions 之前,应用程序通常会检查驱动程序是否支持 WIA_IPS_SEGMENTATION 属性。 如果未实现 属性,则不支持分段, 并且 IWiaPreview::D etectRegions 将失败并返回E_NOTIMPL。
应用程序必须清理通过调用 IWiaPreview::D etectRegions 创建的子项。 例如,如果应用程序对同一项上的 IWiaPreview::D etectRegions 进行额外调用,则必须清理以前的子项。
要求
要求 | 值 |
---|---|
最低受支持的客户端 |
Windows Vista [仅限桌面应用] |
最低受支持的服务器 |
Windows Server 2008 [仅限桌面应用] |
标头 |
|
IDL |
|