Descrizione
Utilizza l'API chrome.documentScan
per trovare e recuperare le immagini dagli scanner di documenti allegati.
Autorizzazioni
documentScan
Disponibilità
API Document Scan
L'API Document Scan è progettata per consentire ad app ed estensioni di visualizzare il contenuto dei documenti cartacei su uno scanner di documenti allegato.
Tipi
CancelScanResponse
Proprietà
-
job
stringa
Fornisce lo stesso handle del job che è stato passato a
cancelScan()
. -
risultato
Il risultato della scansione del backend. Se il risultato è
OperationResult.SUCCESS
oOperationResult.CANCELLED
, la scansione è stata annullata e lo scanner è pronto per avviarne una nuova. Se il risultato èOperationResult.DEVICE_BUSY
, lo scanner sta ancora elaborando l'annullamento richiesto; il chiamante dovrebbe attendere qualche istante e riprovare a eseguire la richiesta. Altri valori dei risultati indicano un errore permanente che non deve essere riprovato.
CloseScannerResponse
Proprietà
-
risultato
Il risultato della chiusura dello scanner. Anche se questo valore non è
SUCCESS
, l'handle non sarà valido e non dovrà essere utilizzato per ulteriori operazioni. -
scannerHandle
stringa
Lo stesso handle dello scanner che è stato passato a
closeScanner
.
Configurability
Come può essere modificata un'opzione.
Enum
"NOT_CONFIGURABLE"
L'opzione è di sola lettura.
"SOFTWARE_CONFIGURABLE"
L'opzione può essere impostata nel software.
"HARDWARE_CONFIGURABLE"
L'opzione può essere impostata dall'utente attivando o premendo un pulsante sullo scanner.
ConnectionType
Indica il modo in cui lo scanner è collegato al computer.
Enum
"USB"
ConstraintType
Il tipo di dati del vincolo rappresentato da un OptionConstraint
.
Enum
"INT_RANGE"
Il vincolo su un intervallo di OptionType.INT
valori. Le proprietà min
, max
e quant
di OptionConstraint
saranno long
e la sua proprietà list
verrà annullata.
"FIXED_RANGE"
Il vincolo su un intervallo di OptionType.FIXED
valori. Le proprietà min
, max
e quant
di OptionConstraint
saranno double
e la relativa proprietà list
verrà annullata.
"INT_LIST"
Il vincolo su un elenco specifico di OptionType.INT
valori. La proprietà OptionConstraint.list
conterrà valori long
e le altre proprietà verranno disattivate.
"FIXED_LIST"
Il vincolo su un elenco specifico di OptionType.FIXED
valori. La proprietà OptionConstraint.list
conterrà valori double
e le altre proprietà verranno disattivate.
"STRING_LIST"
Il vincolo su un elenco specifico di OptionType.STRING
valori. La proprietà OptionConstraint.list
conterrà valori DOMString
e le altre proprietà verranno disattivate.
DeviceFilter
Proprietà
-
local
booleano facoltativo
Restituisci solo gli scanner collegati direttamente al computer.
-
sicuro
booleano facoltativo
Restituisci solo gli scanner che utilizzano un trasporto sicuro, come USB o TLS.
GetOptionGroupsResponse
Proprietà
-
gruppi
OptionGroup[] facoltativo
Se
result
èSUCCESS
, fornisce un elenco di gruppi di opzioni nell'ordine indicato dal driver dello scanner. -
risultato
Il risultato ottenuto dai gruppi di opzioni. Se il valore di questo è
SUCCESS
, la proprietàgroups
verrà compilata. -
scannerHandle
stringa
Lo stesso handle dello scanner che è stato passato a
getOptionGroups
.
GetScannerListResponse
Proprietà
-
risultato
Il risultato dell'enumerazione. Tieni presente che potrebbero essere restituiti risultati parziali anche se questo indica un errore.
-
scanner
Un elenco potenzialmente vuoto di scanner corrispondenti al valore
DeviceFilter
fornito.
OpenScannerResponse
Proprietà
-
opzioni del modello.
oggetto facoltativo
Se
result
èSUCCESS
, fornisce una mappatura chiave-valore in cui la chiave è un'opzione specifica per il dispositivo e il valore è un'istanza diScannerOption
. -
risultato
Il risultato dell'apertura dello scanner. Se il valore di questo parametro è
SUCCESS
, verranno compilate le proprietàscannerHandle
eoptions
. -
scannerHandle
stringa facoltativo
Se
result
èSUCCESS
, un handle dello scanner che può essere utilizzato per ulteriori operazioni. -
scannerId
stringa
L'ID scanner passato a
openScanner()
.
OperationResult
Un'enumerazione che indica il risultato di ogni operazione.
Enum
"UNKNOWN"
Si è verificato un errore sconosciuto o generico.
"SUCCESS"
L'operazione è riuscita.
"NON SUPPORTATO"
L'operazione non è supportata.
"ANNULLATO"
L'operazione è stata annullata.
"DEVICE_BUSY"
Il dispositivo è occupato.
"NON VALIDO"
I dati o un argomento passato al metodo non sono validi.
"WRONG_TYPE"
Il valore fornito è il tipo di dati errato per l'opzione sottostante.
"EOF"
Non sono disponibili altri dati.
"ADF_JAMMED"
L'alimentatore di documenti è inceppato.
"ADF_EMPTY"
L'alimentatore di documenti è vuoto.
"COVER_OPEN"
La copertura del piano letto è aperta.
"IO_ERROR"
Si è verificato un errore durante la comunicazione con il dispositivo.
"ACCESS_DENIED"
Il dispositivo richiede l'autenticazione.
"NO_MEMORY"
La memoria disponibile su Chromebook non è sufficiente per completare l'operazione.
"NON RAGGIUNGIBILE"
Il dispositivo non è raggiungibile.
"MISSING"
Il dispositivo è disconnesso.
"INTERNAL_ERROR"
Si è verificato un errore in un luogo diverso dall'applicazione chiamante.
OptionConstraint
Proprietà
-
list
string[] | number[] facoltativo
-
max
numero facoltativo
-
min
numero facoltativo
-
quantitativo
numero facoltativo
-
Tipo
OptionGroup
Proprietà
-
membri
stringa[]
Un array di nomi delle opzioni nell'ordine fornito dal conducente.
-
title
stringa
Fornisce un titolo stampabile, ad esempio "Opzioni geometria".
OptionSetting
Proprietà
-
nome
stringa
Indica il nome dell'opzione da impostare.
-
Tipo
Indica il tipo di dati dell'opzione. Il tipo di dati richiesto deve corrispondere al tipo di dati reali dell'opzione sottostante.
-
valore
stringa | numero | booleano | numero[] facoltativo
Indica il valore da impostare. Non impostare l'opzione per richiedere l'impostazione automatica delle opzioni che hanno
autoSettable
abilitato. Il tipo di dati specificato pervalue
deve corrispondere atype
.
OptionType
Il tipo di dati di un'opzione.
Enum
"UNKNOWN"
Il tipo di dati dell'opzione è sconosciuto. L'impostazione della proprietà value
verrà annullata.
"BOOL"
La proprietà value
sarà una delle true
false.
"INT"
Un numero intero a 32 bit firmato. La proprietà value
sarà lunga o lunga[], a seconda che l'opzione accetti più di un valore.
"FIXED"
Un doppio nell'intervallo -32768-32767,9999 con una risoluzione di 1/65535. La proprietà value
sarà doppia o doppia[] a seconda che l'opzione accetti più di un valore. I valori doppi che non possono essere rappresentati esattamente verranno arrotondati all'intervallo e alla precisione disponibili.
"STRING"
Una sequenza di byte, tranne NUL ("\0"). La proprietà value
sarà una DOMString.
"BUTTON"
Un'opzione di questo tipo non ha valori. L'impostazione di un'opzione di questo tipo causa invece un effetto collaterale specifico dell'opzione nel driver dello scanner. Ad esempio, un driver di scanner potrebbe utilizzare un'opzione di tipo pulsante per fornire un mezzo per selezionare valori predefiniti o per indicare a un alimentatore di documenti automatico di passare al foglio di carta successivo.
"GROUP"
Opzione di raggruppamento. Nessun valore. Questo valore è incluso per la compatibilità, ma di solito non viene restituito nei valori ScannerOption
. Utilizza getOptionGroups()
per recuperare l'elenco dei gruppi con le relative opzioni per i membri.
Enum
"UNITLESS"
Il valore è un numero senza unità. Ad esempio, può essere una soglia.
"PIXEL"
Il valore è un numero di pixel, ad esempio le dimensioni di scansione.
"BIT"
Il valore è il numero di bit, ad esempio la profondità di colore.
"MM"
Il valore è misurato in millimetri, ad esempio le dimensioni di scansione.
"DPI"
Il valore viene misurato in punti per pollice, ad esempio la risoluzione.
"PERCENT"
Il valore è una percentuale, ad esempio luminosità.
"MICROSECOND"
Il valore viene misurato in microsecondi, ad esempio il tempo di esposizione.
ReadScanDataResponse
Proprietà
-
dati
ArrayBuffer facoltativo
Se
result
èSUCCESS
, contiene il blocco successivo di dati dell'immagine scansionata. Seresult
èEOF
, contiene l'ultimo blocco di dati di immagini scansionate. -
estimatedCompletion
numero facoltativo
Se
result
èSUCCESS
, una stima della quantità di dati di scansione totali inviati finora, compreso tra 0 e 100. -
job
stringa
Fornisce l'handle del job passato a
readScanData()
. -
risultato
Il risultato della lettura dei dati. Se il valore è
SUCCESS
,data
contiene il blocco successivo (possibilmente di lunghezza pari a zero) di dati dell'immagine pronto per la lettura. Se il valore èEOF
,data
contiene l'ultimo blocco di dati immagine.
ScannerInfo
Proprietà
-
connectionType
Indica il modo in cui lo scanner è collegato al computer.
-
deviceUuid
stringa
Per la corrispondenza con altre voci
ScannerInfo
che rimandano allo stesso dispositivo fisico. -
imageFormats
stringa[]
Un array di tipi MIME che è possibile richiedere per le analisi restituite.
-
produttore
stringa
Il produttore dello scanner.
-
model
stringa
Il modello di scanner, se disponibile, o una descrizione generica.
-
nome
stringa
Un nome leggibile che lo scanner verrà visualizzato nell'interfaccia utente.
-
protocolType
stringa
Una descrizione leggibile del protocollo o del driver utilizzato per accedere allo scanner, ad esempio Mopria, WSD o epsonds. Questa funzionalità è utile soprattutto per consentire a un utente di scegliere tra diversi protocolli se un dispositivo ne supporta più di uno.
-
scannerId
stringa
L'ID di uno scanner specifico.
-
sicuro
boolean
Se il valore è true, il trasporto della connessione dello scanner non può essere intercettato da un listener passivo, come TLS o USB.
ScannerOption
Proprietà
-
configurabilità
Indica se e come l'opzione può essere modificata.
-
vincolo
OptionConstraint facoltativo
Definisce
OptionConstraint
sull'opzione di scansione corrente. -
descrizione
stringa
Una descrizione più lunga dell'opzione.
-
isActive
boolean
Indica che l'opzione è attiva e può essere impostata o recuperata. Se il valore è false, la proprietà
value
non verrà impostata. -
isAdvanced
boolean
Indica che nell'interfaccia utente non dovrebbe essere visualizzata questa opzione per impostazione predefinita.
-
isAutoSettable
boolean
Può essere impostato automaticamente dal driver dello scanner.
-
isDetectable
boolean
Indica che questa opzione può essere rilevata dal software.
-
isEmulated
boolean
Emulato dal driver dello scanner, se vero.
-
nome
stringa
Il nome dell'opzione che utilizza lettere ASCII minuscole, numeri e trattini. I segni diacritici non sono consentiti.
-
title
stringa
Un titolo stampabile di una riga.
-
Tipo
Il tipo di dati contenuto nella proprietà
value
, necessario per impostare questa opzione. -
unità
L'unità di misura per questa opzione.
-
valore
stringa | numero | booleano | numero[] facoltativo
Il valore attuale dell'opzione, se pertinente. Tieni presente che il tipo di dati di questa proprietà deve corrispondere al tipo di dati specificato in
type
.
ScanOptions
Proprietà
-
maxImages
numero facoltativo
Il numero consentito di immagini scansionate. Il valore predefinito è 1.
-
mimeTypes
string[] facoltativo
I tipi MIME accettati dal chiamante.
ScanResults
Proprietà
-
dataUrls
stringa[]
Un array di URL di immagini di dati in un formato che può essere passato come valore "src" a un tag immagine.
-
mimeType
stringa
Il tipo MIME di
dataUrls
.
SetOptionResult
Proprietà
-
nome
stringa
Indica il nome dell'opzione impostata.
-
risultato
Indica il risultato dell'impostazione dell'opzione.
SetOptionsResponse
Proprietà
-
opzioni del modello.
oggetto facoltativo
Una mappatura chiave-valore aggiornata dai nomi delle opzioni ai valori
ScannerOption
contenenti la nuova configurazione dopo il tentativo di impostare tutte le opzioni fornite. Ha la stessa struttura della proprietàoptions
inOpenScannerResponse
.Questa proprietà verrà impostata anche se alcune opzioni non sono state impostate correttamente, ma verrà annullata se il recupero della configurazione aggiornata non riesce (ad esempio, se lo scanner è disconnesso durante la scansione).
-
risultati
Un array di risultati, uno ciascuno per ogni
OptionSetting
trasmesso. -
scannerHandle
stringa
Fornisce l'handle dello scanner passato a
setOptions()
.
StartScanOptions
Proprietà
-
dell'annuncio
stringa
Specifica il tipo MIME in cui restituire i dati scansionati.
-
maxReadSize
numero facoltativo
Se viene specificato un valore diverso da zero, limita il numero massimo di byte analizzati restituiti in una singola risposta
readScanData
a quel valore. Il valore minimo consentito è 32768 (32 kB). Se questa proprietà non è specificata, le dimensioni di un blocco restituito potrebbero corrispondere alle dimensioni dell'intera immagine scansionata.
StartScanResponse
Proprietà
-
job
stringa facoltativo
Se
result
èSUCCESS
, fornisce un handle che può essere utilizzato per leggere i dati della scansione o annullare il job. -
risultato
Il risultato dell'avvio di una scansione. Se il valore di questo è
SUCCESS
, la proprietàjob
verrà compilata. -
scannerHandle
stringa
Fornisce lo stesso handle dello scanner passato a
startScan()
.
Metodi
cancelScan()
chrome.documentScan.cancelScan(
job: string,
callback?: function,
)
Annulla una scansione avviata e restituisce una Promise che si risolve con un oggetto CancelScanResponse
. Se si utilizza un callback, l'oggetto viene passato all'oggetto.
Parametri
-
job
stringa
L'handle di un job di scansione attivo restituito in precedenza da una chiamata a
startScan
. -
callback
funzione facoltativa
Il parametro
callback
ha il seguente aspetto:(response: CancelScanResponse) => void
-
risposta
-
Ritorni
-
Promise<CancelScanResponse>
Le promesse sono supportate solo per Manifest V3 e versioni successive; altre piattaforme devono utilizzare i callback.
closeScanner()
chrome.documentScan.closeScanner(
scannerHandle: string,
callback?: function,
)
Chiude lo scanner con l'handle passato e restituisce una promessa che si risolve con un oggetto CloseScannerResponse
. Se si utilizza un callback, l'oggetto viene passato all'oggetto. Anche se la risposta non ha esito positivo, l'handle fornito non è più valido e non deve essere utilizzato per ulteriori operazioni.
Parametri
-
scannerHandle
stringa
Specifica l'handle di uno scanner aperto precedentemente restituito da una chiamata a
openScanner
. -
callback
funzione facoltativa
Il parametro
callback
ha il seguente aspetto:(response: CloseScannerResponse) => void
-
risposta
-
Ritorni
-
Promise<CloseScannerResponse>
Le promesse sono supportate solo per Manifest V3 e versioni successive; altre piattaforme devono utilizzare i callback.
getOptionGroups()
chrome.documentScan.getOptionGroups(
scannerHandle: string,
callback?: function,
)
Recupera i nomi dei gruppi e le opzioni dei membri da uno scanner aperto in precedenza da openScanner
. Questo metodo restituisce una promessa che si risolve con un oggetto GetOptionGroupsResponse
. Se viene passato un callback a questa funzione, i dati restituiti vengono trasmessi a questa funzione.
Parametri
-
scannerHandle
stringa
L'handle di uno scanner aperto restituito da una chiamata a
openScanner
. -
callback
funzione facoltativa
Il parametro
callback
ha il seguente aspetto:(response: GetOptionGroupsResponse) => void
-
risposta
-
Ritorni
-
Promise<GetOptionGroupsResponse>
Le promesse sono supportate solo per Manifest V3 e versioni successive; altre piattaforme devono utilizzare i callback.
getScannerList()
chrome.documentScan.getScannerList(
filter: DeviceFilter,
callback?: function,
)
Recupera l'elenco degli scanner disponibili e restituisce una promessa che si risolve con un oggetto GetScannerListResponse
. Se viene passato un callback a questa funzione, i dati restituiti vengono trasmessi a questa funzione.
Parametri
-
filtra
Un simbolo
DeviceFilter
che indica i tipi di scanner da restituire. -
callback
funzione facoltativa
Il parametro
callback
ha il seguente aspetto:(response: GetScannerListResponse) => void
-
risposta
-
Ritorni
-
Promise<GetScannerListResponse>
Le promesse sono supportate solo per Manifest V3 e versioni successive; altre piattaforme devono utilizzare i callback.
openScanner()
chrome.documentScan.openScanner(
scannerId: string,
callback?: function,
)
Apre uno scanner per l'accesso esclusivo e restituisce una Promise che si risolve con un oggetto OpenScannerResponse
. Se viene passato un callback a questa funzione, i dati restituiti vengono trasmessi a questa funzione.
Parametri
-
scannerId
stringa
L'ID di uno scanner da aprire. Questo valore corrisponde a uno restituito da una precedente chiamata a
getScannerList
. -
callback
funzione facoltativa
Il parametro
callback
ha il seguente aspetto:(response: OpenScannerResponse) => void
-
risposta
-
Ritorni
-
Promise<OpenScannerResponse>
Le promesse sono supportate solo per Manifest V3 e versioni successive; altre piattaforme devono utilizzare i callback.
readScanData()
chrome.documentScan.readScanData(
job: string,
callback?: function,
)
Legge il blocco successivo di dati di immagine disponibili da un handle di job attivo e restituisce una Promise che si risolve con un oggetto ReadScanDataResponse
. Se si utilizza un callback, l'oggetto viene passato all'oggetto.
**Nota:**è valido per un risultato di risposta SUCCESS
con un membro data
di lunghezza zero. Questo significa che lo scanner funziona ancora, ma non ha ancora dati aggiuntivi a portata di mano. Il chiamante dovrebbe attendere qualche istante e riprovare.
Al termine del job di scansione, la risposta avrà come risultato EOF
. Questa risposta può contenere un membro finale data
diverso da zero.
Parametri
-
job
stringa
Handle del job attivo restituito in precedenza da
startScan
. -
callback
funzione facoltativa
Il parametro
callback
ha il seguente aspetto:(response: ReadScanDataResponse) => void
-
risposta
-
Ritorni
-
Promise<ReadScanDataResponse>
Le promesse sono supportate solo per Manifest V3 e versioni successive; altre piattaforme devono utilizzare i callback.
scan()
chrome.documentScan.scan(
options: ScanOptions,
callback?: function,
)
Esegue una scansione del documento e restituisce una promessa che si risolve con un oggetto ScanResults
. Se viene passato un callback a questa funzione, i dati restituiti verranno trasmessi a questa funzione.
Parametri
-
opzioni del modello.
Un oggetto che contiene i parametri di scansione.
-
callback
funzione facoltativa
Il parametro
callback
ha il seguente aspetto:(result: ScanResults) => void
-
risultato
-
Ritorni
-
Promise<ScanResults>
Chrome 96 e versioni successiveLe promesse sono supportate solo per Manifest V3 e versioni successive; altre piattaforme devono utilizzare i callback.
setOptions()
chrome.documentScan.setOptions(
scannerHandle: string,
options: OptionSetting[],
callback?: function,
)
Imposta le opzioni sullo scanner specificato e restituisce una Promise che si risolve con un oggetto SetOptionsResponse
contenente il risultato del tentativo di impostare ogni valore nell'ordine dell'oggetto OptionSetting
passato. Se si utilizza un callback, l'oggetto viene passato all'oggetto.
Parametri
-
scannerHandle
stringa
Il punto di manipolazione dello scanner su cui impostare le opzioni. Deve essere un valore restituito in precedenza da una chiamata a
openScanner
. -
opzioni del modello.
Un elenco di
OptionSetting
oggetti da applicare allo scanner. -
callback
funzione facoltativa
Il parametro
callback
ha il seguente aspetto:(response: SetOptionsResponse) => void
-
risposta
-
Ritorni
-
Promise<SetOptionsResponse>
Le promesse sono supportate solo per Manifest V3 e versioni successive; altre piattaforme devono utilizzare i callback.
startScan()
chrome.documentScan.startScan(
scannerHandle: string,
options: StartScanOptions,
callback?: function,
)
Avvia una scansione sullo scanner specificato e restituisce una promessa che si risolve con un StartScanResponse
. Se si utilizza un callback, l'oggetto viene passato all'oggetto. Se la chiamata ha esito positivo, la risposta include un handle del job che può essere utilizzato nelle chiamate successive per leggere i dati della scansione o annullare una scansione.
Parametri
-
scannerHandle
stringa
La maniglia di uno scanner aperto. Deve essere un valore restituito in precedenza da una chiamata a
openScanner
. -
opzioni del modello.
Un oggetto
StartScanOptions
che indica le opzioni da utilizzare per la scansione. La proprietàStartScanOptions.format
deve corrispondere a una delle voci restituite nelScannerInfo
dello scanner. -
callback
funzione facoltativa
Il parametro
callback
ha il seguente aspetto:(response: StartScanResponse) => void
-
risposta
-
Ritorni
-
Promise<StartScanResponse>
Le promesse sono supportate solo per Manifest V3 e versioni successive; altre piattaforme devono utilizzare i callback.