chrome.documentScan

Descripción

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

Permisos

documentScan

Disponibilidad

Chrome 44 y versiones posteriores Solo en ChromeOS

API de Document Scan

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

Tipos

CancelScanResponse

Chrome 125 y versiones posteriores

Propiedades

  • trabajo

    string

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

  • resultado

    Es el resultado de la cancelación del análisis del backend. Si el resultado es OperationResult.SUCCESS o OperationResult.CANCELLED, se canceló el análisis y el escáner 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 un poco y volver a intentar la solicitud. Otros valores de resultado indican un error permanente que no se debe volver a intentar.

CloseScannerResponse

Chrome 125 y versiones posteriores

Propiedades

  • resultado

    Es el resultado de 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

    string

    Es el mismo identificador del escáner 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 el software.

"HARDWARE_CONFIGURABLE"
El usuario puede establecer la opción activando o presionando un botón en el escáner.

ConnectionType

Chrome 125 y versiones posteriores

Indica cómo está conectado el escáner a la computadora.

Enum

"UNSPECIFIED"

"USB"

"NETWORK"

ConstraintType

Chrome 125 y versiones posteriores

Es el tipo de datos de la restricción representada por un OptionConstraint.

Enum

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

"FIXED_RANGE"
Es la restricción sobre un rango de valores de OptionType.FIXED. Las propiedades min, max y quant de OptionConstraint serán double, y su propiedad list no se establecerá.

"INT_LIST"
Es la restricción sobre una lista específica de valores de OptionType.INT. La propiedad OptionConstraint.list contendrá valores de long y las demás propiedades no se establecerán.

"FIXED_LIST"
Es la restricción sobre una lista específica de valores de OptionType.FIXED. La propiedad OptionConstraint.list contendrá valores de double y las demás propiedades no se establecerán.

"STRING_LIST"
Es la restricción sobre una lista específica de valores de OptionType.STRING. La propiedad OptionConstraint.list contendrá valores de DOMString y las demás propiedades no se establecerán.

DeviceFilter

Chrome 125 y versiones posteriores

Propiedades

  • local

    booleano opcional

    Solo se devuelven los escáneres que están conectados directamente a la computadora.

  • seguro

    booleano opcional

    Solo se devuelven los 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

    string

    Es el mismo identificador del escáner que se pasó a getOptionGroups.

GetScannerListResponse

Chrome 125 y versiones posteriores

Propiedades

  • resultado

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

  • escáneres

    Es una lista, posiblemente vacía, de los analizadores 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 clave-valor en la que la clave es una opción específica del dispositivo y el valor es una instancia de ScannerOption.

  • resultado

    Es el resultado de abrir el escáner. Si el valor es SUCCESS, se propagarán las propiedades scannerHandle y options.

  • scannerHandle

    cadena opcional

    Si result es SUCCESS, es un identificador del escáner que se puede usar para otras operaciones.

  • scannerId

    string

    Es el ID del escáner que se pasó a openScanner().

OperationResult

Chrome 125 y versiones posteriores

Es 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 completó correctamente.

"UNSUPPORTED"
No se admite la operación.

"CANCELLED"
Se canceló la operación.

"DEVICE_BUSY"
El dispositivo está ocupado.

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

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

"EOF"
No hay más datos disponibles.

"ADF_JAMMED"
Se atascó el alimentador de documentos.

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

"COVER_OPEN"
La cubierta de la plataforma está abierta.

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

"ACCESS_DENIED"
El dispositivo requiere autenticación.

"NO_MEMORY"
No hay suficiente memoria disponible en la Chromebook para completar la operación.

"UNREACHABLE"
No se puede acceder al dispositivo.

"MISSING"
El dispositivo está desconectado.

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

OptionConstraint

Chrome 125 y versiones posteriores

Propiedades

  • list

    string[] | number[] opcional

  • máx.

    número opcional

  • min

    número opcional

  • quant

    número opcional

OptionGroup

Chrome 125 y versiones posteriores

Propiedades

  • miembros

    string[]

    Es un array de nombres de opciones en el orden proporcionado por el conductor.

  • título

    string

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

OptionSetting

Chrome 125 y versiones posteriores

Propiedades

  • nombre

    string

    Indica el nombre de la opción que se 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.

  • valor

    cadena | número | booleano | número[] opcional

    Indica el valor que se establecerá. Déjalo sin configurar para solicitar el ajuste automático 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"
Se desconoce el tipo de datos de la opción. Se anulará la propiedad value.

"BOOL"
La propiedad value será una de truefalse.

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

"FIXED"
Un valor doble en el rango de -32768 a 32767.9999 con una resolución de 1/65535. La propiedad value será double o double[], según si la opción toma más de un valor. Los valores dobles que no se puedan representar con exactitud se redondearán al rango y la precisión disponibles.

"STRING"
Una secuencia de cualquier byte, excepto NUL ("\0"). La propiedad value será un DOMString.

"BUTTON"
Una opción de este tipo no tiene valor. En cambio, establecer 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 valores predeterminados o para indicarle a un alimentador automático de documentos que avance a la siguiente hoja de papel.

"GROUP"
Opción de agrupación. Sin valor. Se incluye por compatibilidad, pero normalmente no se devolverá en los valores de 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 de ScannerOption.unit.

Enum

"UNITLESS"
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 escaneo.

"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.

"MICROSECOND"
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 datos de la imagen analizada. Si result es EOF, contiene el último fragmento de datos de la imagen analizada.

  • estimatedCompletion

    número opcional

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

  • trabajo

    string

    Proporciona el identificador de trabajo que se pasó 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 leerse. Si su valor es EOF, el campo data contiene el fragmento final de los datos de la imagen.

ScannerInfo

Chrome 125 y versiones posteriores

Propiedades

  • connectionType

    Indica cómo está conectado el escáner a la computadora.

  • deviceUuid

    string

    Se usa para la correlación con otras entradas de ScannerInfo que apuntan al mismo dispositivo físico.

  • imageFormats

    string[]

    Es un array de tipos de MIME que se pueden solicitar para los análisis devueltos.

  • manufacturer

    string

    Es el fabricante del escáner.

  • modelo

    string

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

  • nombre

    string

    Es un nombre legible por humanos para que el verificador lo muestre en la IU.

  • protocolType

    string

    Es 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

    string

    Es el ID de un escáner específico.

  • seguro

    booleano

    Si es verdadero, el transporte de la conexión del escáner no puede ser interceptado por un agente de escucha pasivo, como TLS o USB.

ScannerOption

Chrome 125 y versiones posteriores

Propiedades

  • configurabilidad

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

  • restricción

    Define OptionConstraint en la opción de escáner actual.

  • descripción

    string

    Es una descripción más larga de la opción.

  • Está activo

    booleano

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

  • isAdvanced

    booleano

    Indica que la IU no debe mostrar esta opción de forma predeterminada.

  • isAutoSettable

    booleano

    El controlador del escáner puede establecer este valor automáticamente.

  • isDetectable

    booleano

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

  • isEmulated

    booleano

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

  • nombre

    string

    Nombre de la opción que usa letras ASCII en minúscula, números y guiones. No se permiten signos diacríticos.

  • título

    string

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

  • tipo

    Es el tipo de datos que contiene la propiedad value, que se necesita para establecer esta opción.

  • Unidad

    Es la unidad de medida de esta opción.

  • valor

    cadena | número | booleano | número[] opcional

    Es el valor actual de la opción, si es pertinente. 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

    Es la cantidad de imágenes escaneadas permitidas. El valor predeterminado es 1.

  • mimeTypes

    string[] opcional

    Son los tipos de MIME que acepta la persona que llama.

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

    string

    Es el tipo de MIME de dataUrls.

SetOptionResult

Chrome 125 y versiones posteriores

Propiedades

  • nombre

    string

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

  • resultado

    Indica el resultado de la configuración de la opción.

SetOptionsResponse

Chrome 125 y versiones posteriores

Propiedades

  • opciones

    objeto opcional

    Es una asignación actualizada de clave-valor de los nombres de las opciones a los valores de ScannerOption que contiene 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 establecieron correctamente, pero se anulará si falla la recuperación de la configuración actualizada (por ejemplo, si el escáner se desconecta en medio del análisis).

  • resultados

    Es un array de resultados, uno para cada OptionSetting que se pasó.

  • scannerHandle

    string

    Proporciona el identificador del escáner que se pasó a setOptions().

StartScanOptions

Chrome 125 y versiones posteriores

Propiedades

  • formato

    string

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

  • maxReadSize

    número opcional

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

StartScanResponse

Chrome 125 y versiones posteriores

Propiedades

  • trabajo

    cadena opcional

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

  • resultado

    Es el resultado de iniciar un análisis. Si el valor es SUCCESS, se propagará la propiedad job.

  • scannerHandle

    string

    Proporciona el mismo identificador del escáner que se pasó a startScan().

Métodos

cancelScan()

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

Cancela un análisis iniciado y devuelve una promesa que se resuelve con un objeto CancelScanResponse. Si se usa una devolución de llamada, el objeto se pasa a ella.

Parámetros

  • trabajo

    string

    Es el identificador de un trabajo de análisis activo que se devolvió anteriormente desde una llamada a startScan.

  • callback

    función opcional

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

    (response: CancelScanResponse) => void

Muestra

  • Las promesas solo se admiten en Manifest V3 y versiones posteriores. Otras plataformas deben usar devoluciones de llamada.

closeScanner()

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

Cierra el escáner con el identificador pasado y devuelve una promesa que se resuelve con un objeto CloseScannerResponse. Si se usa una devolución de llamada, el objeto se pasa a ella. Incluso si la respuesta no es exitosa, el identificador proporcionado deja de ser válido y no se debe usar para operaciones posteriores.

Parámetros

  • scannerHandle

    string

    Especifica el identificador de un escáner abierto que se devolvió anteriormente desde una llamada a openScanner.

  • callback

    función opcional

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

    (response: CloseScannerResponse) => void

Muestra

  • Las promesas solo se admiten en Manifest V3 y versiones posteriores. Otras plataformas deben usar devoluciones de llamada.

getOptionGroups()

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

Obtiene los nombres de los grupos y las opciones de miembros de un escáner que openScanner abrió anteriormente. Este método devuelve una promesa que se resuelve con un objeto GetOptionGroupsResponse. Si se pasa una devolución de llamada a esta función, los datos devueltos se pasan a ella.

Parámetros

Muestra

  • Las promesas solo se admiten en Manifest V3 y versiones posteriores. Otras plataformas deben usar devoluciones de llamada.

getScannerList()

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

Obtiene la lista de escáneres disponibles y devuelve una promesa que se resuelve con un objeto GetScannerListResponse. Si se pasa una devolución de llamada a esta función, los datos devueltos se pasan a ella.

Parámetros

Muestra

  • Las promesas solo se admiten en Manifest V3 y versiones posteriores. Otras plataformas deben usar devoluciones de llamada.

openScanner()

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

Abre un scanner para acceso exclusivo y devuelve una promesa que se resuelve con un objeto OpenScannerResponse. Si se pasa una devolución de llamada a esta función, los datos devueltos se pasan a ella.

Parámetros

  • scannerId

    string

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

  • callback

    función opcional

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

    (response: OpenScannerResponse) => void

Muestra

  • Las promesas solo se admiten en Manifest V3 y versiones posteriores. Otras plataformas deben usar devoluciones de llamada.

readScanData()

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

Lee el siguiente fragmento de datos de imagen disponibles de un identificador de trabajo activo y devuelve una promesa que se resuelve con un objeto ReadScanDataResponse. Si se usa una devolución de llamada, el objeto se pasa a ella.

**Nota:**Es válido que un resultado de respuesta sea SUCCESS con un miembro data de longitud cero. Esto significa que el escáner sigue funcionando, pero aún no tiene datos adicionales listos. La persona que llama debe esperar un momento y volver a intentarlo.

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

Parámetros

  • trabajo

    string

    Es el identificador de trabajo activo que startScan devolvió anteriormente.

  • callback

    función opcional

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

    (response: ReadScanDataResponse) => void

Muestra

  • Las promesas solo se admiten en Manifest V3 y versiones posteriores. Otras plataformas deben usar devoluciones de llamada.

scan()

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

Realiza un análisis de documentos y devuelve una promesa que se resuelve con un objeto ScanResults. Si se pasa una devolución de llamada a esta función, los datos devueltos se pasan a ella.

Parámetros

  • opciones

    Es 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

Muestra

  • Promesa de ScanResults

    Chrome 96 y versiones posteriores

    Las promesas solo se admiten en Manifest V3 y versiones posteriores. Otras plataformas deben usar devoluciones de llamada.

setOptions()

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

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

Parámetros

  • scannerHandle

    string

    Es el identificador del escáner en el que se establecerán las opciones. Debe ser un valor que se haya mostrado anteriormente en una llamada a openScanner.

  • opciones

    Es una lista de objetos OptionSetting que se aplicarán al escáner.

  • callback

    función opcional

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

    (response: SetOptionsResponse) => void

Muestra

  • Las promesas solo se admiten en Manifest V3 y versiones posteriores. Otras plataformas deben usar devoluciones de llamada.

startScan()

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

Inicia un análisis en el escáner especificado y devuelve una promesa que se resuelve con un StartScanResponse. Si se usa una devolución de llamada, el objeto se pasa a ella. Si la llamada se realizó correctamente, la respuesta incluye un identificador de trabajo que se puede usar en llamadas posteriores para leer los datos del análisis o cancelar un análisis.

Parámetros

  • scannerHandle

    string

    Es el identificador de un escáner abierto. Debe ser un valor que se haya mostrado anteriormente en una llamada a openScanner.

  • opciones

    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

Muestra

  • Las promesas solo se admiten en Manifest V3 y versiones posteriores. Otras plataformas deben usar devoluciones de llamada.