chrome.documentScan

Descripción

Usa la API de chrome.documentScan para descubrir y recuperar imágenes desde los escáneres de documentos adjuntos.

Permisos

documentScan

Disponibilidad

Chrome 44 y versiones posteriores Solo para ChromeOS

API de Document Scan

La API de Document Scan está diseñada para permitir que las apps y extensiones vean el contenido de los documentos impresos en un escáner de documentos adjunto.

Tipos

CancelScanResponse

Chrome 125 y versiones posteriores

Propiedades

  • trabajo

    cadena

    Proporciona el mismo controlador de trabajo que se pasó a cancelScan().

  • resultado

    Resultado del análisis de cancelación del backend. Si el resultado es OperationResult.SUCCESS o OperationResult.CANCELLED, se canceló el análisis y está listo para iniciar uno nuevo. Si el resultado es OperationResult.DEVICE_BUSY , el escáner aún está procesando la cancelación solicitada. El llamador debe esperar unos momentos y volver a realizar la solicitud. Otros valores de resultado indican un error permanente que no se debe reintentar.

CloseScannerResponse

Chrome 125 y versiones posteriores

Propiedades

  • resultado

    El resultado que se obtiene al cerrar el escáner. Incluso si este valor no es SUCCESS, el identificador no será válido y no se debe usar para ninguna otra operación.

  • scannerHandle

    cadena

    El mismo controlador de análisis que se pasó a closeScanner.

Configurability

Chrome 125 y versiones posteriores

Cómo se puede cambiar una opción

Enum

"NOT_CONFIGURABLE"
La opción es de solo lectura.

"SOFTWARE_CONFIGURABLE"
La opción se puede configurar en software.

"HARDWARE_CONFIGURABLE"
La opción se puede configurar cuando el usuario activa o presiona un botón del escáner.

ConnectionType

Chrome 125 y versiones posteriores

Indica cómo se conectó el escáner a la computadora.

Enum

“UNSPECIFIED”

ConstraintType

Chrome 125 y versiones posteriores

El tipo de datos de restricción representado por una OptionConstraint.

Enum

"INT_RANGE"
La restricción en un rango de valores OptionType.INT. Las propiedades min, max y quant de OptionConstraint serán long y no se establecerá su propiedad list.

"FIXED_RANGE"
La restricción en un rango de valores OptionType.FIXED. Las propiedades min, max y quant de OptionConstraint serán double, y se desactivará su propiedad list.

"INT_LIST"
La restricción en una lista específica de valores OptionType.INT. La propiedad OptionConstraint.list contendrá valores long y no se establecerá el resto de las propiedades.

"FIXED_LIST"
La restricción en una lista específica de valores OptionType.FIXED. La propiedad OptionConstraint.list contendrá valores double y no se establecerá el resto de las propiedades.

"STRING_LIST"
La restricción en una lista específica de valores OptionType.STRING. La propiedad OptionConstraint.list contendrá valores DOMString y no se establecerá el resto de las propiedades.

DeviceFilter

Chrome 125 y versiones posteriores

Propiedades

  • local

    booleano opcional

    Solo devuelve los escáneres conectados directamente a la computadora.

  • seguro

    booleano opcional

    Solo muestra escáneres que usan un transporte seguro, como USB o TLS.

GetOptionGroupsResponse

Chrome 125 y versiones posteriores

Propiedades

  • grupos

    OptionGroup[] opcional

    Si result es SUCCESS, proporciona una lista de grupos de opciones en el orden que proporciona el controlador del escáner.

  • resultado

    Es el resultado de obtener los grupos de opciones. Si el valor es SUCCESS, se propagará la propiedad groups.

  • scannerHandle

    cadena

    El mismo controlador de análisis que se pasó a getOptionGroups.

GetScannerListResponse

Chrome 125 y versiones posteriores

Propiedades

  • resultado

    El resultado de la enumeración. Ten en cuenta que se podrían mostrar resultados parciales incluso si esto indica un error.

  • escáneres

    Una lista posiblemente vacía de escáneres que coinciden con el DeviceFilter proporcionado.

OpenScannerResponse

Chrome 125 y versiones posteriores

Propiedades

  • Opciones

    objeto opcional

    Si result es SUCCESS, proporciona una asignación de par clave-valor en la que la clave es una opción específica del dispositivo y el valor es una instancia de ScannerOption.

  • resultado

    El resultado que se obtiene al abrir el escáner. Si el valor es SUCCESS, se propagarán las propiedades scannerHandle y options.

  • scannerHandle

    cadena opcional

    Si result es SUCCESS, un controlador para el escáner que se puede usar en otras operaciones.

  • scannerId

    cadena

    El ID del escáner se pasó a openScanner().

OperationResult

Chrome 125 y versiones posteriores

Una enumeración que indica el resultado de cada operación

Enum

"UNKNOWN"
Se produjo un error desconocido o genérico.

"SUCCESS"
La operación se realizó correctamente.

"UNSUPPORTED"
No se admite la operación.

"CANCELLED"
Se canceló la operación.

"DEVICE_BUSY"
El dispositivo está ocupado.

"INVALID"
Los datos o el argumento que se pasó al método no son válidos.

"WRONG_TYPE"
El valor proporcionado es el tipo de datos incorrecto para la opción subyacente.

"EOF"
No hay más datos disponibles.

"ADF_JAMMED"
El alimentador de documentos está atascado.

"ADF_EMPTY"
El feed de documentos está vacío.

"COVER_OPEN"
La cubierta de la cama plana está abierta.

"IO_ERROR"
Se produjo un error durante la comunicación con el dispositivo.

"ACCESS_DENIED"
El dispositivo requiere autenticación.

"NO_MEMORY"
La Chromebook no tiene suficiente memoria para completar la operación.

"UNREACHABLE"
No se puede acceder al dispositivo.

"MISSING"
El dispositivo está desconectado.

"INTERNAL_ERROR"
Se produjo un error en otro lugar que no es la aplicación que realiza la llamada.

OptionConstraint

Chrome 125 y versiones posteriores

Propiedades

  • list

    string[]|number[] optional

  • temp.

    número opcional

  • min

    número opcional

  • cuantitativo

    número opcional

OptionGroup

Chrome 125 y versiones posteriores

Propiedades

  • miembros.

    string[]

    Un array de nombres de opciones en el orden proporcionado por el conductor.

  • title

    cadena

    Proporciona un título imprimible, por ejemplo, “Opciones de geometría”.

OptionSetting

Chrome 125 y versiones posteriores

Propiedades

  • name

    cadena

    Indica el nombre de la opción que se debe configurar.

  • Tipo

    Indica el tipo de datos de la opción. El tipo de datos solicitado debe coincidir con el tipo de datos real de la opción subyacente.

  • value

    string|number|boolean|number[] optional

    Indica el valor que se debe establecer. No la establezcas para solicitar la configuración automática de las opciones que tienen habilitado autoSettable. El tipo de datos proporcionado para value debe coincidir con type.

OptionType

Chrome 125 y versiones posteriores

Es el tipo de datos de una opción.

Enum

"UNKNOWN"
El tipo de datos de la opción es desconocido. Se desactivará la propiedad value.

"BOOL"
La propiedad value tendrá un valor truefalse.

"INT"
Un número entero de 32 bits con firma. La propiedad value será larga o long[], dependiendo de si la opción admite más de un valor.

"FIXED"
Es un doble dentro del rango -32768-32767.9999 con una resolución de 1/65535. La propiedad value será doble o doble [] dependiendo de si la opción admite más de un valor. Los valores dobles que no se pueden representar con exactitud se redondearán al rango y la precisión disponibles.

"STRING"
Secuencia de cualquier byte excepto NUL ("\0"). La propiedad value será una DOMString.

"BUTTON"
Una opción de este tipo no tiene valor. En su lugar, configurar una opción de este tipo provoca un efecto secundario específico de la opción en el controlador del escáner. Por ejemplo, un controlador de escáner podría usar una opción de tipo botón para proporcionar un medio para seleccionar los valores predeterminados o indicar a un alimentador automático de documentos que avance a la siguiente hoja de papel.

"GROUP"
Opción de agrupación. No tiene valor. Se incluye por motivos de compatibilidad, pero, por lo general, no se muestra en valores ScannerOption. Usa getOptionGroups() para recuperar la lista de grupos con sus opciones de miembros.

OptionUnit

Chrome 125 y versiones posteriores

Indica el tipo de datos para ScannerOption.unit.

Enum

"UNIDAD"
El valor es un número sin unidades. Por ejemplo, puede ser un umbral.

"PIXEL"
El valor es una cantidad de píxeles, por ejemplo, las dimensiones de análisis.

“BIT”
El valor es la cantidad de bits, por ejemplo, la profundidad de color.

"MM"
El valor se mide en milímetros, por ejemplo, las dimensiones de escaneo.

"DPI"
El valor se mide en puntos por pulgada, por ejemplo, la resolución.

"PERCENT"
El valor es un porcentaje, por ejemplo, el brillo.

"MICROSEGUNDO"
El valor se mide en microsegundos, por ejemplo, el tiempo de exposición.

ReadScanDataResponse

Chrome 125 y versiones posteriores

Propiedades

  • datos

    ArrayBuffer opcional

    Si result es SUCCESS, contiene el siguiente fragmento de los datos de la imagen escaneada. Si result es EOF, contiene el último fragmento de los datos de la imagen analizada.

  • estimatedCompletion

    número opcional

    Si result es SUCCESS, una estimación de la cantidad total de datos de análisis que se entregó hasta el momento, en el rango de 0 a 100.

  • trabajo

    cadena

    Proporciona el controlador de trabajo que se pasa a readScanData().

  • resultado

    Es el resultado de la lectura de datos. Si su valor es SUCCESS, data contiene el siguiente fragmento (posiblemente de longitud cero) de datos de imagen que está listo para la lectura. Si su valor es EOF, data contiene el último fragmento de datos de imagen.

ScannerInfo

Chrome 125 y versiones posteriores

Propiedades

  • connectionType

    Indica cómo se conectó el escáner a la computadora.

  • deviceUuid

    cadena

    Para establecer coincidencias con otras entradas de ScannerInfo que apuntan al mismo dispositivo físico.

  • imageFormats

    string[]

    Un array de tipos de MIME que se puede solicitar para los análisis mostrados.

  • fabricante

    cadena

    El fabricante del escáner.

  • model

    cadena

    El modelo del escáner, si está disponible, o una descripción genérica

  • name

    cadena

    Es un nombre legible para que el escáner lo muestre en la IU.

  • protocolType

    cadena

    Una descripción legible del protocolo o controlador que se usa para acceder al escáner, como Mopria, WSD o epsonds. Esto es útil principalmente para permitir que un usuario elija entre protocolos si un dispositivo admite varios protocolos.

  • scannerId

    cadena

    El ID de un escáner específico.

  • seguro

    boolean

    Si es verdadero, un objeto de escucha pasivo, como TLS o USB, no puede interceptar el transporte de la conexión de escáner.

ScannerOption

Chrome 125 y versiones posteriores

Propiedades

  • configuración

    Indica si se puede cambiar la opción y cómo.

  • restricción

    Define OptionConstraint en la opción de análisis actual.

  • description

    cadena

    Una descripción más larga de la opción.

  • isActive

    boolean

    Indica que la opción está activa y se puede configurar o recuperar. Si es falso, no se establecerá la propiedad value.

  • isAdvanced

    boolean

    Indica que la IU no debería mostrar esta opción de forma predeterminada.

  • isAutoSettable

    boolean

    El controlador del escáner puede establecerlo automáticamente.

  • isDetectable

    boolean

    Indica que esta opción se puede detectar desde el software.

  • isEmulated

    boolean

    El controlador del escáner lo emula si es verdadero.

  • name

    cadena

    El nombre de la opción debe contener letras minúsculas ASCII, números y guiones. No se permiten los signos diacríticos.

  • title

    cadena

    Es un título imprimible de una línea.

  • Tipo

    Es el tipo de datos contenido en la propiedad value, que es necesario para configurar esta opción.

  • Unidad

    La unidad de medida para esta opción.

  • value

    string|number|boolean|number[] optional

    El valor actual de la opción, si es relevante. Ten en cuenta que el tipo de datos de esta propiedad debe coincidir con el tipo de datos especificado en type.

ScanOptions

Propiedades

  • maxImages

    número opcional

    La cantidad permitida de imágenes analizadas. El valor predeterminado es 1.

  • mimeTypes

    string[] opcional

    Los tipos de MIME que acepta el emisor.

ScanResults

Propiedades

  • dataUrls

    string[]

    Es un array de URLs de imágenes de datos en un formato que se puede pasar como el valor "src" a una etiqueta de imagen.

  • mimeType

    cadena

    Es el tipo de MIME de dataUrls.

SetOptionResult

Chrome 125 y versiones posteriores

Propiedades

  • name

    cadena

    Indica el nombre de la opción que se configuró.

  • resultado

    Indica el resultado de configurar la opción.

SetOptionsResponse

Chrome 125 y versiones posteriores

Propiedades

  • Opciones

    objeto opcional

    Una asignación de par clave-valor actualizada de los nombres de las opciones a los valores ScannerOption que contienen la nueva configuración después de intentar establecer todas las opciones proporcionadas Tiene la misma estructura que la propiedad options en OpenScannerResponse.

    Esta propiedad se establecerá incluso si algunas opciones no se configuraron correctamente, pero no se establecerá si falla la recuperación de la configuración actualizada (por ejemplo, si se desconecta el escáner en medio del análisis).

  • resultados

    Un array de resultados, uno para cada uno de los OptionSetting pasados

  • scannerHandle

    cadena

    Proporciona el controlador del análisis que se pasa a setOptions().

StartScanOptions

Chrome 125 y versiones posteriores

Propiedades

  • formato

    cadena

    Especifica el tipo de MIME en el que se mostrarán los datos analizados.

  • maxReadSize

    número opcional

    Si se especifica un valor distinto de cero, limita la cantidad máxima de bytes analizados que se muestran en una sola respuesta de readScanData para ese valor. El valor más pequeño permitido es 32,768 (32 KB). Si no se especifica esta propiedad, el tamaño de un fragmento mostrado puede ser tan grande como toda la imagen escaneada.

StartScanResponse

Chrome 125 y versiones posteriores

Propiedades

  • trabajo

    cadena opcional

    Si result es SUCCESS, proporciona un controlador que se puede usar para leer datos de análisis o cancelar el trabajo.

  • resultado

    El resultado que se obtiene cuando se inicia un análisis. Si el valor es SUCCESS, se propagará la propiedad job.

  • scannerHandle

    cadena

    Proporciona el mismo controlador de análisis que se pasó a startScan().

Métodos

cancelScan()

Promesa Chrome 125 y versiones posteriores
chrome.documentScan.cancelScan(
  job: string,
  callback?: function,
)

Cancela un análisis iniciado y muestra una promesa que se resuelve con un objeto CancelScanResponse. Si se usa una devolución de llamada, se le pasa el objeto en su lugar.

Parámetros

  • trabajo

    cadena

    El controlador de un trabajo de análisis activo que antes se mostró de una llamada a startScan.

  • callback

    Función opcional

    El parámetro callback se ve de la siguiente manera:

    (response: CancelScanResponse)=>void

Devuelve

  • Las promesas solo son compatibles con Manifest V3 y versiones posteriores; otras plataformas deben usar devoluciones de llamada.

closeScanner()

Promesa Chrome 125 y versiones posteriores
chrome.documentScan.closeScanner(
  scannerHandle: string,
  callback?: function,
)

Cierra el escáner con el controlador que se pasó y muestra una promesa que se resuelve con un objeto CloseScannerResponse. Si se usa una devolución de llamada, se le pasa el objeto en su lugar. Incluso si la respuesta no es correcta, el identificador proporcionado deja de ser válido y no debe usarse en otras operaciones.

Parámetros

  • scannerHandle

    cadena

    Especifica el controlador de un escáner abierto que se mostró anteriormente de una llamada a openScanner.

  • callback

    Función opcional

    El parámetro callback se ve de la siguiente manera:

    (response: CloseScannerResponse)=>void

Devuelve

  • Las promesas solo son compatibles con Manifest V3 y versiones posteriores; otras plataformas deben usar devoluciones de llamada.

getOptionGroups()

Promesa Chrome 125 y versiones posteriores
chrome.documentScan.getOptionGroups(
  scannerHandle: string,
  callback?: function,
)

Obtiene los nombres de los grupos y las opciones de miembros de un análisis que abrió openScanner. Este método muestra una promesa que se resuelve con un objeto GetOptionGroupsResponse. Si se pasa una devolución de llamada a esta función, se le pasan los datos que se muestran en su lugar.

Parámetros

Devuelve

  • Las promesas solo son compatibles con Manifest V3 y versiones posteriores; otras plataformas deben usar devoluciones de llamada.

getScannerList()

Promesa Chrome 125 y versiones posteriores
chrome.documentScan.getScannerList(
  filter: DeviceFilter,
  callback?: function,
)

Obtiene la lista de escáneres disponibles y muestra una promesa que se resuelve con un objeto GetScannerListResponse. Si se pasa una devolución de llamada a esta función, se le pasan los datos que se muestran en su lugar.

Parámetros

Devuelve

  • Las promesas solo son compatibles con Manifest V3 y versiones posteriores; otras plataformas deben usar devoluciones de llamada.

openScanner()

Promesa Chrome 125 y versiones posteriores
chrome.documentScan.openScanner(
  scannerId: string,
  callback?: function,
)

Abre un escáner para obtener acceso exclusivo y muestra una promesa que se resuelve con un objeto OpenScannerResponse. Si se pasa una devolución de llamada a esta función, se le pasan los datos que se muestran en su lugar.

Parámetros

  • scannerId

    cadena

    El ID de un escáner que se abrirá. Este valor es uno que se muestra en una llamada anterior a getScannerList.

  • callback

    Función opcional

    El parámetro callback se ve de la siguiente manera:

    (response: OpenScannerResponse)=>void

Devuelve

  • Las promesas solo son compatibles con Manifest V3 y versiones posteriores; otras plataformas deben usar devoluciones de llamada.

readScanData()

Promesa Chrome 125 y versiones posteriores
chrome.documentScan.readScanData(
  job: string,
  callback?: function,
)

Lee el siguiente fragmento de datos de imagen disponible desde un controlador de trabajo activo y muestra una promesa que se resuelve con un objeto ReadScanDataResponse. Si se usa una devolución de llamada, se le pasa el objeto en su lugar.

**Nota:**Es válido que un resultado de respuesta sea SUCCESS con un miembro de data de longitud cero. Esto significa que el escáner aún funciona, pero aún no tiene datos adicionales listos. El emisor debería esperar unos momentos y volver a intentarlo.

Cuando se complete el trabajo de análisis, la respuesta tendrá el valor de resultado de EOF. Esta respuesta puede contener un miembro final data que no sea cero.

Parámetros

Devuelve

  • Las promesas solo son compatibles con Manifest V3 y versiones posteriores; otras plataformas deben usar devoluciones de llamada.

scan()

Promesa
chrome.documentScan.scan(
  options: ScanOptions,
  callback?: function,
)

Analiza un documento y muestra una promesa que se resuelve con un objeto ScanResults. Si se pasa una devolución de llamada a esta función, en su lugar se le pasan los datos que se muestran.

Parámetros

  • Opciones

    Un objeto que contiene parámetros de análisis.

  • callback

    Función opcional

    El parámetro callback se ve de la siguiente manera:

    (result: ScanResults)=>void

Devuelve

  • Promise<ScanResults>

    Chrome 96 y versiones posteriores

    Las promesas solo son compatibles con Manifest V3 y versiones posteriores; otras plataformas deben usar devoluciones de llamada.

setOptions()

Promesa Chrome 125 y versiones posteriores
chrome.documentScan.setOptions(
  scannerHandle: string,
  options: OptionSetting[],
  callback?: function,
)

Establece opciones en el escáner especificado y muestra una promesa que se resuelve con un objeto SetOptionsResponse que contiene el resultado de intentar establecer cada valor en el orden del objeto OptionSetting pasado. Si se usa una devolución de llamada, se le pasa el objeto en su lugar.

Parámetros

  • scannerHandle

    cadena

    El controlador del escáner para configurar las opciones. Debe ser un valor que previamente mostró una llamada a openScanner.

  • Opciones

    Una lista de objetos OptionSetting que se aplicarán al análisis.

  • callback

    Función opcional

    El parámetro callback se ve de la siguiente manera:

    (response: SetOptionsResponse)=>void

Devuelve

  • Las promesas solo son compatibles con Manifest V3 y versiones posteriores; otras plataformas deben usar devoluciones de llamada.

startScan()

Promesa Chrome 125 y versiones posteriores
chrome.documentScan.startScan(
  scannerHandle: string,
  options: StartScanOptions,
  callback?: function,
)

Inicia un análisis en el escáner especificado y muestra una promesa que se resuelve con un StartScanResponse. Si se usa una devolución de llamada, se le pasa el objeto en su lugar. Si la llamada se realizó correctamente, la respuesta incluirá un controlador de trabajo que puede usarse en llamadas posteriores para leer los datos del análisis o cancelarlo.

Parámetros

  • scannerHandle

    cadena

    El controlador de un escáner abierto. Debe ser un valor que previamente mostró una llamada a openScanner.

  • Opciones

    Un objeto StartScanOptions que indica las opciones que se usarán para el análisis La propiedad StartScanOptions.format debe coincidir con una de las entradas que se muestran en el ScannerInfo del escáner.

  • callback

    Función opcional

    El parámetro callback se ve de la siguiente manera:

    (response: StartScanResponse)=>void

Devuelve

  • Las promesas solo son compatibles con Manifest V3 y versiones posteriores; otras plataformas deben usar devoluciones de llamada.