chrome.documentScan

refresh date: 2026-09-25 robots: noindex

คำอธิบาย

ใช้ 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 ขึ้นไป

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

ค่าแจกแจง

"UNKNOWN"
เกิดความล้มเหลวที่ไม่ทราบสาเหตุหรือความล้มเหลวทั่วไป

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

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

"CANCELLED"
การดำเนินการถูกยกเลิก

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

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

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

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

"ADF_JAMMED"
ตัวป้อนเอกสารติดขัด

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

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

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

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

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

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

"ไม่พบ"
อุปกรณ์ไม่ได้เชื่อมต่ออยู่

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

OptionConstraint

Chrome 125 ขึ้นไป

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

  • list

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

  • สูงสุด

    number ไม่บังคับ

  • นาที

    number ไม่บังคับ

  • quant

    number ไม่บังคับ

  • ประเภท

OptionGroup

Chrome 125 ขึ้นไป

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

  • สมาชิก

    string[]

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

  • title

    สตริง

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

OptionSetting

Chrome 125 ขึ้นไป

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

  • name

    สตริง

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

  • ประเภท

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

  • value

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

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

OptionType

Chrome 125 ขึ้นไป

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

ค่าแจกแจง

"UNKNOWN"
ไม่ทราบประเภทข้อมูลของตัวเลือก ระบบจะยกเลิกการตั้งค่าพร็อพเพอร์ตี้ 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"
ค่าคือจำนวนบิต เช่น ความลึกของสี

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

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

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

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

ReadScanDataResponse

Chrome 125 ขึ้นไป

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

  • เพิ่มเติม

    ArrayBuffer ไม่บังคับ

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

  • estimatedCompletion

    number ไม่บังคับ

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

  • งาน

    สตริง

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

  • ผลลัพธ์

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

ScannerInfo

Chrome 125 ขึ้นไป

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

  • connectionType

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

  • deviceUuid

    สตริง

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

  • imageFormats

    string[]

    อาร์เรย์ของประเภท MIME ที่สามารถขอสำหรับการสแกนที่แสดงผล

  • ผู้ผลิต

    สตริง

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

  • รุ่น

    สตริง

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

  • name

    สตริง

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

  • protocolType

    สตริง

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

  • scannerId

    สตริง

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

  • ปลอดภัย

    บูลีน

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

ScannerOption

Chrome 125 ขึ้นไป

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

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

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

  • การจำกัด

    OptionConstraint ไม่บังคับ

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

  • คำอธิบาย

    สตริง

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

  • isActive

    บูลีน

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

  • isAdvanced

    บูลีน

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

  • isAutoSettable

    บูลีน

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

  • isDetectable

    บูลีน

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

  • isEmulated

    บูลีน

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

  • name

    สตริง

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

  • title

    สตริง

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

  • ประเภท

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

  • หน่วย

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

  • value

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

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

ScanOptions

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

  • maxImages

    number ไม่บังคับ

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

  • mimeTypes

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

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

ScanResults

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

  • dataUrls

    string[]

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

  • mimeType

    สตริง

    ประเภท MIME ของ dataUrls

SetOptionResult

Chrome 125 ขึ้นไป

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

  • name

    สตริง

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

  • ผลลัพธ์

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

SetOptionsResponse

Chrome 125 ขึ้นไป

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

  • ตัวเลือก

    object ไม่บังคับ

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

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

  • ผลลัพธ์

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

  • scannerHandle

    สตริง

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

StartScanOptions

Chrome 125 ขึ้นไป

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

  • รูปแบบ

    สตริง

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

  • maxReadSize

    number ไม่บังคับ

    หากระบุค่าที่ไม่ใช่ 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 หากใช้ Callback ระบบจะส่งออบเจ็กต์ไปยัง Callback แทน

พารามิเตอร์

  • งาน

    สตริง

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

  • callback

    function ไม่บังคับ

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

    (response: CancelScanResponse) => void

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

  • แสดงผล Promise ซึ่งจะได้รับการแก้ไขด้วยผลลัพธ์

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

closeScanner()

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

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

พารามิเตอร์

  • scannerHandle

    สตริง

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

  • callback

    function ไม่บังคับ

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

    (response: CloseScannerResponse) => void

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

  • แสดงผล Promise ซึ่งจะได้รับการแก้ไขด้วยผลลัพธ์

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

getOptionGroups()

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

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

พารามิเตอร์

  • scannerHandle

    สตริง

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

  • callback

    function ไม่บังคับ

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

    (response: GetOptionGroupsResponse) => void

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

  • แสดงผล Promise ซึ่งจะได้รับการแก้ไขด้วยผลลัพธ์

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

getScannerList()

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

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

พารามิเตอร์

  • ตัวกรอง

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

  • callback

    function ไม่บังคับ

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

    (response: GetScannerListResponse) => void

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

  • แสดงผล Promise ซึ่งจะแก้ไขด้วยผลลัพธ์และรายการเครื่องสแกน

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

openScanner()

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

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

พารามิเตอร์

  • scannerId

    สตริง

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

  • callback

    function ไม่บังคับ

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

    (response: OpenScannerResponse) => void

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

  • แสดงผล Promise ซึ่งจะได้รับการแก้ไขด้วยผลลัพธ์

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

readScanData()

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

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

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

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

พารามิเตอร์

  • งาน

    สตริง

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

  • callback

    function ไม่บังคับ

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

    (response: ReadScanDataResponse) => void

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

  • แสดงผล Promise ซึ่งจะได้รับการแก้ไขด้วยผลลัพธ์

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

scan()

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

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

พารามิเตอร์

  • ตัวเลือก

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

  • callback

    function ไม่บังคับ

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

    (result: ScanResults) => void

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

  • Promise<ScanResults>

    Chrome 96 ขึ้นไป

    แสดงผล Promise ซึ่งจะแก้ไขด้วยผลการสแกน

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

setOptions()

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

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

พารามิเตอร์

  • scannerHandle

    สตริง

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

  • ตัวเลือก

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

  • callback

    function ไม่บังคับ

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

    (response: SetOptionsResponse) => void

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

  • แสดงผล Promise ซึ่งจะได้รับการแก้ไขด้วยผลลัพธ์

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

startScan()

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

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

พารามิเตอร์

  • scannerHandle

    สตริง

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

  • ตัวเลือก

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

  • callback

    function ไม่บังคับ

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

    (response: StartScanResponse) => void

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

  • แสดงผล Promise ซึ่งจะได้รับการแก้ไขด้วยผลลัพธ์

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