Deskripsi
Gunakan chrome.documentScan
API untuk menemukan dan mengambil gambar dari pemindai dokumen yang terpasang.
Izin
documentScan
Ketersediaan
API Pemindaian Dokumen
Document Scan API dirancang untuk memungkinkan aplikasi dan ekstensi melihat konten dokumen kertas pada pemindai dokumen yang terpasang.
Jenis
CancelScanResponse
Properti
-
tugas
string
Memberikan handle tugas yang sama dengan yang diteruskan ke
cancelScan()
. -
hasil
Hasil pemindaian pembatalan backend. Jika hasilnya adalah
OperationResult.SUCCESS
atauOperationResult.CANCELLED
, pemindaian telah dibatalkan dan pemindai siap memulai pemindaian baru. Jika hasilnya adalahOperationResult.DEVICE_BUSY
, pemindai masih memproses pembatalan yang diminta; pemanggil akan menunggu beberapa saat dan mencoba permintaan lagi. Nilai hasil lainnya menunjukkan error permanen yang tidak boleh dicoba lagi.
CloseScannerResponse
Properti
-
hasil
Hasil dari penutupan pemindai. Meskipun nilai ini bukan
SUCCESS
, handle tidak akan valid dan tidak boleh digunakan untuk operasi lebih lanjut. -
scannerHandle
string
Tuas pemindai yang sama seperti yang diteruskan ke
closeScanner
.
Configurability
Cara mengubah opsi.
Enum
"NOT_CONFIGURABLE"
Opsinya hanya-baca.
"SOFTWARE_CONFIGURABLE"
Opsi ini dapat disetel di software.
"HARDWARE_CONFIGURABLE"
Opsi ini dapat disetel oleh pengguna yang mengalihkan atau menekan tombol pada pemindai.
ConnectionType
Menunjukkan cara pemindai terhubung ke komputer.
Enum
"USB"
ConstraintType
Jenis data batasan yang direpresentasikan oleh OptionConstraint
.
Enum
"INT_RANGE"
Batasan pada rentang nilai OptionType.INT
. Properti min
, max
, dan quant
dari OptionConstraint
akan menjadi long
, dan properti list
-nya tidak akan ditetapkan.
"FIXED_RANGE"
Batasan pada rentang nilai OptionType.FIXED
. Properti min
, max
, dan quant
dari OptionConstraint
akan menjadi double
, dan properti list
miliknya tidak akan ditetapkan.
"INT_LIST"
Batasan pada daftar spesifik dari nilai OptionType.INT
. Properti OptionConstraint.list
akan berisi nilai long
, dan properti lainnya tidak akan ditetapkan.
"FIXED_LIST"
Batasan pada daftar spesifik dari OptionType.FIXED
nilai. Properti OptionConstraint.list
akan berisi nilai double
, dan properti lainnya tidak akan ditetapkan.
"STRING_LIST"
Batasan pada daftar spesifik dari OptionType.STRING
nilai. Properti OptionConstraint.list
akan berisi nilai DOMString
, dan properti lainnya tidak akan ditetapkan.
DeviceFilter
Properti
-
lokal
boolean opsional
Hanya kembalikan pemindai yang langsung terpasang ke komputer.
-
aman
boolean opsional
Hanya tampilkan pemindai yang menggunakan transmisi aman, seperti USB atau TLS.
GetOptionGroupsResponse
Properti
-
grup
OptionGroup[] opsional
Jika
result
adalahSUCCESS
, daftar grup opsi akan diberikan dalam urutan yang diberikan oleh driver pemindai. -
hasil
Hasil mendapatkan grup opsi. Jika nilainya adalah
SUCCESS
, propertigroups
akan diisi. -
scannerHandle
string
Tuas pemindai yang sama seperti yang diteruskan ke
getOptionGroups
.
GetScannerListResponse
Properti
-
hasil
Hasil enumerasi. Perhatikan bahwa hasil sebagian dapat ditampilkan meskipun ini menunjukkan error.
-
pemindai
Daftar pemindai yang mungkin kosong dan sesuai dengan
DeviceFilter
yang diberikan.
OpenScannerResponse
Properti
-
opsi
objek opsional
Jika
result
adalahSUCCESS
, akan memberikan pemetaan nilai kunci dengan kunci berupa opsi khusus perangkat dan nilainya merupakan instanceScannerOption
. -
hasil
Hasil membuka pemindai. Jika nilainya adalah
SUCCESS
, propertiscannerHandle
danoptions
akan diisi. -
scannerHandle
string opsional
Jika
result
adalahSUCCESS
, tuas untuk pemindai yang dapat digunakan untuk operasi lebih lanjut. -
scannerId
string
ID pemindai diteruskan ke
openScanner()
.
OperationResult
Enum yang menunjukkan hasil setiap operasi.
Enum
"UNKNOWN"
Terjadi error tidak dikenal atau umum.
"SUCCESS"
Operasi berhasil.
"UNSUPPORTED"
Operasi ini tidak didukung.
"CANCELLED"
Operasi dibatalkan.
"DEVICE_BUSY"
Perangkat sibuk.
"INVALID"
Data atau argumen yang diteruskan ke metode tidak valid.
"WRONG_TYPE"
Nilai yang diberikan adalah jenis data yang salah untuk opsi pokok.
"EOF"
Tidak ada lagi data yang tersedia.
"ADF_JAMMED"
Pengumpan dokumen macet.
"ADF_EMPTY"
Pengumpan dokumen kosong.
"COVER_OPEN"
Penutup tempat tidur datar terbuka.
"IO_ERROR"
Terjadi error saat berkomunikasi dengan perangkat.
"ACCESS_DENIED"
Perangkat memerlukan autentikasi.
"NO_MEMORY"
Memori yang tersedia di Chromebook tidak cukup untuk menyelesaikan operasi.
"TIDAK DAPAT DIJANGKAU"
Perangkat tidak dapat dijangkau.
"TIDAK ADA"
Koneksi perangkat terputus.
"INTERNAL_ERROR"
Error terjadi di tempat lain selain aplikasi panggilan.
OptionConstraint
Properti
-
list
string[] | number[] opsional
-
max
nomor opsional
-
mnt
nomor opsional
-
kuantitas
nomor opsional
-
tipe
OptionGroup
Properti
-
anggota
string[]
Array nama opsi dalam urutan yang diberikan driver.
-
title
string
Menyediakan judul yang dapat dicetak, misalnya "Opsi geometri".
OptionSetting
Properti
-
name
string
Menunjukkan nama opsi yang akan ditetapkan.
-
tipe
Menunjukkan jenis data opsi. Jenis data yang diminta harus cocok dengan jenis data sebenarnya dari opsi pokok.
-
value
string | number | boolean | number[] opsional
Menunjukkan nilai yang akan ditetapkan. Biarkan tidak disetel untuk meminta setelan otomatis untuk opsi yang mengaktifkan
autoSettable
. Jenis data yang diberikan untukvalue
harus cocok dengantype
.
OptionType
Jenis data opsi.
Enum
"UNKNOWN"
Jenis data opsi tidak diketahui. Penetapan properti value
akan dibatalkan.
"BOOL"
Properti value
akan menjadi salah satu true
false.
"INT"
Bilangan bulat 32-bit bertanda tangan. Properti value
akan panjang atau panjang[], bergantung pada apakah opsi tersebut membutuhkan lebih dari satu nilai.
"PERBAIKAN"
Dua kali lipat dalam rentang -32768-32767,9999 dengan resolusi 1/65535. Properti value
akan menjadi double atau double[] bergantung pada apakah opsi tersebut membutuhkan lebih dari satu nilai. Nilai ganda yang tidak dapat direpresentasikan dengan tepat akan dibulatkan ke rentang dan presisi yang tersedia.
"STRING"
Urutan semua byte kecuali NUL ('\0'). Properti value
akan menjadi DOMString.
"BUTTON"
Opsi jenis ini tidak memiliki nilai. Sebaliknya, menyetel opsi jenis ini akan menyebabkan efek samping khusus opsi pada driver pemindai. Misalnya, opsi pengetikan tombol dapat digunakan oleh driver pemindai untuk memilih nilai default atau memberi tahu feeder dokumen otomatis untuk maju ke lembar kertas berikutnya.
"GROUP"
Opsi pengelompokan. Tidak ada nilai. Ini disertakan untuk kompatibilitas, tetapi biasanya tidak akan ditampilkan dalam nilai ScannerOption
. Gunakan getOptionGroups()
untuk mengambil daftar grup dengan opsi anggotanya.
Enum
"UNITLESS"
Nilainya adalah angka tanpa unit. Misalnya, nilai dapat menjadi nilai minimum.
"PIXEL"
Nilainya adalah jumlah piksel, misalnya, pindai dimensi.
"BIT"
Nilainya adalah jumlah bit, misalnya, kedalaman warna.
"MM"
Nilainya diukur dalam milimeter, misalnya, dimensi pindai.
"DPI"
Nilainya diukur dalam titik per inci, misalnya, resolusi.
"PERCENT"
Nilainya adalah persen, misalnya, kecerahan.
"MICROSECOND"
Nilainya diukur dalam mikrodetik, misalnya, waktu eksposur.
ReadScanDataResponse
Properti
-
data
ArrayBuffer opsional
Jika
result
adalahSUCCESS
, berarti berisi bagian berikutnya dari data gambar yang dipindai. Jikaresult
adalahEOF
, berarti berisi bagian terakhir dari data gambar yang dipindai. -
estimatedCompletion
nomor opsional
Jika
result
adalahSUCCESS
, perkiraan jumlah total data pemindaian yang telah dikirimkan sejauh ini, dalam rentang 0 hingga 100. -
tugas
string
Menyediakan handle tugas yang diteruskan ke
readScanData()
. -
hasil
Hasil pembacaan data. Jika nilainya
SUCCESS
, makadata
berisi bagian data gambar berikutnya (mungkin panjang nol) yang siap dibaca. Jika nilainya adalahEOF
,data
akan berisi bagian terakhir dari data gambar.
ScannerInfo
Properti
-
connectionType
Menunjukkan cara pemindai terhubung ke komputer.
-
deviceUuid
string
Untuk pencocokan dengan entri
ScannerInfo
lain yang mengarah ke perangkat fisik yang sama. -
imageFormats
string[]
Array jenis MIME yang dapat diminta untuk pemindaian yang ditampilkan.
-
produsen
string
Produsen pemindai.
-
model
string
Model pemindai jika tersedia, atau deskripsi umum.
-
name
string
Nama yang dapat dibaca manusia agar pemindai ditampilkan di UI.
-
protocolType
string
Deskripsi protokol atau driver yang dapat dibaca manusia yang digunakan untuk mengakses pemindai, seperti Mopria, WSD, atau epsonds. Fungsi ini sangat berguna agar pengguna dapat memilih di antara protokol jika perangkat mendukung beberapa protokol.
-
scannerId
string
ID pemindai tertentu.
-
aman
boolean
Jika true (benar), transport koneksi pemindai tidak dapat dicegat oleh pemroses pasif, seperti TLS atau USB.
ScannerOption
Properti
-
kemampuan konfigurasi
Menunjukkan apakah opsi dapat diubah dan bagaimana caranya.
-
batasan
OptionConstraint opsional
Menentukan
OptionConstraint
pada opsi pemindai saat ini. -
deskripsi
string
Deskripsi opsi yang lebih panjang.
-
isActive
boolean
Menunjukkan bahwa opsi aktif dan dapat ditetapkan atau diambil. Jika nilainya salah, properti
value
tidak akan ditetapkan. -
isAdvanced
boolean
Menunjukkan bahwa UI tidak boleh menampilkan opsi ini secara default.
-
isAutoSettable
boolean
Dapat disetel otomatis oleh driver pemindai.
-
isDetectable
boolean
Menunjukkan bahwa opsi ini dapat dideteksi dari software.
-
isEmulated
boolean
Diemulasikan oleh driver pemindai jika true (benar).
-
name
string
Nama opsi menggunakan huruf kecil ASCII, angka, dan tanda hubung. Diakritik tidak diizinkan.
-
title
string
Judul satu baris yang dapat dicetak.
-
tipe
Jenis data yang terdapat di properti
value
, yang diperlukan untuk menetapkan opsi ini. -
satuan
Satuan ukur untuk opsi ini.
-
value
string | number | boolean | number[] opsional
Nilai opsi saat ini, jika relevan. Perhatikan bahwa jenis data properti ini harus cocok dengan jenis data yang ditentukan di
type
.
ScanOptions
Properti
-
maxImages
nomor opsional
Jumlah gambar yang dipindai yang diizinkan. Nilai defaultnya adalah 1.
-
mimeTypes
string[] opsional
Jenis MIME yang diterima oleh pemanggil.
ScanResults
Properti
-
dataUrls
string[]
Array URL gambar data dalam formulir yang dapat diteruskan sebagai nilai "src" ke tag gambar.
-
mimeType
string
Jenis MIME
dataUrls
.
SetOptionResult
Properti
-
name
string
Menunjukkan nama opsi yang ditetapkan.
-
hasil
Menunjukkan hasil setelan opsi.
SetOptionsResponse
Properti
-
opsi
objek opsional
Pemetaan nilai kunci yang diperbarui dari nama opsi ke nilai
ScannerOption
yang berisi konfigurasi baru setelah mencoba menetapkan semua opsi yang disediakan. Properti ini memiliki struktur yang sama dengan propertioptions
diOpenScannerResponse
.Properti ini akan disetel meskipun beberapa opsi tidak berhasil disetel, tetapi akan dibatalkan penetapannya jika pengambilan konfigurasi yang diperbarui gagal (misalnya, jika pemindai terputus saat sedang memindai).
-
hasil
Array hasil, masing-masing untuk setiap
OptionSetting
yang diteruskan. -
scannerHandle
string
Menyediakan tuas pemindai yang diteruskan ke
setOptions()
.
StartScanOptions
Properti
-
format
string
Menentukan jenis MIME yang akan menampilkan data yang dipindai.
-
maxReadSize
nomor opsional
Jika nilai bukan nol ditentukan, batasi byte terpindai maksimum yang ditampilkan dalam respons
readScanData
tunggal untuk nilai tersebut. Nilai terkecil yang diizinkan adalah 32768 (32 KB). Jika properti ini tidak ditentukan, ukuran potongan yang ditampilkan mungkin sebesar keseluruhan gambar yang dipindai.
StartScanResponse
Properti
-
tugas
string opsional
Jika
result
adalahSUCCESS
, menyediakan handle yang dapat digunakan untuk membaca data pemindaian atau membatalkan tugas. -
hasil
Hasil memulai pemindaian. Jika nilainya adalah
SUCCESS
, propertijob
akan diisi. -
scannerHandle
string
Menyediakan tuas pemindai yang sama dengan yang diteruskan ke
startScan()
.
Metode
cancelScan()
chrome.documentScan.cancelScan(
job: string,
callback?: function,
)
Membatalkan pemindaian yang dimulai dan menampilkan Promise yang di-resolve dengan objek CancelScanResponse
. Jika callback digunakan, objek akan diteruskan ke callback tersebut.
Parameter
-
tugas
string
Handel tugas pemindaian aktif sebelumnya ditampilkan dari panggilan ke
startScan
. -
callback
fungsi opsional
Parameter
callback
terlihat seperti:(response: CancelScanResponse) => void
-
respons
-
Hasil
-
Promise<CancelScanResponse>
Promise hanya didukung untuk Manifes V3 dan yang lebih baru, platform lain perlu menggunakan callback.
closeScanner()
chrome.documentScan.closeScanner(
scannerHandle: string,
callback?: function,
)
Menutup pemindai dengan tuas yang diteruskan dan menampilkan Promise yang di-resolve dengan objek CloseScannerResponse
. Jika callback digunakan, objek akan diteruskan ke callback tersebut. Meskipun responsnya tidak berhasil, handle yang diberikan menjadi tidak valid dan tidak boleh digunakan untuk operasi lebih lanjut.
Parameter
-
scannerHandle
string
Menentukan handle pemindai terbuka yang sebelumnya ditampilkan dari panggilan ke
openScanner
. -
callback
fungsi opsional
Parameter
callback
terlihat seperti:(response: CloseScannerResponse) => void
-
respons
-
Hasil
-
Promise<CloseScannerResponse>
Promise hanya didukung untuk Manifes V3 dan yang lebih baru, platform lain perlu menggunakan callback.
getOptionGroups()
chrome.documentScan.getOptionGroups(
scannerHandle: string,
callback?: function,
)
Mendapatkan nama grup dan opsi anggota dari pemindai yang sebelumnya dibuka oleh openScanner
. Metode ini menampilkan Promise yang di-resolve dengan objek GetOptionGroupsResponse
. Jika callback diteruskan ke fungsi ini, data yang ditampilkan akan diteruskan ke fungsi ini.
Parameter
-
scannerHandle
string
Tuas pemindai terbuka yang ditampilkan dari panggilan ke
openScanner
. -
callback
fungsi opsional
Parameter
callback
terlihat seperti:(response: GetOptionGroupsResponse) => void
-
respons
-
Hasil
-
Promise<GetOptionGroupsResponse>
Promise hanya didukung untuk Manifes V3 dan yang lebih baru, platform lain perlu menggunakan callback.
getScannerList()
chrome.documentScan.getScannerList(
filter: DeviceFilter,
callback?: function,
)
Mendapatkan daftar pemindai yang tersedia dan menampilkan Promise yang di-resolve dengan objek GetScannerListResponse
. Jika callback diteruskan ke fungsi ini, data yang ditampilkan akan diteruskan ke fungsi ini.
Parameter
-
filter
DeviceFilter
yang menunjukkan jenis pemindai yang harus ditampilkan. -
callback
fungsi opsional
Parameter
callback
terlihat seperti:(response: GetScannerListResponse) => void
-
respons
-
Hasil
-
Promise<GetScannerListResponse>
Promise hanya didukung untuk Manifes V3 dan yang lebih baru, platform lain perlu menggunakan callback.
openScanner()
chrome.documentScan.openScanner(
scannerId: string,
callback?: function,
)
Membuka pemindai untuk akses eksklusif dan menampilkan Promise yang di-resolve dengan objek OpenScannerResponse
. Jika callback diteruskan ke fungsi ini, data yang ditampilkan akan diteruskan ke fungsi ini.
Parameter
-
scannerId
string
ID pemindai yang akan dibuka. Nilai ini adalah satu yang ditampilkan dari panggilan sebelumnya ke
getScannerList
. -
callback
fungsi opsional
Parameter
callback
terlihat seperti:(response: OpenScannerResponse) => void
-
respons
-
Hasil
-
Promise<OpenScannerResponse>
Promise hanya didukung untuk Manifes V3 dan yang lebih baru, platform lain perlu menggunakan callback.
readScanData()
chrome.documentScan.readScanData(
job: string,
callback?: function,
)
Membaca potongan data gambar berikutnya yang tersedia dari handle tugas aktif, dan menampilkan Promise yang di-resolve dengan objek ReadScanDataResponse
. Jika callback digunakan, objek akan diteruskan ke callback tersebut.
**Catatan:**Hasil respons yang valid adalah SUCCESS
dengan anggota data
dengan panjang nol. Hal ini berarti pemindai masih berfungsi, tetapi belum menyiapkan data tambahan. Penelepon akan menunggu beberapa saat dan mencoba lagi.
Setelah tugas pemindaian selesai, responsnya akan memiliki nilai hasil EOF
. Respons ini dapat berisi anggota akhir data
bukan nol.
Parameter
-
tugas
string
Nama sebutan channel tugas aktif yang sebelumnya ditampilkan dari
startScan
. -
callback
fungsi opsional
Parameter
callback
terlihat seperti:(response: ReadScanDataResponse) => void
-
respons
-
Hasil
-
Promise<ReadScanDataResponse>
Promise hanya didukung untuk Manifes V3 dan yang lebih baru, platform lain perlu menggunakan callback.
scan()
chrome.documentScan.scan(
options: ScanOptions,
callback?: function,
)
Melakukan pemindaian dokumen dan menampilkan Promise yang di-resolve dengan objek ScanResults
. Jika callback diteruskan ke fungsi ini, data yang ditampilkan akan diteruskan ke fungsi tersebut.
Parameter
-
opsi
Objek yang berisi parameter pemindaian.
-
callback
fungsi opsional
Parameter
callback
terlihat seperti:(result: ScanResults) => void
-
hasil
-
Hasil
-
Promise<ScanResults>
Chrome 96 dan yang lebih baruPromise hanya didukung untuk Manifes V3 dan yang lebih baru, platform lain perlu menggunakan callback.
setOptions()
chrome.documentScan.setOptions(
scannerHandle: string,
options: OptionSetting[],
callback?: function,
)
Menetapkan opsi pada pemindai yang ditentukan dan menampilkan Promise yang di-resolve dengan objek SetOptionsResponse
yang berisi hasil upaya penetapan setiap nilai dalam urutan objek OptionSetting
yang diteruskan. Jika callback digunakan, objek akan diteruskan ke callback tersebut.
Parameter
-
scannerHandle
string
Tuas pemindai untuk mengaktifkan opsi. Ini harus berupa nilai yang sebelumnya ditampilkan dari panggilan ke
openScanner
. -
opsi
Daftar objek
OptionSetting
yang akan diterapkan ke pemindai. -
callback
fungsi opsional
Parameter
callback
terlihat seperti:(response: SetOptionsResponse) => void
-
respons
-
Hasil
-
Promise<SetOptionsResponse>
Promise hanya didukung untuk Manifes V3 dan yang lebih baru, platform lain perlu menggunakan callback.
startScan()
chrome.documentScan.startScan(
scannerHandle: string,
options: StartScanOptions,
callback?: function,
)
Memulai pemindaian pada pemindai yang ditentukan dan menampilkan Promise yang di-resolve dengan StartScanResponse
. Jika callback digunakan, objek akan diteruskan ke callback tersebut. Jika panggilan berhasil, responsnya mencakup handle tugas yang dapat digunakan dalam panggilan berikutnya untuk membaca data pemindaian atau membatalkan pemindaian.
Parameter
-
scannerHandle
string
Gagang pemindai terbuka. Ini harus berupa nilai yang sebelumnya ditampilkan dari panggilan ke
openScanner
. -
opsi
Objek
StartScanOptions
yang menunjukkan opsi yang akan digunakan untuk pemindaian. PropertiStartScanOptions.format
harus cocok dengan salah satu entri yang ditampilkan dalamScannerInfo
pemindai. -
callback
fungsi opsional
Parameter
callback
terlihat seperti:(response: StartScanResponse) => void
-
respons
-
Hasil
-
Promise<StartScanResponse>
Promise hanya didukung untuk Manifes V3 dan yang lebih baru, platform lain perlu menggunakan callback.