chrome.documentScan

Описание

Используйте API chrome.documentScan для обнаружения и получения изображений со сканеров подключенных документов.

Разрешения

documentScan

Доступность

Chrome 44+ только для ChromeOS

API сканирования документов

API сканирования документов предназначен для того, чтобы приложения и расширения могли просматривать содержимое бумажных документов на подключенном сканере документов.

Типы

CancelScanResponse

Хром 125+

Характеристики

  • работа

    нить

    Предоставляет тот же дескриптор задания, который был передан в cancelScan() .

  • Результат отмены сканирования серверной части. Если результатом является OperationResult.SUCCESS или OperationResult.CANCELLED , сканирование было отменено и сканер готов начать новое сканирование. Если результатом является OperationResult.DEVICE_BUSY , сканер все еще обрабатывает запрошенную отмену; вызывающему абоненту следует подождать некоторое время и повторить запрос. Другие значения результата указывают на постоянную ошибку, которую не следует повторять.

CloseScannerResponse

Хром 125+

Характеристики

  • Результат закрытия сканера. Даже если это значение не SUCCESS , дескриптор будет недействителен и не должен использоваться для каких-либо дальнейших операций.

  • сканерРучка

    нить

    Тот же дескриптор сканера, который был передан в closeScanner .

Configurability

Хром 125+

Как можно изменить опцию.

Перечисление

"НЕ_КОНФИГУРИРУЕМО"
Опция доступна только для чтения.

"SOFTWARE_CONFIGURABLE"
Опцию можно настроить программно.

"HARDWARE_CONFIGURABLE"
Эту опцию можно установить пользователем, переключая или нажимая кнопку на сканере.

ConnectionType

Хром 125+

Указывает, как сканер подключен к компьютеру.

Перечисление

"НЕОПРЕДЕЛЕННЫЕ"

"USB"

"СЕТЬ"

ConstraintType

Хром 125+

Тип данных ограничения, представленный OptionConstraint .

Перечисление

"INT_RANGE"
Ограничение диапазона значений OptionType.INT . Свойства min , max и quant OptionConstraint будут long , а его свойство list будет неустановлено.

"FIXED_RANGE"
Ограничение диапазона значений OptionType.FIXED . Свойства min , max и quant OptionConstraint будут иметь double , а его свойство list будет не установлено.

"INT_СПИСОК"
Ограничение на определенный список значений OptionType.INT . Свойство OptionConstraint.list будет содержать long значения, а остальные свойства будут отключены.

"FIXED_LIST"
Ограничение на определенный список значений OptionType.FIXED . Свойство OptionConstraint.list будет содержать double значения, а остальные свойства будут отключены.

"STRING_LIST"
Ограничение на определенный список значений OptionType.STRING . Свойство OptionConstraint.list будет содержать значения DOMString , а остальные свойства будут не заданы.

DeviceFilter

Хром 125+

Характеристики

  • местный

    логическое значение необязательно

    Возвращайте только те сканеры, которые напрямую подключены к компьютеру.

  • безопасный

    логическое значение необязательно

    Возвращайте только те сканеры, которые используют безопасный транспорт, например USB или TLS.

GetOptionGroupsResponse

Хром 125+

Характеристики

  • группы

    OptionGroup [] необязательно

    Если result является SUCCESS , отображается список групп опций в порядке, указанном драйвером сканера.

  • Результат получения групп опций. Если значение этого параметра — SUCCESS , свойство groups будет заполнено.

  • сканерРучка

    нить

    Тот же дескриптор сканера, который был передан в getOptionGroups .

GetScannerListResponse

Хром 125+

Характеристики

  • Результат перечисления. Обратите внимание, что частичные результаты могут быть возвращены, даже если это указывает на ошибку.

  • Возможно пустой список сканеров, соответствующих указанному DeviceFilter .

OpenScannerResponse

Хром 125+

Характеристики

  • параметры

    объект необязательный

    Если resultSUCCESS , обеспечивает сопоставление ключ-значение, где ключ — это опция, специфичная для устройства, а значение — экземпляр ScannerOption .

  • Результат открытия сканера. Если значение этого параметра — SUCCESS , свойства scannerHandle и options будут заполнены.

  • сканерРучка

    строка необязательна

    Если result является SUCCESS , это дескриптор сканера, который можно использовать для дальнейших операций.

  • идентификатор сканера

    нить

    Идентификатор сканера передается в openScanner() .

OperationResult

Хром 125+

Перечисление, указывающее результат каждой операции.

Перечисление

"НЕИЗВЕСТНЫЙ"
Произошла неизвестная или общая ошибка.

"УСПЕХ"
Операция прошла успешно.

"НЕ ПОДДЕРЖИВАЕТСЯ"
Операция не поддерживается.

«ОТМЕНЕНО»
Операция была отменена.

"DEVICE_BUSY"
Устройство занято.

"НЕВЕРНЫЙ"
Либо данные, либо аргумент, переданные методу, недействительны.

"НЕВЕРНЫЙ ТИП"
Указанное значение является неправильным типом данных для базовой опции.

"ЭОФ"
Больше данных нет.

"ADF_JAMMED"
Устройство подачи документов застряло.

"ADF_EMPTY"
Устройство подачи документов пусто.

"COVER_OPEN"
Крышка планшета открыта.

"IO_ERROR"
Произошла ошибка при обмене данными с устройством.

"ДОСТУП ЗАПРЕЩЕН"
Устройство требует аутентификации.

"НЕТ_ПАМЯТИ"
На Chromebook недостаточно памяти для завершения операции.

«НЕДОСТИЖИМЫЙ»
Устройство недоступно.

"ОТСУТСТВУЮЩИЙ"
Устройство отключено.

"ВНУТРЕННЯЯ ОШИБКА"
Ошибка произошла где-то кроме вызывающего приложения.

OptionConstraint

Хром 125+

Характеристики

  • список

    строка[]|число[] необязательно

  • Макс

    номер необязательно

  • мин

    номер необязательно

  • количественный

    номер необязательно

OptionGroup

Хром 125+

Характеристики

  • члены

    нить[]

    Массив имен опций в порядке, указанном драйвером.

  • заголовок

    нить

    Предоставляет печатный заголовок, например «Параметры геометрии».

OptionSetting

Хром 125+

Характеристики

  • имя

    нить

    Указывает имя устанавливаемой опции.

  • Указывает тип данных параметра. Запрошенный тип данных должен соответствовать реальному типу данных базовой опции.

  • ценить

    строка|число|логическое значение|число[] необязательно

    Указывает значение, которое необходимо установить. Оставьте отключенным, чтобы запросить автоматическую настройку для параметров, для которых включена autoSettable . Тип данных, указанный для value должен соответствовать type .

OptionType

Хром 125+

Тип данных опции.

Перечисление

"НЕИЗВЕСТНЫЙ"
Тип данных опции неизвестен. Свойство value будет не установлено.

"БУЛ"
Свойство value будет иметь значение true false.

"ИНТ"
32-битное целое число со знаком. Свойство value будет иметь значение long или long[] в зависимости от того, принимает ли опция более одного значения.

"ЗАФИКСИРОВАННЫЙ"
Двойной в диапазоне -32768-32767,9999 с разрешением 1/65535. Свойство value будет иметь значение double или double[] в зависимости от того, принимает ли опция более одного значения. Двойные значения, которые невозможно представить точно, будут округлены до доступного диапазона и точности.

"НИТЬ"
Последовательность любых байтов, кроме NUL («\0»). Свойство value будет DOMString.

"КНОПКА"
Опция этого типа не имеет значения. Вместо этого установка параметра этого типа вызывает побочный эффект, специфичный для параметра, в драйвере сканера. Например, опция, набираемая с помощью кнопки, может использоваться драйвером сканера для предоставления средств для выбора значений по умолчанию или для указания устройству автоматической подачи документов перейти к следующему листу бумаги.

"ГРУППА"
Вариант группировки. Неважно. Это включено для совместимости, но обычно не возвращается в значениях ScannerOption . Используйте getOptionGroups() , чтобы получить список групп с параметрами их участников.

OptionUnit

Хром 125+

Указывает тип данных для ScannerOption.unit .

Перечисление

«БЕЗЕДИННЫЙ»
Значение представляет собой безразмерное число. Например, это может быть порог.

"ПИКСЕЛЬ"
Значением является количество пикселей, например размеры сканирования.

"КУСОЧЕК"
Значением является количество бит, например, глубина цвета.

"ММ"
Величина измеряется в миллиметрах, например размеры скана.

"ДПИ"
Значение измеряется в точках на дюйм, например, разрешение.

"ПРОЦЕНТ"
Значение представляет собой процент, например, яркость.

«МИКРОСТЕКОНДА»
Величина измеряется в микросекундах, например, время экспозиции.

ReadScanDataResponse

Хром 125+

Характеристики

  • данные

    ArrayBuffer необязательно

    Если resultSUCCESS , содержит следующий фрагмент данных отсканированного изображения. Если result является EOF , он содержит последний фрагмент данных отсканированного изображения.

  • расчетное завершение

    номер необязательно

    Если resultSUCCESS , это оценка того, какой объем всех данных сканирования был доставлен на данный момент, в диапазоне от 0 до 100.

  • работа

    нить

    Предоставляет дескриптор задания, передаваемый в readScanData() .

  • Результат чтения данных. Если его значение равно SUCCESS , то data содержат следующий фрагмент данных изображения (возможно, нулевой длины), готовый для чтения. Если его значение равно EOF , data содержат последний фрагмент данных изображения.

ScannerInfo

Хром 125+

Характеристики

  • тип соединения

    Указывает, как сканер подключен к компьютеру.

  • Uuid устройства

    нить

    Для сопоставления с другими записями ScannerInfo , которые указывают на то же физическое устройство.

  • Форматы изображений

    нить[]

    Массив типов MIME, которые можно запрашивать для возвращаемых сканирований.

  • производитель

    нить

    Производитель сканера.

  • модель

    нить

    Модель сканера, если она доступна, или общее описание.

  • имя

    нить

    Удобочитаемое имя сканера, отображаемое в пользовательском интерфейсе.

  • тип протокола

    нить

    Удобочитаемое описание протокола или драйвера, используемого для доступа к сканеру, например Mopria, WSD или epsonds. Это в первую очередь полезно для предоставления пользователю возможности выбирать между протоколами, если устройство поддерживает несколько протоколов.

  • идентификатор сканера

    нить

    Идентификатор конкретного сканера.

  • безопасный

    логическое значение

    Если это правда, транспорт соединения сканера не может быть перехвачен пассивным прослушивателем, таким как TLS или USB.

ScannerOption

Хром 125+

Характеристики

  • возможность настройки

    Указывает, можно ли изменить параметр и каким образом.

  • ограничение

    OptionConstraint необязательно

    Определяет OptionConstraint для текущего параметра сканера.

  • описание

    нить

    Подробное описание опции.

  • isActive

    логическое значение

    Указывает, что опция активна и ее можно установить или получить. Если значение равно false, свойство value не будет установлено.

  • isAdvanced

    логическое значение

    Указывает, что пользовательский интерфейс не должен отображать этот параметр по умолчанию.

  • isAutoSettable

    логическое значение

    Может автоматически устанавливаться драйвером сканера.

  • isDetectable

    логическое значение

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

  • isEmulated

    логическое значение

    Эмулируется драйвером сканера, если это правда.

  • имя

    нить

    Имя опции, состоящее из строчных букв ASCII, цифр и тире. Диакритические знаки не допускаются.

  • заголовок

    нить

    Печатный однострочный заголовок.

  • Тип данных, содержащийся в свойстве value , который необходим для установки этого параметра.

  • единица

    Единица измерения для этого параметра.

  • ценить

    строка|число|логическое значение|число[] необязательно

    Текущая стоимость опциона, если применимо. Обратите внимание, что тип данных этого свойства должен соответствовать типу данных, указанному в type .

ScanOptions

Характеристики

  • maxImages

    номер необязательно

    Разрешенное количество отсканированных изображений. Значение по умолчанию — 1.

  • mime-типы

    строка[] необязательно

    Типы MIME, принимаемые вызывающей стороной.

ScanResults

Характеристики

  • URL-адреса данных

    нить[]

    Массив URL-адресов изображений данных в форме, которую можно передать как значение «src» в тег изображения.

  • mimeType

    нить

    MIME-тип dataUrls .

SetOptionResult

Хром 125+

Характеристики

  • имя

    нить

    Указывает имя установленной опции.

  • Указывает результат установки параметра.

SetOptionsResponse

Хром 125+

Характеристики

  • параметры

    объект необязательный

    Обновленное сопоставление значений ключа между именами параметров и значениями ScannerOption , содержащими новую конфигурацию после попытки установить все предоставленные параметры. Оно имеет ту же структуру, что и свойство options в OpenScannerResponse .

    Это свойство будет установлено, даже если некоторые параметры не были установлены успешно, но будет отключено, если получить обновленную конфигурацию не удастся (например, если сканер отключится в середине сканирования).

  • Результаты

    Массив результатов, по одному для каждого переданного OptionSetting .

  • сканерРучка

    нить

    Предоставляет дескриптор сканера, передаваемый в setOptions() .

StartScanOptions

Хром 125+

Характеристики

  • формат

    нить

    Указывает тип MIME для возврата отсканированных данных.

  • maxReadSize

    номер необязательно

    Если указано ненулевое значение, максимальное количество сканируемых байтов, возвращаемых в одном ответе readScanData ограничивается этим значением. Наименьшее допустимое значение — 32768 (32 КБ). Если это свойство не указано, размер возвращаемого фрагмента может быть равен всему отсканированному изображению.

StartScanResponse

Хром 125+

Характеристики

  • работа

    строка необязательна

    Если resultSUCCESS , предоставляет дескриптор, который можно использовать для чтения данных сканирования или отмены задания.

  • Результат запуска сканирования. Если значение этого параметра — SUCCESS , свойство job будет заполнено.

  • сканерРучка

    нить

    Предоставляет тот же дескриптор сканера, который был передан в startScan() .

Методы

cancelScan()

Обещание Chrome 125+
chrome.documentScan.cancelScan(
  job: string,
  callback?: function,
)

Отменяет начатое сканирование и возвращает обещание, которое разрешается с помощью объекта CancelScanResponse . Если используется обратный вызов, вместо этого ему передается объект.

Параметры

  • работа

    нить

    Дескриптор активного задания сканирования, ранее возвращенного в результате вызова startScan .

  • перезвонить

    функция необязательна

    Параметр callback выглядит так:

    (response: CancelScanResponse)=>void

Возврат

  • Обещание < CancelScanResponse >

    Промисы поддерживаются только для Manifest V3 и более поздних версий, на других платформах необходимо использовать обратные вызовы.

closeScanner()

Обещание Chrome 125+
chrome.documentScan.closeScanner(
  scannerHandle: string,
  callback?: function,
)

Закрывает сканер с переданным дескриптором и возвращает обещание, которое разрешается с помощью объекта CloseScannerResponse . Если используется обратный вызов, вместо этого ему передается объект. Даже если ответ не является успешным, предоставленный дескриптор становится недействительным и не должен использоваться для дальнейших операций.

Параметры

  • сканерРучка

    нить

    Указывает дескриптор открытого сканера, который ранее был возвращен в результате вызова openScanner .

  • перезвонить

    функция необязательна

    Параметр callback выглядит так:

    (response: CloseScannerResponse)=>void

Возврат

  • Обещание< CloseScannerResponse >

    Промисы поддерживаются только для Manifest V3 и более поздних версий, на других платформах необходимо использовать обратные вызовы.

getOptionGroups()

Обещание Chrome 125+
chrome.documentScan.getOptionGroups(
  scannerHandle: string,
  callback?: function,
)

Получает имена групп и параметры участников со сканера, ранее открытого openScanner . Этот метод возвращает обещание, которое разрешается с помощью объекта GetOptionGroupsResponse . Если этой функции передается обратный вызов, вместо этого ей передаются возвращаемые данные.

Параметры

  • сканерРучка

    нить

    Дескриптор открытого сканера, возвращенный в результате вызова openScanner .

  • перезвонить

    функция необязательна

    Параметр callback выглядит так:

    (response: GetOptionGroupsResponse)=>void

Возврат

  • Обещание < GetOptionGroupsResponse >

    Промисы поддерживаются только для Manifest V3 и более поздних версий, на других платформах необходимо использовать обратные вызовы.

getScannerList()

Обещание Chrome 125+
chrome.documentScan.getScannerList(
  filter: DeviceFilter,
  callback?: function,
)

Получает список доступных сканеров и возвращает Promise, который разрешается с помощью объекта GetScannerListResponse . Если этой функции передается обратный вызов, вместо этого ей передаются возвращаемые данные.

Параметры

Возврат

  • Обещание < GetScannerListResponse >

    Промисы поддерживаются только для Manifest V3 и более поздних версий, на других платформах необходимо использовать обратные вызовы.

openScanner()

Обещание Chrome 125+
chrome.documentScan.openScanner(
  scannerId: string,
  callback?: function,
)

Открывает сканер для монопольного доступа и возвращает обещание, которое разрешается с помощью объекта OpenScannerResponse . Если этой функции передается обратный вызов, вместо этого ей передаются возвращаемые данные.

Параметры

  • идентификатор сканера

    нить

    Идентификатор открываемого сканера. Это значение возвращается из предыдущего вызова getScannerList .

  • перезвонить

    функция необязательна

    Параметр callback выглядит так:

    (response: OpenScannerResponse)=>void

Возврат

  • Обещание< OpenScannerResponse >

    Промисы поддерживаются только для Manifest V3 и более поздних версий, на других платформах необходимо использовать обратные вызовы.

readScanData()

Обещание Chrome 125+
chrome.documentScan.readScanData(
  job: string,
  callback?: function,
)

Считывает следующий фрагмент доступных данных изображения из активного дескриптора задания и возвращает Promise, который разрешается с помощью объекта ReadScanDataResponse . Если используется обратный вызов, вместо этого ему передается объект.

**Примечание.**Действительно, если результатом ответа будет SUCCESS с элементом data нулевой длины. Это означает, что сканер все еще работает, но дополнительные данные еще не готовы. Вызывающему абоненту следует подождать некоторое время и повторить попытку.

Когда задание сканирования завершится, ответ будет иметь значение результата EOF . Этот ответ может содержать последний ненулевой элемент data .

Параметры

  • работа

    нить

    Дескриптор активного задания, ранее возвращенный из startScan .

  • перезвонить

    функция необязательна

    Параметр callback выглядит так:

    (response: ReadScanDataResponse)=>void

Возврат

  • Обещание <ReadScanDataResponse>

    Промисы поддерживаются только для Manifest V3 и более поздних версий, на других платформах необходимо использовать обратные вызовы.

scan()

Обещать
chrome.documentScan.scan(
  options: ScanOptions,
  callback?: function,
)

Выполняет сканирование документа и возвращает обещание, которое разрешается с помощью объекта ScanResults . Если этой функции передается обратный вызов, вместо этого ей передаются возвращаемые данные.

Параметры

Возврат

  • Хром 96+

    Промисы поддерживаются только для Manifest V3 и более поздних версий, на других платформах необходимо использовать обратные вызовы.

setOptions()

Обещание Chrome 125+
chrome.documentScan.setOptions(
  scannerHandle: string,
  options: OptionSetting[],
  callback?: function,
)

Устанавливает параметры для указанного сканера и возвращает Promise, который разрешается с помощью объекта SetOptionsResponse , содержащего результат попытки установить каждое значение в порядке переданного объекта OptionSetting . Если используется обратный вызов, вместо этого ему передается объект.

Параметры

  • сканерРучка

    нить

    Ручка сканера для настройки параметров. Это должно быть значение, ранее возвращенное при вызове openScanner .

  • Список объектов OptionSetting , которые будут применены к сканеру.

  • перезвонить

    функция необязательна

    Параметр callback выглядит так:

    (response: SetOptionsResponse)=>void

Возврат

  • Обещание < SetOptionsResponse >

    Промисы поддерживаются только для Manifest V3 и более поздних версий, на других платформах необходимо использовать обратные вызовы.

startScan()

Обещание Chrome 125+
chrome.documentScan.startScan(
  scannerHandle: string,
  options: StartScanOptions,
  callback?: function,
)

Запускает сканирование на указанном сканере и возвращает Promise, который разрешается с помощью StartScanResponse . Если используется обратный вызов, вместо этого ему передается объект. Если вызов прошел успешно, ответ включает дескриптор задания, который можно использовать в последующих вызовах для чтения данных сканирования или отмены сканирования.

Параметры

  • сканерРучка

    нить

    Ручка открытого сканера. Это должно быть значение, ранее возвращенное при вызове openScanner .

  • Объект StartScanOptions , указывающий параметры, которые будут использоваться для сканирования. Свойство StartScanOptions.format должно соответствовать одной из записей, возвращаемых в ScannerInfo сканера.

  • перезвонить

    функция необязательна

    Параметр callback выглядит так:

    (response: StartScanResponse)=>void

Возврат

  • Обещание < StartScanResponse >

    Промисы поддерживаются только для Manifest V3 и более поздних версий, на других платформах необходимо использовать обратные вызовы.