Descrizione
Utilizza l'API chrome.documentScan
per rilevare e recuperare immagini dagli scanner di documenti collegati.
Autorizzazioni
documentScan
Disponibilità
API Document Scan
L'API Document Scan è progettata per consentire ad app ed estensioni di visualizzare i contenuti di documenti cartacei su uno scanner di documenti collegato.
Tipi
CancelScanResponse
Proprietà
-
job
stringa
Fornisce lo stesso handle del job passato a
cancelScan()
. -
risultato
Risultato della scansione dell'annullamento del backend. Se il risultato è
OperationResult.SUCCESS
oOperationResult.CANCELLED
, la scansione è stata annullata e lo scanner è pronto per iniziare una nuova scansione. Se il risultato èOperationResult.DEVICE_BUSY
, lo scanner sta ancora elaborando l'annullamento richiesto. il chiamante dovrebbe attendere un po' di tempo e riprovare a inviare 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 dovrebbe essere utilizzato per ulteriori operazioni. -
scannerHandle
stringa
Lo stesso handle dello scanner 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 come lo scanner è collegato al computer.
Enum
"NON SPECIFICATO"
"USB"
"RETE"
ConstraintType
Il tipo di dati del vincolo rappresentato da un elemento 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 relativa proprietà list
non verrà impostata.
"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
non verrà impostata.
"INT_LIST"
Il vincolo su un elenco specifico di valori OptionType.INT
. La proprietà OptionConstraint.list
conterrà long
valori, mentre le altre proprietà non verranno impostate.
"FIXED_LIST"
Il vincolo su un elenco specifico di valori OptionType.FIXED
. La proprietà OptionConstraint.list
conterrà double
valori, mentre le altre proprietà non verranno impostate.
"STRING_LIST"
Il vincolo su un elenco specifico di valori OptionType.STRING
. La proprietà OptionConstraint.list
conterrà DOMString
valori, mentre le altre proprietà non verranno impostate.
DeviceFilter
Proprietà
-
local
booleano facoltativo
Restituisci solo gli scanner direttamente collegati al computer.
-
sicuro
booleano facoltativo
Restituisci solo 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 fornito dal driver dello scanner. -
risultato
Il risultato dell'ottenimento dei gruppi di opzioni. Se il valore è
SUCCESS
, la proprietàgroups
verrà compilata. -
scannerHandle
stringa
Lo stesso handle dello scanner 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 di scanner potenzialmente vuoto corrispondente al valore
DeviceFilter
fornito.
OpenScannerResponse
Proprietà
-
opzioni
oggetto facoltativo
Se
result
èSUCCESS
, fornisce una mappatura chiave-valore in cui la chiave è un'opzione specifica del dispositivo e il valore è un'istanza diScannerOption
. -
risultato
Il risultato dell'apertura dello scanner. Se il valore è
SUCCESS
, verranno compilate le proprietàscannerHandle
eoptions
. -
scannerHandle
stringa facoltativo
Se
result
èSUCCESS
, un handle per lo scanner che può essere utilizzato per ulteriori operazioni. -
scannerId
stringa
L'ID scanner trasmesso 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 SUPPORTATA"
L'operazione non è supportata.
"ANNULLATA"
L'operazione è stata annullata.
"DEVICE_BUSY"
Il dispositivo è occupato.
"NON VALIDO"
I dati o un argomento passati al metodo non sono validi.
"WRONG_TYPE"
Il valore fornito è un tipo di dati errato per l'opzione sottostante.
"EOF"
Non sono disponibili altri dati.
"ADF_JAMMED"
L'alimentatore documenti è inceppato.
"ADF_EMPTY"
L'alimentatore di documenti è vuoto.
"COVER_OPEN"
La copertura del piano piana è 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 sul 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 punto diverso dall'applicazione chiamante.
OptionConstraint
Proprietà
-
list
string[] | numero[] facoltativo
-
max
numero facoltativo
-
min
numero facoltativo
-
quanti
numero facoltativo
-
tipo
OptionGroup
Proprietà
-
membri
stringa[]
Un array di nomi delle opzioni nell'ordine fornito dal conducente.
-
titolo
stringa
Fornisce un titolo stampabile, ad esempio "Opzioni di 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 reale dell'opzione sottostante.
-
valore
string | numero | boolean | numero[] facoltativo
Indica il valore da impostare. Non configurare le impostazioni per richiedere l'impostazione automatica per le opzioni che hanno
autoSettable
abilitato. Il tipo di dati fornito pervalue
deve corrispondere atype
.
OptionType
Il tipo di dati di un'opzione.
Enum
"UNKNOWN"
Il tipo di dati dell'opzione è sconosciuto. La proprietà value
non verrà impostata.
"BOOL"
La proprietà value
sarà uno di true
falso.
"INT"
Un numero intero a 32 bit firmato. La proprietà value
sarà lunga o lunga[], a seconda che l'opzione richieda più di un valore.
"FISSO"
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 richieda 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 qualsiasi 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 comporta invece un effetto collaterale specifico dell'opzione nel driver dello scanner. Ad esempio, un'opzione di tipo pulsante potrebbe essere utilizzata dal driver di uno scanner per fornire un mezzo per selezionare valori predefiniti o per dire a un alimentatore automatico di documenti di avanzare al foglio di carta successivo.
"GROUP"
Opzione di raggruppamento. Nessun valore. Questo valore è incluso per motivi di compatibilità, ma in genere non viene restituito nei valori ScannerOption
. Usa 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 viene 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 la luminosità.
"MICROSECOND"
Il valore viene misurato in microsecondi, ad esempio il tempo di esposizione.
ReadScanDataResponse
Proprietà
-
dati
ArrayBuffer facoltativo
Se
result
èSUCCESS
, contiene il prossimo blocco di dati dell'immagine scansionati. Seresult
èEOF
, contiene l'ultimo blocco di dati dell'immagine scansionati. -
estimatedCompletion
numero facoltativo
Se
result
èSUCCESS
, una stima di quanti dati di scansione totali sono stati 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 a lunghezza zero) di dati immagine pronti per la lettura. Se il valore èEOF
,data
contiene l'ultimo blocco di dati immagine.
ScannerInfo
Proprietà
-
connectionType
Indica come lo scanner è collegato al computer.
-
deviceUuid
stringa
Per la corrispondenza con altre voci
ScannerInfo
che puntano allo stesso dispositivo fisico. -
imageFormats
stringa[]
Un array di tipi MIME che possono essere richiesti per le scansioni restituite.
-
produttore
stringa
Il produttore dello scanner.
-
modello
stringa
Il modello dello scanner, se disponibile, o una descrizione generica.
-
nome
stringa
Un nome leggibile per lo scanner da visualizzare nell'interfaccia utente.
-
protocolType
stringa
Una descrizione leggibile del protocollo o del driver utilizzato per accedere allo scanner, ad esempio Mopria, WSD o epsond. Ciò è utile principalmente per consentire a un utente di scegliere tra i protocolli se un dispositivo supporta più protocolli.
-
scannerId
stringa
L'ID di uno scanner specifico.
-
sicuro
booleano
Se impostato su 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
nell'opzione di scansione attuale. -
descrizione
stringa
Una descrizione più lunga dell'opzione.
-
isActive
booleano
Indica che l'opzione è attiva e può essere impostata o recuperata. Se il valore è false, la proprietà
value
non verrà impostata. -
isAdvanced
booleano
Indica che l'interfaccia utente non dovrebbe visualizzare questa opzione per impostazione predefinita.
-
isAutoSettable
booleano
Può essere impostato automaticamente dal driver dello scanner.
-
isDetectable
booleano
Indica che questa opzione può essere rilevata dal software.
-
isEmulated
booleano
Emulato dal driver dello scanner, se vero.
-
nome
stringa
Il nome dell'opzione utilizzando lettere ASCII minuscole, numeri e trattini. I segni diacritici non sono consentiti.
-
titolo
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
string | numero | boolean | numero[] facoltativo
Il valore corrente 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 immagine dati in un formato che può essere passato come "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
oggetto facoltativo
Una mappatura chiave-valore aggiornata dai nomi delle opzioni ai valori
ScannerOption
contenenti la nuova configurazione dopo aver tentato 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 non verrà impostata se il recupero della configurazione aggiornata non riesce (ad esempio, se lo scanner viene disconnesso durante la scansione).
-
risultati
Un array di risultati, uno 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 analizzati.
-
maxReadSize
numero facoltativo
Se viene specificato un valore diverso da zero, limita il numero massimo di byte analizzati restituiti in una singola risposta di
readScanData
a quel valore. Il valore minimo consentito è 32768 (32 kB). Se questa proprietà non viene specificata, la dimensione di un blocco restituito può essere grande quanto l'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 è
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 promessa che si risolve con un oggetto CancelScanResponse
. Se viene utilizzato 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
-
Resi
-
Promise<CancelScanResponse>
Le promesse sono supportate solo per Manifest V3 e versioni successive, mentre le 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 viene utilizzato un callback, l'oggetto viene passato all'oggetto. Anche se la risposta non va a buon fine, l'handle fornito non è più valido e non deve essere utilizzato per ulteriori operazioni.
Parametri
-
scannerHandle
stringa
Specifica l'handle di uno scanner aperto restituito in precedenza da una chiamata a
openScanner
. -
callback
funzione facoltativa
Il parametro
callback
ha il seguente aspetto:(response: CloseScannerResponse) => void
-
risposta
-
Resi
-
Promise<CloseScannerResponse>
Le promesse sono supportate solo per Manifest V3 e versioni successive, mentre le 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 a questa funzione viene passato un callback, vengono invece passati a questa funzione i dati restituiti.
Parametri
-
scannerHandle
stringa
Il punto di manipolazione di uno scanner aperto restituito da una chiamata a
openScanner
. -
callback
funzione facoltativa
Il parametro
callback
ha il seguente aspetto:(response: GetOptionGroupsResponse) => void
-
risposta
-
Resi
-
Promise<GetOptionGroupsResponse>
Le promesse sono supportate solo per Manifest V3 e versioni successive, mentre le altre piattaforme devono utilizzare i callback.
getScannerList()
chrome.documentScan.getScannerList(
filter: DeviceFilter,
callback?: function,
)
Recupera l'elenco degli scanner disponibili e restituisce una Promise che si risolve con un oggetto GetScannerListResponse
. Se a questa funzione viene passato un callback, vengono invece passati a questa funzione i dati restituiti.
Parametri
-
filtro
Un elemento
DeviceFilter
che indica quali tipi di scanner devono essere restituiti. -
callback
funzione facoltativa
Il parametro
callback
ha il seguente aspetto:(response: GetScannerListResponse) => void
-
risposta
-
Resi
-
Promise<GetScannerListResponse>
Le promesse sono supportate solo per Manifest V3 e versioni successive, mentre le altre piattaforme devono utilizzare i callback.
openScanner()
chrome.documentScan.openScanner(
scannerId: string,
callback?: function,
)
Apre uno scanner per l'accesso esclusivo e restituisce una promessa che si risolve con un oggetto OpenScannerResponse
. Se a questa funzione viene passato un callback, vengono invece passati a questa funzione i dati restituiti.
Parametri
-
scannerId
stringa
L'ID di uno scanner da aprire. Questo valore è uno restituito da una chiamata precedente a
getScannerList
. -
callback
funzione facoltativa
Il parametro
callback
ha il seguente aspetto:(response: OpenScannerResponse) => void
-
risposta
-
Resi
-
Promise<OpenScannerResponse>
Le promesse sono supportate solo per Manifest V3 e versioni successive, mentre le altre piattaforme devono utilizzare i callback.
readScanData()
chrome.documentScan.readScanData(
job: string,
callback?: function,
)
Legge il blocco successivo di dati immagine disponibili dall'handle di un job attivo e restituisce una promessa che si risolve con un oggetto ReadScanDataResponse
. Se viene utilizzato un callback, l'oggetto viene passato all'oggetto.
**Nota:**il risultato di una risposta è SUCCESS
con un membro data
di lunghezza pari a zero. Ciò significa che lo scanner funziona ancora, ma non sono ancora disponibili altri dati. Il chiamante dovrebbe attendere un po' di tempo e riprovare.
Al termine del job di scansione, la risposta avrà come risultato il valore 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
-
Resi
-
Promise<ReadScanDataResponse>
Le promesse sono supportate solo per Manifest V3 e versioni successive, mentre le altre piattaforme devono utilizzare i callback.
scan()
chrome.documentScan.scan(
options: ScanOptions,
callback?: function,
)
Esegue una scansione di un documento e restituisce una promessa che si risolve con un oggetto ScanResults
. Se a questa funzione viene passato un callback, vengono invece passati i dati restituiti.
Parametri
-
opzioni
Un oggetto contenente i parametri di scansione.
-
callback
funzione facoltativa
Il parametro
callback
ha il seguente aspetto:(result: ScanResults) => void
-
risultato
-
Resi
-
Promise<ScanResults>
Chrome 96 e versioni successive .Le promesse sono supportate solo per Manifest V3 e versioni successive, mentre le 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 promessa che si risolve con un oggetto SetOptionsResponse
contenente il risultato del tentativo di impostare ogni valore nell'ordine dell'oggetto OptionSetting
passato. Se viene utilizzato un callback, l'oggetto viene passato all'oggetto.
Parametri
-
scannerHandle
stringa
La maniglia dello scanner su cui impostare le opzioni. Deve essere un valore restituito in precedenza da una chiamata a
openScanner
. -
opzioni
Un elenco di
OptionSetting
oggetti da applicare allo scanner. -
callback
funzione facoltativa
Il parametro
callback
ha il seguente aspetto:(response: SetOptionsResponse) => void
-
risposta
-
Resi
-
Promise<SetOptionsResponse>
Le promesse sono supportate solo per Manifest V3 e versioni successive, mentre le 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 StartScanResponse
. Se viene utilizzato un callback, l'oggetto viene passato all'oggetto. Se la chiamata ha avuto esito positivo, la risposta include un handle di 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
Un oggetto
StartScanOptions
che indica le opzioni da utilizzare per la scansione. La proprietàStartScanOptions.format
deve corrispondere a una delle voci restituite nel valoreScannerInfo
dello scanner. -
callback
funzione facoltativa
Il parametro
callback
ha il seguente aspetto:(response: StartScanResponse) => void
-
risposta
-
Resi
-
Promise<StartScanResponse>
Le promesse sono supportate solo per Manifest V3 e versioni successive, mentre le altre piattaforme devono utilizzare i callback.