IWiaPreview::D etectRegions メソッド
ドライバーのセグメント化フィルターを呼び出し、 IWiaPreview::GetNewPreview メソッドによってキャッシュされたフィルター処理されていないイメージをフィルターに渡します。
構文
HRESULT DetectRegions(
[in] LONG lFlags
);
パラメーター
-
lFlags [in]
-
型: LONG
使用されていません。 0 に設定します。
戻り値
種類: HRESULT
このメソッドは、これらの値のいずれかを返すことができます。
リターン コード | 説明 |
---|---|
|
操作が成功しました。 |
|
ドライバーはセグメント化をサポートしていません。 |
|
標準の COM エラー コード。 |
注釈
アプリケーションは、この関数を呼び出す前に IWiaPreview::GetNewPreview を呼び出す必要があります。
Windows Image Acquisition (WIA) 2.0 Preview Component が 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_IPS_DESKEW_XやWIA_IPS_DESKEW_Yなど、他の WIA 2.0 プロパティが設定されます。 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 [デスクトップ アプリのみ] |
Header |
|
IDL |
|