Поделиться через


Метод IWiaPreview::D etectRegions

Вызывает фильтр сегментации драйвера и передает в фильтр нефильтрованный образ, кэшированный методом IWiaPreview::GetNewPreview .

Синтаксис

HRESULT DetectRegions(
  [in] LONG lFlags
);

Параметры

lFlags [in]

Тип: LONG

Не используется. Задайте нулевое значение (0).

Возвращаемое значение

Тип: HRESULT

Этот метод может возвращать одно из этих значений.

Код возврата Описание
S_OK
Операция прошла успешно.
E_NOTIMPL
Драйвер не поддерживает сегментацию.
Иначе
Стандартный код ошибки COM.

 

Комментарии

Приложение должно вызвать IWiaPreview::GetNewPreview , прежде чем вызывать эту функцию.

Когда компонент получения образов Windows (WIA) 2.0 Preview вызывает IWiaPreview::D etectRegions, он вызывает фильтр сегментации драйвера и передает интерфейс IWiaItem2 , который ранее был передан в IWiaPreview::GetNewPreview. Он также передает внутренне кэшированное изображение в фильтр. Фильтр сегментации использует кэшированный образ для создания дочерних экстентов.

Если приложение изменяет какие-либо свойства интерфейса IWiaItem2 после вызова IWiaPreview::GetNewPreview, исходные свойства необходимо восстановить, прежде чем приложение вызовет 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 [только классические приложения]
Заголовок
Wia.h
IDL
Wia.idl