chrome.documentScan

คำอธิบาย

ใช้ chrome.documentScan API เพื่อค้นหาและดึงรูปภาพจากเครื่องสแกนเอกสารที่แนบมา

สิทธิ์

documentScan

ความพร้อมใช้งาน

Chrome 44 ขึ้นไป ChromeOS เท่านั้น

Document Scan API

Document Scan API ออกแบบมาเพื่อให้แอปและส่วนขยายดูเนื้อหาของเอกสารกระดาษในเครื่องสแกนเอกสารที่แนบมาได้

ประเภท

CancelScanResponse

Chrome 125 ขึ้นไป

พร็อพเพอร์ตี้

  • งาน

    สตริง

    ระบุแฮนเดิลงานเดียวกันกับที่ส่งไปยัง cancelScan()

  • ผลลัพธ์

    ผลการยกเลิกการสแกนของแบ็กเอนด์ หากผลลัพธ์เป็น OperationResult.SUCCESS หรือ OperationResult.CANCELLED แสดงว่าระบบยกเลิกการสแกนแล้ว และสแกนเนอร์พร้อมที่จะเริ่มการสแกนใหม่ หากผลลัพธ์เป็น OperationResult.DEVICE_BUSY แสดงว่าเครื่องสแกนยังคงประมวลผลการยกเลิกที่ขออยู่ ผู้โทรควรรอสักครู่แล้วลองส่งคำขออีกครั้ง ค่าผลลัพธ์อื่นๆ แสดงข้อผิดพลาดถาวรที่ไม่ควรลองอีก

CloseScannerResponse

Chrome 125 ขึ้นไป

พร็อพเพอร์ตี้

  • ผลลัพธ์

    ผลลัพธ์ของการปิดเครื่องสแกน แม้ว่าค่านี้จะไม่ใช่ SUCCESS แต่แฮนเดิลจะใช้ไม่ได้และไม่ควรนำไปใช้ในการดำเนินการใดๆ เพิ่มเติม

  • scannerHandle

    สตริง

    แฮนเดิลของเครื่องสแกนเดียวกันกับที่ส่งไปยัง closeScanner

Configurability

Chrome 125 ขึ้นไป

วิธีเปลี่ยนตัวเลือก

ค่าแจกแจง

"NOT_CONFIGURABLE"
ตัวเลือกเป็นแบบอ่านอย่างเดียว

"SOFTWARE_CONFIGURABLE"
ตั้งค่าตัวเลือกในซอฟต์แวร์ได้

"HARDWARE_CONFIGURABLE"
ผู้ใช้สามารถตั้งค่าตัวเลือกได้โดยการเปิด/ปิดหรือกดปุ่มบนสแกนเนอร์

ConnectionType

Chrome 125 ขึ้นไป

ระบุวิธีเชื่อมต่อสแกนเนอร์กับคอมพิวเตอร์

ค่าแจกแจง

"UNSPECIFIED"

"USB"

"NETWORK"

ConstraintType

Chrome 125 ขึ้นไป

ประเภทข้อมูลของข้อจำกัดที่แสดงโดย OptionConstraint

ค่าแจกแจง

"INT_RANGE"
ข้อจำกัดเกี่ยวกับช่วงของค่า OptionType.INT พร็อพเพอร์ตี้ min, max และ quant ของ OptionConstraint จะเป็น long และพร็อพเพอร์ตี้ list จะไม่ได้ตั้งค่า

"FIXED_RANGE"
ข้อจำกัดเกี่ยวกับช่วงของค่า OptionType.FIXED พร็อพเพอร์ตี้ min, max และ quant ของ OptionConstraint จะเป็น double และพร็อพเพอร์ตี้ list จะไม่ได้ตั้งค่า

"INT_LIST"
ข้อจำกัดในรายการค่า OptionType.INT ที่เฉพาะเจาะจง พร็อพเพอร์ตี้ OptionConstraint.list จะมีค่า long และพร็อพเพอร์ตี้อื่นๆ จะไม่ได้ตั้งค่า

"FIXED_LIST"
ข้อจำกัดในรายการค่า OptionType.FIXED ที่เฉพาะเจาะจง พร็อพเพอร์ตี้ OptionConstraint.list จะมีค่า double และพร็อพเพอร์ตี้อื่นๆ จะไม่ได้ตั้งค่า

"STRING_LIST"
ข้อจำกัดในรายการค่า OptionType.STRING ที่เฉพาะเจาะจง พร็อพเพอร์ตี้ OptionConstraint.list จะมีค่า DOMString และพร็อพเพอร์ตี้อื่นๆ จะไม่ได้ตั้งค่า

DeviceFilter

Chrome 125 ขึ้นไป

พร็อพเพอร์ตี้

  • local

    บูลีน ไม่บังคับ

    ส่งคืนเฉพาะสแกนเนอร์ที่เชื่อมต่อกับคอมพิวเตอร์โดยตรง

  • ปลอดภัย

    บูลีน ไม่บังคับ

    แสดงเฉพาะสแกนเนอร์ที่ใช้การส่งที่ปลอดภัย เช่น USB หรือ TLS

GetOptionGroupsResponse

Chrome 125 ขึ้นไป

พร็อพเพอร์ตี้

  • กลุ่ม

    OptionGroup[] ไม่บังคับ

    หาก result เป็น SUCCESS จะแสดงรายการกลุ่มตัวเลือกตามลำดับที่ไดรเวอร์เครื่องสแกนระบุ

  • ผลลัพธ์

    ผลลัพธ์ของการรับกลุ่มตัวเลือก หากค่านี้เป็น SUCCESS ระบบจะกรอกข้อมูลพร็อพเพอร์ตี้ groups

  • scannerHandle

    สตริง

    แฮนเดิลของเครื่องสแกนเดียวกันกับที่ส่งไปยัง getOptionGroups

GetScannerListResponse

Chrome 125 ขึ้นไป

พร็อพเพอร์ตี้

  • ผลลัพธ์

    ผลการแจงนับ โปรดทราบว่าระบบอาจแสดงผลลัพธ์บางส่วนแม้ว่าการดำเนินการนี้จะระบุข้อผิดพลาดก็ตาม

  • สแกนเนอร์

    รายการเครื่องสแกนที่อาจว่างเปล่าซึ่งตรงกับ DeviceFilter ที่ระบุ

OpenScannerResponse

Chrome 125 ขึ้นไป

พร็อพเพอร์ตี้

  • ตัวเลือก

    object ไม่บังคับ

    หาก result เป็น SUCCESS ให้ระบุการแมปคีย์-ค่าโดยที่คีย์เป็นตัวเลือกเฉพาะอุปกรณ์ และค่าเป็นอินสแตนซ์ของ ScannerOption

  • ผลลัพธ์

    ผลลัพธ์ของการเปิดเครื่องสแกน หากค่านี้เป็น SUCCESS ระบบจะกรอกข้อมูลพร็อพเพอร์ตี้ scannerHandle และ options

  • scannerHandle

    สตริง ไม่บังคับ

    หาก result เป็น SUCCESS จะเป็นแฮนเดิลของเครื่องสแกนที่ใช้สำหรับการดำเนินการเพิ่มเติมได้

  • scannerId

    สตริง

    รหัสเครื่องสแกนที่ส่งไปยัง openScanner()

OperationResult

Chrome 125 ขึ้นไป

การแจงนับที่ระบุผลลัพธ์ของการดำเนินการแต่ละอย่าง

ค่าแจกแจง

"ไม่ทราบ"
เกิดข้อผิดพลาดที่ไม่รู้จักหรือทั่วไป

"SUCCESS"
การดำเนินการสำเร็จ

"ไม่รองรับ"
ไม่รองรับการดำเนินการนี้

"ยกเลิกแล้ว"
การดำเนินการถูกยกเลิก

"DEVICE_BUSY"
อุปกรณ์ยังไม่ว่าง

"ไม่ถูกต้อง"
ข้อมูลหรืออาร์กิวเมนต์ที่ส่งไปยังเมธอดไม่ถูกต้อง

"WRONG_TYPE"
ค่าที่ระบุมีประเภทข้อมูลที่ไม่ถูกต้องสำหรับตัวเลือกพื้นฐาน

"EOF"
ไม่มีข้อมูลเพิ่มเติม

"ADF_JAMMED"
ตัวป้อนเอกสารมีกระดาษติด

"ADF_EMPTY"
ไม่มีเอกสารในตัวป้อนเอกสาร

"COVER_OPEN"
ฝาของเครื่องสแกนแบบแท่นเปิดอยู่

"IO_ERROR"
เกิดข้อผิดพลาดขณะสื่อสารกับอุปกรณ์

"ACCESS_DENIED"
อุปกรณ์ต้องมีการตรวจสอบสิทธิ์

"NO_MEMORY"
Chromebook มีหน่วยความจำไม่เพียงพอที่จะดำเนินการให้เสร็จสมบูรณ์

"เข้าถึงไม่ได้"
เข้าถึงอุปกรณ์ไม่ได้

"สูญหาย"
อุปกรณ์ไม่ได้เชื่อมต่ออยู่

"INTERNAL_ERROR"
เกิดข้อผิดพลาดที่อื่นนอกเหนือจากแอปพลิเคชันที่เรียกใช้

OptionConstraint

Chrome 125 ขึ้นไป

พร็อพเพอร์ตี้

  • list

    string[] | number[] ไม่บังคับ

  • สูงสุด

    หมายเลข ไม่บังคับ

  • นาที

    หมายเลข ไม่บังคับ

  • quant

    หมายเลข ไม่บังคับ

  • ประเภท

OptionGroup

Chrome 125 ขึ้นไป

พร็อพเพอร์ตี้

  • สมาชิก

    string[]

    อาร์เรย์ของชื่อตัวเลือกตามลำดับที่ผู้ขับระบุ

  • title

    สตริง

    ระบุชื่อที่พิมพ์ได้ เช่น "ตัวเลือกเรขาคณิต"

OptionSetting

Chrome 125 ขึ้นไป

พร็อพเพอร์ตี้

  • ชื่อ

    สตริง

    ระบุชื่อของตัวเลือกที่จะตั้งค่า

  • ประเภท

    ระบุประเภทข้อมูลของตัวเลือก ประเภทข้อมูลที่ขอต้องตรงกับประเภทข้อมูลจริงของตัวเลือกพื้นฐาน

  • value

    สตริง | ตัวเลข | บูลีน | หมายเลข[] ไม่บังคับ

    ระบุค่าที่จะตั้ง ปล่อยว่างไว้เพื่อขอการตั้งค่าอัตโนมัติสำหรับตัวเลือกที่autoSettableเปิดใช้ ประเภทข้อมูลที่ระบุสำหรับ value ต้องตรงกับ type

OptionType

Chrome 125 ขึ้นไป

ประเภทข้อมูลของตัวเลือก

ค่าแจกแจง

"ไม่ทราบ"
ไม่ทราบประเภทข้อมูลของตัวเลือก ระบบจะยกเลิกการตั้งค่าพร็อพเพอร์ตี้ value

"BOOL"
พร็อพเพอร์ตี้ value จะเป็นค่าใดค่าหนึ่งระหว่าง truefalse

"INT"
จำนวนเต็มแบบ 32 บิตที่มีการลงนาม พร็อพเพอร์ตี้ value จะเป็น long หรือ long[] ขึ้นอยู่กับว่าตัวเลือกนั้นมีค่ามากกว่า 1 ค่าหรือไม่

"FIXED"
ค่า Double ในช่วง -32768-32767.9999 ที่มีความละเอียด 1/65535 พร็อพเพอร์ตี้ value จะเป็น double หรือ double[] ขึ้นอยู่กับว่าตัวเลือกมีค่ามากกว่า 1 ค่าหรือไม่ ค่า Double ที่แสดงอย่างแน่นอนไม่ได้จะได้รับการปัดเศษเป็นช่วงและความแม่นยำที่ใช้ได้

"STRING"
ลำดับของไบต์ใดก็ได้ยกเว้น NUL ("\0") พร็อพเพอร์ตี้ value จะเป็น DOMString

"BUTTON"
ตัวเลือกประเภทนี้ไม่มีค่า แต่การตั้งค่าตัวเลือกประเภทนี้จะทำให้เกิดผลข้างเคียงเฉพาะตัวเลือกในไดรเวอร์ของสแกนเนอร์ ตัวอย่างเช่น ไดรเวอร์สแกนเนอร์อาจใช้ตัวเลือกประเภทปุ่มเพื่อเป็นวิธีเลือกค่าเริ่มต้น หรือบอกตัวป้อนเอกสารอัตโนมัติให้เลื่อนไปยังกระดาษแผ่นถัดไป

"GROUP"
ตัวเลือกการจัดกลุ่ม ไม่มีค่า ซึ่งรวมไว้เพื่อความเข้ากันได้ แต่โดยปกติแล้วจะไม่แสดงในค่า ScannerOption ใช้ getOptionGroups() เพื่อดึงข้อมูลรายการกลุ่มพร้อมตัวเลือกสมาชิก

OptionUnit

Chrome 125 ขึ้นไป

ระบุประเภทข้อมูลสำหรับ ScannerOption.unit

ค่าแจกแจง

"UNITLESS"
ค่าเป็นตัวเลขที่ไม่มีหน่วย เช่น อาจเป็นเกณฑ์

"PIXEL"
ค่าคือจำนวนพิกเซล เช่น ขนาดการสแกน

"BIT"
ค่าคือจำนวนบิต เช่น ความลึกของสี

"มม."
ค่าจะวัดเป็นมิลลิเมตร เช่น ขนาดการสแกน

"DPI"
ค่าจะวัดเป็นจุดต่อนิ้ว เช่น ความละเอียด

"PERCENT"
ค่าเป็นเปอร์เซ็นต์ เช่น ความสว่าง

"MICROSECOND"
ค่าจะวัดเป็นไมโครวินาที เช่น เวลาเปิดรับแสง

ReadScanDataResponse

Chrome 125 ขึ้นไป

พร็อพเพอร์ตี้

  • เพิ่มเติม

    ArrayBuffer ไม่บังคับ

    หาก result เป็น SUCCESS จะมีข้อมูลรูปภาพที่สแกนแล้วถัดไป หาก result เป็น EOF จะมีข้อมูลรูปภาพที่สแกนสุดท้าย

  • estimatedCompletion

    หมายเลข ไม่บังคับ

    หาก result เป็น SUCCESS ค่าประมาณของข้อมูลการสแกนทั้งหมดที่ส่งแล้วจนถึงตอนนี้ในช่วง 0 ถึง 100

  • งาน

    สตริง

    ระบุแฮนเดิลของงานที่ส่งไปยัง readScanData()

  • ผลลัพธ์

    ผลลัพธ์ของการอ่านข้อมูล หากค่าเป็น SUCCESS แสดงว่า data มีข้อมูลรูปภาพส่วน next (อาจมีความยาวเป็น 0) ที่พร้อมอ่าน หากมีค่าเป็น EOF data จะมีข้อมูลรูปภาพส่วนสุดท้าย

ScannerInfo

Chrome 125 ขึ้นไป

พร็อพเพอร์ตี้

  • connectionType

    ระบุวิธีเชื่อมต่อสแกนเนอร์กับคอมพิวเตอร์

  • deviceUuid

    สตริง

    สำหรับการจับคู่กับรายการ ScannerInfo อื่นๆ ที่ชี้ไปยังอุปกรณ์จริงเดียวกัน

  • imageFormats

    string[]

    อาร์เรย์ของประเภท MIME ที่ขอได้สำหรับการสแกนที่ส่งคืน

  • ผู้ผลิต

    สตริง

    ผู้ผลิตเครื่องสแกน

  • รุ่น

    สตริง

    รุ่นของสแกนเนอร์ (หากมี) หรือคำอธิบายทั่วไป

  • ชื่อ

    สตริง

    ชื่อที่มนุษย์อ่านได้สำหรับเครื่องสแกนเพื่อแสดงใน UI

  • protocolType

    สตริง

    คำอธิบายที่มนุษย์อ่านได้ของโปรโตคอลหรือไดรเวอร์ที่ใช้เพื่อเข้าถึงสแกนเนอร์ เช่น Mopria, WSD หรือ epsonds ซึ่งจะมีประโยชน์หลักๆ ในการอนุญาตให้ผู้ใช้เลือกระหว่างโปรโตคอลต่างๆ หากอุปกรณ์รองรับหลายโปรโตคอล

  • scannerId

    สตริง

    รหัสของสแกนเนอร์ที่เฉพาะเจาะจง

  • ปลอดภัย

    บูลีน

    หากเป็นจริง ผู้ฟังแบบพาสซีฟ เช่น TLS หรือ USB จะสกัดกั้นการรับส่งของการเชื่อมต่อสแกนเนอร์ไม่ได้

ScannerOption

Chrome 125 ขึ้นไป

พร็อพเพอร์ตี้

  • ความสามารถในการกำหนดค่า

    ระบุว่าเปลี่ยนตัวเลือกได้หรือไม่และเปลี่ยนอย่างไร

  • ข้อจำกัด

    OptionConstraint ไม่บังคับ

    กำหนด OptionConstraint ในตัวเลือกเครื่องสแกนปัจจุบัน

  • คำอธิบาย

    สตริง

    คำอธิบายแบบยาวของตัวเลือก

  • isActive

    บูลีน

    ระบุว่าตัวเลือกใช้งานอยู่และตั้งค่าหรือดึงข้อมูลได้ หากเป็นเท็จ ระบบจะไม่ตั้งค่าพร็อพเพอร์ตี้ value

  • isAdvanced

    บูลีน

    ระบุว่า UI ไม่ควรแสดงตัวเลือกนี้โดยค่าเริ่มต้น

  • isAutoSettable

    บูลีน

    ไดรเวอร์เครื่องสแกนจะตั้งค่าโดยอัตโนมัติได้

  • isDetectable

    บูลีน

    ระบุว่าตรวจพบตัวเลือกนี้จากซอฟต์แวร์ได้

  • isEmulated

    บูลีน

    จำลองโดยไดรเวอร์เครื่องสแกนหากเป็นจริง

  • ชื่อ

    สตริง

    ชื่อตัวเลือกที่ใช้ตัวอักษร ASCII พิมพ์เล็ก ตัวเลข และขีดคั่น ไม่อนุญาตให้ใช้เครื่องหมายกำกับเสียง

  • title

    สตริง

    ชื่อแบบบรรทัดเดียวที่พิมพ์ได้

  • ประเภท

    ประเภทข้อมูลที่มีอยู่ในพร็อพเพอร์ตี้ value ซึ่งจำเป็นต่อการตั้งค่าตัวเลือกนี้

  • หน่วย

    หน่วยวัดสำหรับตัวเลือกนี้

  • value

    สตริง | ตัวเลข | บูลีน | หมายเลข[] ไม่บังคับ

    มูลค่าปัจจุบันของตัวเลือก หากเกี่ยวข้อง โปรดทราบว่าประเภทข้อมูลของพร็อพเพอร์ตี้นี้ต้องตรงกับประเภทข้อมูลที่ระบุใน type

ScanOptions

พร็อพเพอร์ตี้

  • maxImages

    หมายเลข ไม่บังคับ

    จำนวนรูปภาพที่สแกนที่อนุญาต ค่าเริ่มต้นคือ 1

  • mimeTypes

    string[] ไม่บังคับ

    ประเภท MIME ที่ผู้โทรยอมรับ

ScanResults

พร็อพเพอร์ตี้

  • dataUrls

    string[]

    อาร์เรย์ของ URL รูปภาพข้อมูลในรูปแบบที่ส่งเป็นค่า "src" ไปยังแท็กรูปภาพได้

  • mimeType

    สตริง

    ประเภท MIME ของ dataUrls

SetOptionResult

Chrome 125 ขึ้นไป

พร็อพเพอร์ตี้

  • ชื่อ

    สตริง

    ระบุชื่อของตัวเลือกที่ตั้งค่าไว้

  • ผลลัพธ์

    ระบุผลลัพธ์ของการตั้งค่าตัวเลือก

SetOptionsResponse

Chrome 125 ขึ้นไป

พร็อพเพอร์ตี้

  • ตัวเลือก

    object ไม่บังคับ

    การแมปคีย์-ค่าที่อัปเดตจากชื่อตัวเลือกไปยังค่า ScannerOption ที่มีการกำหนดค่าใหม่หลังจากพยายามตั้งค่าตัวเลือกทั้งหมดที่ระบุ ซึ่งมีโครงสร้างเดียวกับพร็อพเพอร์ตี้ options ใน OpenScannerResponse

    ระบบจะตั้งค่าพร็อพเพอร์ตี้นี้แม้ว่าจะตั้งค่าตัวเลือกบางอย่างไม่สำเร็จ แต่จะยกเลิกการตั้งค่าหากดึงข้อมูลการกำหนดค่าที่อัปเดตไม่สำเร็จ (เช่น หากสแกนเนอร์ถูกตัดการเชื่อมต่อกลางคัน)

  • ผลลัพธ์

    อาร์เรย์ของผลลัพธ์ โดยมีผลลัพธ์ 1 รายการสำหรับแต่ละ OptionSetting ที่ส่งผ่าน

  • scannerHandle

    สตริง

    ระบุแฮนเดิลของเครื่องสแกนที่ส่งไปยัง setOptions()

StartScanOptions

Chrome 125 ขึ้นไป

พร็อพเพอร์ตี้

  • รูปแบบ

    สตริง

    ระบุประเภท MIME ที่จะแสดงข้อมูลที่สแกน

  • maxReadSize

    หมายเลข ไม่บังคับ

    หากระบุค่าที่ไม่ใช่ 0 จะจำกัดจำนวนไบต์สูงสุดที่สแกนซึ่งแสดงผลในการตอบกลับ readScanData รายการเดียวเป็นค่าดังกล่าว ค่าที่เล็กที่สุดที่อนุญาตคือ 32768 (32 KB) หากไม่ได้ระบุพร็อพเพอร์ตี้นี้ ขนาดของก้อนข้อมูลที่ส่งคืนอาจมีขนาดใหญ่เท่ากับรูปภาพที่สแกนทั้งหมด

StartScanResponse

Chrome 125 ขึ้นไป

พร็อพเพอร์ตี้

  • งาน

    สตริง ไม่บังคับ

    หาก result เป็น SUCCESS จะมีแฮนเดิลที่ใช้เพื่ออ่านข้อมูลการสแกนหรือยกเลิกงานได้

  • ผลลัพธ์

    ผลลัพธ์ของการเริ่มการสแกน หากค่านี้เป็น SUCCESS ระบบจะกรอกข้อมูลพร็อพเพอร์ตี้ job

  • scannerHandle

    สตริง

    ระบุแฮนเดิลของสแกนเนอร์เดียวกันกับที่ส่งไปยัง startScan()

เมธอด

cancelScan()

Promise Chrome 125 ขึ้นไป
chrome.documentScan.cancelScan(
  job: string,
  callback?: function,
)
: Promise<CancelScanResponse>

ยกเลิกการสแกนที่เริ่มแล้วและส่งคืน Promise ที่จะแก้ไขด้วยออบเจ็กต์ CancelScanResponse หากใช้การเรียกกลับ ระบบจะส่งออบเจ็กต์ไปยังการเรียกกลับแทน

พารามิเตอร์

  • งาน

    สตริง

    แฮนเดิลของงานสแกนที่ใช้งานอยู่ซึ่งก่อนหน้านี้ส่งคืนจากการเรียกไปยัง startScan

  • callback

    ฟังก์ชัน ไม่บังคับ

    พารามิเตอร์ callback มีลักษณะดังนี้

    (response: CancelScanResponse) => void

การคืนสินค้า

  • ระบบรองรับ Promise สำหรับไฟล์ Manifest V3 ขึ้นไปเท่านั้น แพลตฟอร์มอื่นๆ ต้องใช้การเรียกกลับ

closeScanner()

Promise Chrome 125 ขึ้นไป
chrome.documentScan.closeScanner(
  scannerHandle: string,
  callback?: function,
)
: Promise<CloseScannerResponse>

ปิดเครื่องสแกนด้วยแฮนเดิลที่ส่งเข้ามาและแสดงผล Promise ที่จะแก้ไขด้วยออบเจ็กต์ CloseScannerResponse หากใช้การเรียกกลับ ระบบจะส่งออบเจ็กต์ไปยังการเรียกกลับแทน แม้ว่าการตอบกลับจะไม่สำเร็จ แต่แฮนเดิลที่ระบุจะใช้ไม่ได้และไม่ควรใช้สำหรับการดำเนินการเพิ่มเติม

พารามิเตอร์

  • scannerHandle

    สตริง

    ระบุแฮนเดิลของสแกนเนอร์ที่เปิดอยู่ซึ่งส่งคืนจากการเรียกใช้ openScanner ก่อนหน้านี้

  • callback

    ฟังก์ชัน ไม่บังคับ

    พารามิเตอร์ callback มีลักษณะดังนี้

    (response: CloseScannerResponse) => void

การคืนสินค้า

  • ระบบรองรับ Promise สำหรับไฟล์ Manifest V3 ขึ้นไปเท่านั้น แพลตฟอร์มอื่นๆ ต้องใช้การเรียกกลับ

getOptionGroups()

Promise Chrome 125 ขึ้นไป
chrome.documentScan.getOptionGroups(
  scannerHandle: string,
  callback?: function,
)
: Promise<GetOptionGroupsResponse>

รับชื่อกลุ่มและตัวเลือกสมาชิกจากเครื่องสแกนที่ openScanner เปิดไว้ก่อนหน้านี้ เมธอดนี้จะแสดงผล Promise ที่แก้ไขด้วยออบเจ็กต์ GetOptionGroupsResponse หากมีการส่ง Callback ไปยังฟังก์ชันนี้ ระบบจะส่งข้อมูลที่แสดงผลไปยัง Callback แทน

พารามิเตอร์

  • scannerHandle

    สตริง

    แฮนเดิลของเครื่องสแกนที่เปิดอยู่ซึ่งส่งคืนจากการเรียกใช้ openScanner

  • callback

    ฟังก์ชัน ไม่บังคับ

    พารามิเตอร์ callback มีลักษณะดังนี้

    (response: GetOptionGroupsResponse) => void

การคืนสินค้า

  • ระบบรองรับ Promise สำหรับไฟล์ Manifest V3 ขึ้นไปเท่านั้น แพลตฟอร์มอื่นๆ ต้องใช้การเรียกกลับ

getScannerList()

Promise Chrome 125 ขึ้นไป
chrome.documentScan.getScannerList(
  filter: DeviceFilter,
  callback?: function,
)
: Promise<GetScannerListResponse>

รับรายการสแกนเนอร์ที่พร้อมใช้งานและแสดงผล Promise ที่จะแก้ไขด้วยออบเจ็กต์ GetScannerListResponse หากมีการส่ง Callback ไปยังฟังก์ชันนี้ ระบบจะส่งข้อมูลที่แสดงผลไปยัง Callback แทน

พารามิเตอร์

  • ตัวกรอง

    DeviceFilter ที่ระบุประเภทของสแกนเนอร์ที่ควรแสดง

  • callback

    ฟังก์ชัน ไม่บังคับ

    พารามิเตอร์ callback มีลักษณะดังนี้

    (response: GetScannerListResponse) => void

การคืนสินค้า

  • ระบบรองรับ Promise สำหรับไฟล์ Manifest V3 ขึ้นไปเท่านั้น แพลตฟอร์มอื่นๆ ต้องใช้การเรียกกลับ

openScanner()

Promise Chrome 125 ขึ้นไป
chrome.documentScan.openScanner(
  scannerId: string,
  callback?: function,
)
: Promise<OpenScannerResponse>

เปิดเครื่องสแกนเพื่อเข้าถึงแบบพิเศษและแสดงผล Promise ที่จะแก้ไขด้วยออบเจ็กต์ OpenScannerResponse หากมีการส่ง Callback ไปยังฟังก์ชันนี้ ระบบจะส่งข้อมูลที่แสดงผลไปยัง Callback แทน

พารามิเตอร์

  • scannerId

    สตริง

    รหัสของเครื่องสแกนที่จะเปิด ค่านี้เป็นค่าที่ส่งคืนจากการเรียก getScannerList ก่อนหน้านี้

  • callback

    ฟังก์ชัน ไม่บังคับ

    พารามิเตอร์ callback มีลักษณะดังนี้

    (response: OpenScannerResponse) => void

การคืนสินค้า

  • ระบบรองรับ Promise สำหรับไฟล์ Manifest V3 ขึ้นไปเท่านั้น แพลตฟอร์มอื่นๆ ต้องใช้การเรียกกลับ

readScanData()

Promise Chrome 125 ขึ้นไป
chrome.documentScan.readScanData(
  job: string,
  callback?: function,
)
: Promise<ReadScanDataResponse>

อ่านก้อนข้อมูลรูปภาพถัดไปที่มีจากแฮนเดิลของงานที่ใช้งานอยู่ และส่งคืน Promise ที่จะเปลี่ยนเป็นออบเจ็กต์ ReadScanDataResponse หากใช้การเรียกกลับ ระบบจะส่งออบเจ็กต์ไปยังการเรียกกลับแทน

**หมายเหตุ:**ผลการตอบกลับอาจเป็น SUCCESS ที่มีสมาชิก data ที่มีความยาวเป็น 0 ซึ่งหมายความว่าเครื่องสแกนยังคงทำงานได้ แต่ยังไม่มีข้อมูลเพิ่มเติมพร้อมใช้งาน ผู้โทรควรรอสักครู่แล้วลองอีกครั้ง

เมื่องานสแกนเสร็จสมบูรณ์ คำตอบจะมีค่าผลลัพธ์เป็น EOF การตอบกลับนี้อาจมีสมาชิก data สุดท้ายที่ไม่ใช่ 0

พารามิเตอร์

  • งาน

    สตริง

    แฮนเดิลงานที่ใช้งานอยู่ซึ่งก่อนหน้านี้ส่งคืนจาก startScan

  • callback

    ฟังก์ชัน ไม่บังคับ

    พารามิเตอร์ callback มีลักษณะดังนี้

    (response: ReadScanDataResponse) => void

การคืนสินค้า

  • ระบบรองรับ Promise สำหรับไฟล์ Manifest V3 ขึ้นไปเท่านั้น แพลตฟอร์มอื่นๆ ต้องใช้การเรียกกลับ

scan()

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

ทำการสแกนเอกสารและแสดงผล Promise ที่จะแก้ไขด้วยออบเจ็กต์ ScanResults หากมีการส่ง Callback ไปยังฟังก์ชันนี้ ระบบจะส่งข้อมูลที่แสดงผลไปยัง Callback แทน

พารามิเตอร์

  • ตัวเลือก

    ออบเจ็กต์ที่มีพารามิเตอร์การสแกน

  • callback

    ฟังก์ชัน ไม่บังคับ

    พารามิเตอร์ callback มีลักษณะดังนี้

    (result: ScanResults) => void

การคืนสินค้า

  • Promise<ScanResults>

    Chrome 96 ขึ้นไป

    ระบบรองรับ Promise สำหรับไฟล์ Manifest V3 ขึ้นไปเท่านั้น แพลตฟอร์มอื่นๆ ต้องใช้การเรียกกลับ

setOptions()

Promise Chrome 125 ขึ้นไป
chrome.documentScan.setOptions(
  scannerHandle: string,
  options: OptionSetting[],
  callback?: function,
)
: Promise<SetOptionsResponse>

ตั้งค่าตัวเลือกในสแกนเนอร์ที่ระบุและแสดงผล Promise ที่จะแก้ไขด้วยออบเจ็กต์ SetOptionsResponse ที่มีผลลัพธ์ของการพยายามตั้งค่าทุกค่าตามลำดับในออบเจ็กต์ OptionSetting ที่ส่งเข้ามา หากใช้การเรียกกลับ ระบบจะส่งออบเจ็กต์ไปยังการเรียกกลับแทน

พารามิเตอร์

  • scannerHandle

    สตริง

    แฮนเดิลของเครื่องสแกนเพื่อตั้งค่าตัวเลือก ค่านี้ควรเป็นค่าที่ส่งคืนก่อนหน้านี้จากการเรียกไปยัง openScanner

  • ตัวเลือก

    รายการออบเจ็กต์ OptionSetting ที่จะใช้กับสแกนเนอร์

  • callback

    ฟังก์ชัน ไม่บังคับ

    พารามิเตอร์ callback มีลักษณะดังนี้

    (response: SetOptionsResponse) => void

การคืนสินค้า

  • ระบบรองรับ Promise สำหรับไฟล์ Manifest V3 ขึ้นไปเท่านั้น แพลตฟอร์มอื่นๆ ต้องใช้การเรียกกลับ

startScan()

Promise Chrome 125 ขึ้นไป
chrome.documentScan.startScan(
  scannerHandle: string,
  options: StartScanOptions,
  callback?: function,
)
: Promise<StartScanResponse>

เริ่มการสแกนในเครื่องสแกนที่ระบุและแสดงผล Promise ที่จะแก้ไขด้วย StartScanResponse หากใช้การเรียกกลับ ระบบจะส่งออบเจ็กต์ไปยังการเรียกกลับแทน หากการเรียกใช้สำเร็จ การตอบกลับจะมีแฮนเดิลของงานที่ใช้ในการเรียกใช้ครั้งต่อๆ ไปเพื่ออ่านข้อมูลการสแกนหรือยกเลิกการสแกนได้

พารามิเตอร์

  • scannerHandle

    สตริง

    แฮนเดิลของเครื่องสแกนที่เปิดอยู่ ค่านี้ควรเป็นค่าที่ส่งคืนก่อนหน้านี้จากการเรียกไปยัง openScanner

  • ตัวเลือก

    ออบเจ็กต์ StartScanOptions ที่ระบุตัวเลือกที่จะใช้สำหรับการสแกน พร็อพเพอร์ตี้ StartScanOptions.format ต้องตรงกับรายการใดรายการหนึ่งที่แสดงใน ScannerInfo ของสแกนเนอร์

  • callback

    ฟังก์ชัน ไม่บังคับ

    พารามิเตอร์ callback มีลักษณะดังนี้

    (response: StartScanResponse) => void

การคืนสินค้า

  • ระบบรองรับ Promise สำหรับไฟล์ Manifest V3 ขึ้นไปเท่านั้น แพลตฟอร์มอื่นๆ ต้องใช้การเรียกกลับ