次の方法で共有


IWiaSegmentationFilter::D etectRegions メソッド (wia_lh.h)

IWiaSegmentationFilter::D etectRegions メソッドは、各サブ領域を個別のイメージ項目に取得できるように、フラットベッド プラテンにレイアウトされたイメージのサブ領域を決定します。

構文

HRESULT DetectRegions(
  [in]           LONG      lFlags,
  [in, optional] IStream   *pInputStream,
  [in, optional] IWiaItem2 *pWiaItem2
);

パラメーター

[in] lFlags

現在使用されていません。 ゼロに設定してください。

[in, optional] pInputStream

IStream プレビュー イメージへのポインターを指定します。

[in, optional] pWiaItem2

pInputStream が取得された IWiaItem2 項目へのポインターを指定します。 セグメント化フィルターは、この項目の子項目を作成します。

戻り値

成功した場合はS_OKを返し、それ以外の場合は標準の COM エラー値を返します。

注釈

このメソッドは、 pInputStream で表されるイメージのサブ領域を決定します。 検出するサブリージョンごとに、pWiaItem2 パラメーターが指す IWiaItem2] 項目の子項目が作成されます。 子項目ごとに、セグメント化フィルターは、次の WIA スキャナー項目のプロパティを使用して、スキャンする領域の外接する四角形の値を設定する必要があります。

WIA_IPS_XPOS

WIA_IPS_YPOS

WIA_IPS_XEXTENT

WIA_IPS_YEXTENT

ドライバーがデスクウイングをサポートしている場合、より高度なフィルターでは、 WIA_IPS_DESKEW_XWIA_IPS_DESKEW_Yなど、他のスキャナー項目のプロパティも必要になる場合があります。

アプリケーションが IWiaSegmentationFilter::D etectRegions を複数回呼び出す場合、アプリケーションは最初に IWiaSegmentationFilter::D etectRegions メソッドの最後の呼び出しによって作成された子アイテムを削除する必要があります。

アプリケーションが pWiaItem2 にプロパティを変更した場合、イメージを pInputStream に取得してから IWiaSegmentationFilter::D etectRegions を呼び出す間に、元のプロパティ設定 (ストリームの取得時にアイテムが持っていたプロパティ設定) を復元する必要があります。 これは、 IWiaPropertyStorage::GetPropertyStreamIWiaPropertyStorage::SetPropertyStream を使用して行うことができます。

アプリケーションが同じストリームをセグメント化フィルターに複数回渡す場合、アプリケーションは IStream プレビューをリセットする必要があります。 また、アプリケーションは、最初のダウンロード後、および IWiaSegmentationFilter::D etectRegions を呼び出す前にストリームをリセットする必要があります。

要件

要件
対象プラットフォーム デスクトップ
Header wia_lh.h (Wia_lh.h を含む)

こちらもご覧ください

Istream

IWiaItem2

IWiaPropertyStorage