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


Дерево сканера WIA

На следующем рисунке показаны сканер и изображение, которое он создал.

схема, иллюстрирующая сканер и изображение, которое он создал.

На следующем рисунке показан сканер Microsoft Windows Me или Windows XP или сканер в Windows Vista, если у него нет средства подачи документов, дуплексера или сканера пленки.

WIA представляет сканер и его изображение, показанное на предыдущем рисунке, в виде дерева элементов, как показано на следующем рисунке.

схема, иллюстрирующая, как wia представляет сканер и его изображение в виде дерева элементов.

Корневой элемент, который является сканером, состоит из общих свойств устройства (свойств, которые являются общими как для камер, так и для сканеров) и свойств устройства, относящихся к сканеру. Аналогичным образом каждый дочерний элемент состоит из свойств, общих как для камеры, так и для элементов сканера, а также свойств, относящихся к элементам сканера.

С помощью службы WIA приложение может запросить следующее из элемента сканера:

  • Возможности сканера запросов

  • Настройка свойств устройства сканера

  • Запрос передачи данных

В Windows Me и Windows XP, непосредственно под корневым элементом, типичный объект сканера содержит один элемент, элемент сканера, который представляет функции сбора данных устройства. Приложение настраивает сканирование, задавая свойства элемента средства проверки. Проверка выполняется, когда приложение запрашивает данные из элемента через службу WIA.

В Windows Me и Windows XP приложения обычно ожидают, что планшетные сканеры, в том числе с автоматическими средствами подачи документов (ADF), будут представлены двумя элементами — корневым элементом и одним дочерним элементом. Все передачи данных выполняются из дочернего элемента. Драйвер может создать другие элементы для его частного использования, и эти элементы могут быть перенесены. (Для этого задайте бит WiaItemTypeTransfer флага типа элемента в вызове метода wiasCreateChildAppItem. Эта константа описана в документации по Microsoft Windows SDK.) Однако приложения обычно не знают об этих личных элементах и не знают, как ими управлять. Для сканера с ADF в Windows Me или Windows XP функция ADF предоставляется и управляется путем добавления свойств WIA_DPS_DOCUMENT_HANDLING_XXX в корневой элемент средства проверки, а не в дочерний элемент сканера. Дополнительные сведения об этих свойствах см. в разделе Свойства WIA. Сведения о сканере с ADF в Windows Vista см. в статье Сканеры веб-канала WIA.

Если устройство имеет планшет и ADF и может выполнять проверки DUPLEX, в Windows Me или Windows XP драйвер сообщит свойство WIA_DPS_DOCUMENT_HANDLING_CAPABILITIES как (FEED | FLAT | DUP).

Убедитесь, что допустимые значения для WIA_DPS_DOCUMENT_HANDLING_SELECT заданы правильно. Обратите внимание, что все документы, отсканированные в одном задании сканирования, будут существовать в одном дочернем элементе в дереве элементов. Дополнительные сведения о сканере с ADF и дуплексером в Windows Vista см. в статье Сканеры с каналами WIA.

В качестве примера предположим, что приложение намерено выполнить дуплексное сканирование трех страниц из ADF. Для этого приложение присвоит свойству WIA_DPS_DOCUMENT_HANDLING_SELECT значение (FEEDER | DUPLEX) и задает для свойства WIA_DPS_PAGES значение 3. Если приложение сначала хочет просканировать переднюю часть страницы, оно должно задать для свойства WIA_DPS_DOCUMENT_HANDLING_SELECT значение (FEEDER | ДУПЛЕКС | FRONT_FIRST). После этого приложение должно перейти к дочернему элементу, из которого оно будет запрашивать передачу данных. Мини-driver будет сообщать о начале первой страницы в ADF как странице 1, заднюю часть этой страницы как страницу 2, а переднюю часть второй страницы в ADF — как на странице 3.

Важно помнить, что если устройство имеет ADF, оно должно поддерживать свойства ADF.