chrome.documentScan

refresh date: 2026-09-25 robots: noindex

Описание

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

Разрешения

documentScan

Доступность

Chrome 44 и более поздних версий Только для ChromeOS

Document Scan API

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

Типы

CancelScanResponse

Chrome 125 и более поздних версий

Свойства

  • работа

    string

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

  • Результат

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

CloseScannerResponse

Chrome 125 и более поздних версий

Свойства

  • Результат

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

  • scannerHandle

    string

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

Configurability

Chrome 125 и более поздних версий

Как можно изменить вариант.

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

"NOT_CONFIGURABLE"
Параметр доступен только для чтения.

SOFTWARE_CONFIGURABLE
Параметр можно задать в программном обеспечении.

"HARDWARE_CONFIGURABLE"
Пользователь может задать параметр, нажав кнопку на сканере.

ConnectionType

Chrome 125 и более поздних версий

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

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

"UNSPECIFIED"

USB

"NETWORK"

ConstraintType

Chrome 125 и более поздних версий

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

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

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

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

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

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

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

DeviceFilter

Chrome 125 и более поздних версий

Свойства

  • локальный

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

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

  • безопасно

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

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

GetOptionGroupsResponse

Chrome 125 и более поздних версий

Свойства

  • группы

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

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

  • Результат

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

  • scannerHandle

    string

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

GetScannerListResponse

Chrome 125 и более поздних версий

Свойства

  • Результат

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

  • сканеры

    Список сканеров, соответствующих указанному DeviceFilter (может быть пустым).

OpenScannerResponse

Chrome 125 и более поздних версий

Свойства

  • Параметры

    Объект (необязательно)

    Если result – это SUCCESS, предоставляет сопоставление ключ-значение, где ключ – это параметр, относящийся к устройству, а значение – экземпляр ScannerOption.

  • Результат

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

  • scannerHandle

    Строка (необязательно)

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

  • scannerId

    string

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

OperationResult

Chrome 125 и более поздних версий

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

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

UNKNOWN
Произошла неизвестная или общая ошибка.

SUCCESS
Операция выполнена успешно.

"UNSUPPORTED"
Операция не поддерживается.

"CANCELLED"
Операция отменена.

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

INVALID
Данные или аргумент, переданные методу, недействительны.

"WRONG_TYPE"
Указанное значение относится к неправильному типу данных для базового варианта.

EOF
Данные больше недоступны.

ADF_JAMMED
Замятие бумаги в устройстве подачи документов.

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

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

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

ACCESS_DENIED
Устройство требует аутентификации.

"NO_MEMORY"
На устройстве Chromebook недостаточно памяти для выполнения операции.

UNREACHABLE
Устройство недоступно.

"MISSING"
Устройство отключено.

INTERNAL_ERROR
Произошла ошибка за пределами вызывающего приложения.

OptionConstraint

Chrome 125 и более поздних версий

Свойства

  • list

    string[] | number[] необязательно

  • Функция max

    number (необязательно)

  • мин.

    number (необязательно)

  • quant

    number (необязательно)

OptionGroup

Chrome 125 и более поздних версий

Свойства

  • участники

    string[]

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

  • название

    string

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

OptionSetting

Chrome 125 и более поздних версий

Свойства

  • name

    string

    Указывает название параметра, который нужно задать.

  • тип

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

  • value

    string | number | boolean | number[] optional

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

OptionType

Chrome 125 и более поздних версий

Тип данных параметра.

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

UNKNOWN
Тип данных параметра неизвестен. Свойство value будет удалено.

BOOL
Свойство value будет иметь значение truefalse.

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

"FIXED"
Число с плавающей запятой двойной точности в диапазоне от -32768 до 32767,9999 с разрешением 1/65535. Свойство value будет иметь тип double или double[] в зависимости от того, принимает ли параметр более одного значения. Значения с двойной точностью, которые не могут быть представлены точно, будут округлены до доступного диапазона и точности.

"STRING"
Последовательность любых байтов, кроме NUL ('\0'). Свойство value будет иметь тип DOMString.

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

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

OptionUnit

Chrome 125 и более поздних версий

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

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

"UNITLESS"
Значение является числом без единицы измерения. Например, это может быть пороговое значение.

"PIXEL"
Значение в пикселях, например размеры сканирования.

"BIT"
Значение – количество битов, например глубина цвета.

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

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

PERCENT
Значение в процентах, например яркость.

"MICROSECOND"
Значение измеряется в микросекундах, например время экспозиции.

ReadScanDataResponse

Chrome 125 и более поздних версий

Свойства

  • делал.

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

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

  • estimatedCompletion

    number (необязательно)

    Если result – SUCCESS, то это приблизительная доля от общего объема данных сканирования, доставленных на данный момент (от 0 до 100).

  • работа

    string

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

  • Результат

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

ScannerInfo

Chrome 125 и более поздних версий

Свойства

  • connectionType

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

  • deviceUuid

    string

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

  • imageFormats

    string[]

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

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

    string

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

  • модель

    string

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

  • name

    string

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

  • protocolType

    string

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

  • scannerId

    string

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

  • безопасно

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

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

ScannerOption

Chrome 125 и более поздних версий

Свойства

  • настраиваемость

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

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

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

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

  • описание

    string

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

  • isActive

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

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

  • isAdvanced

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

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

  • isAutoSettable

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

    Может быть автоматически задано драйвером сканера.

  • isDetectable

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

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

  • isEmulated

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

    Если установлено значение True, эмулируется драйвером сканера.

  • name

    string

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

  • название

    string

    Название, которое можно напечатать в одну строку.

  • тип

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

  • единицы

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

  • value

    string | number | boolean | number[] optional

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

ScanOptions

Свойства

  • maxImages

    number (необязательно)

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

  • mimeTypes

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

    MIME-типы, которые принимаются вызывающим объектом.

ScanResults

Свойства

  • dataUrls

    string[]

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

  • mimeType

    string

    MIME-тип dataUrls.

SetOptionResult

Chrome 125 и более поздних версий

Свойства

  • name

    string

    Название заданного параметра.

  • Результат

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

SetOptionsResponse

Chrome 125 и более поздних версий

Свойства

  • Параметры

    Объект (необязательно)

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

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

  • результаты

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

  • scannerHandle

    string

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

StartScanOptions

Chrome 125 и более поздних версий

Свойства

  • format

    string

    Указывает MIME-тип, в котором возвращаются отсканированные данные.

  • maxReadSize

    number (необязательно)

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

StartScanResponse

Chrome 125 и более поздних версий

Свойства

  • работа

    Строка (необязательно)

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

  • Результат

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

  • scannerHandle

    string

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

Методы

cancelScan()

Promise Chrome 125+
chrome.documentScan.cancelScan(
  job: string,
  callback?: function,
)
: Promise<CancelScanResponse>

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

Параметры

  • работа

    string

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

  • обратный вызов

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

    Параметр callback выглядит следующим образом:

    (response: CancelScanResponse) => void

Возвраты

  • Возвращает объект Promise, который распознается с результатом.

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

closeScanner()

Promise Chrome 125+
chrome.documentScan.closeScanner(
  scannerHandle: string,
  callback?: function,
)
: Promise<CloseScannerResponse>

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

Параметры

  • scannerHandle

    string

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

  • обратный вызов

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

    Параметр callback выглядит следующим образом:

    (response: CloseScannerResponse) => void

Возвраты

  • Возвращает объект Promise, который распознается с результатом.

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

getOptionGroups()

Promise Chrome 125+
chrome.documentScan.getOptionGroups(
  scannerHandle: string,
  callback?: function,
)
: Promise<GetOptionGroupsResponse>

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

Параметры

  • scannerHandle

    string

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

  • обратный вызов

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

    Параметр callback выглядит следующим образом:

    (response: GetOptionGroupsResponse) => void

Возвраты

  • Возвращает объект Promise, который распознается с результатом.

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

getScannerList()

Promise Chrome 125+
chrome.documentScan.getScannerList(
  filter: DeviceFilter,
  callback?: function,
)
: Promise<GetScannerListResponse>

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

Параметры

  • фильтр

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

  • обратный вызов

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

    Параметр callback выглядит следующим образом:

    (response: GetScannerListResponse) => void

Возвраты

  • Возвращает объект Promise, который преобразуется в результат и список сканеров.

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

openScanner()

Promise Chrome 125+
chrome.documentScan.openScanner(
  scannerId: string,
  callback?: function,
)
: Promise<OpenScannerResponse>

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

Параметры

  • scannerId

    string

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

  • обратный вызов

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

    Параметр callback выглядит следующим образом:

    (response: OpenScannerResponse) => void

Возвраты

  • Возвращает объект Promise, который распознается с результатом.

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

readScanData()

Promise Chrome 125+
chrome.documentScan.readScanData(
  job: string,
  callback?: function,
)
: Promise<ReadScanDataResponse>

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

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

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

Параметры

  • работа

    string

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

  • обратный вызов

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

    Параметр callback выглядит следующим образом:

    (response: ReadScanDataResponse) => void

Возвраты

  • Возвращает объект Promise, который распознается с результатом.

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

scan()

Promise
chrome.documentScan.scan(
  options: ScanOptions,
  callback?: function,
)
: Promise<ScanResults>

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

Параметры

  • Параметры

    Объект, содержащий параметры сканирования.

  • обратный вызов

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

    Параметр callback выглядит следующим образом:

    (result: ScanResults) => void

Возвраты

  • Promise<ScanResults>

    Chrome 96 и более поздних версий;

    Возвращает объект Promise, который распознается с результатами сканирования.

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

setOptions()

Promise Chrome 125+
chrome.documentScan.setOptions(
  scannerHandle: string,
  options: OptionSetting[],
  callback?: function,
)
: Promise<SetOptionsResponse>

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

Параметры

  • scannerHandle

    string

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

  • Параметры

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

  • обратный вызов

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

    Параметр callback выглядит следующим образом:

    (response: SetOptionsResponse) => void

Возвраты

  • Возвращает объект Promise, который распознается с результатом.

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

startScan()

Promise Chrome 125+
chrome.documentScan.startScan(
  scannerHandle: string,
  options: StartScanOptions,
  callback?: function,
)
: Promise<StartScanResponse>

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

Параметры

  • scannerHandle

    string

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

  • Параметры

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

  • обратный вызов

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

    Параметр callback выглядит следующим образом:

    (response: StartScanResponse) => void

Возвраты

  • Возвращает объект Promise, который распознается с результатом.

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