कंपनी का ब्यौरा
अटैच किए गए दस्तावेज़ स्कैनर से इमेज खोजने और वापस पाने के लिए, chrome.documentScan
API का इस्तेमाल करें.
दस्तावेज़ स्कैन एपीआई को इस तरह से डिज़ाइन किया गया है कि ऐप्लिकेशन और एक्सटेंशन, अटैच किए गए दस्तावेज़ स्कैन करने वाले ऐप्लिकेशन पर काग़ज़ के दस्तावेज़ों का कॉन्टेंट देख सकें.
अनुमतियां
documentScan
उपलब्धता
सिद्धांत और इस्तेमाल
यह एपीआई, दस्तावेज़ों को स्कैन करने के दो तरीकों के साथ काम करता है. अगर आपके इस्तेमाल का उदाहरण किसी भी स्कैनर के साथ काम कर सकता है और उसके लिए कॉन्फ़िगरेशन को कंट्रोल करने की ज़रूरत नहीं है, तो scan()
तरीके का इस्तेमाल करें. इस्तेमाल के ज़्यादा जटिल मामलों में, अलग-अलग तरीकों की ज़रूरत होती है, जो सिर्फ़ Chrome 124 और उसके बाद के वर्शन में काम करती हैं.
आसानी से स्कैन करने की सुविधा
आसान इस्तेमाल के मामलों में, scan()
को कॉल करें. इसका मतलब है कि जो किसी भी स्कैनर के साथ काम कर सकते हैं और जिनके लिए कॉन्फ़िगरेशन को कंट्रोल करने की ज़रूरत नहीं होती. यह तरीका ScanOptions
ऑब्जेक्ट को लेता है और प्रॉमिस दिखाता है. यह प्रॉमिस, ScanResults
ऑब्जेक्ट से रिज़ॉल्व होता है. इस विकल्प का इस्तेमाल, स्कैन करने की संख्या और कॉलर के लिए स्वीकार किए जाने
वाले MIME टाइप तक ही किया जा सकता है. स्कैन को यूआरएल के तौर पर दिखाया जाता है, ताकि यूज़र इंटरफ़ेस के <img>
टैग में इसे दिखाया जा सके.
जटिल स्कैनिंग
इस सेक्शन में बताया गया है कि कॉम्प्लेक्स स्कैन तीन चरणों में पूरे किए जाते हैं. यह आउटलाइन हर तर्क तर्क या जवाब में दिखाई गई हर प्रॉपर्टी के बारे में नहीं बताती. इसका मकसद सिर्फ़ आपको स्कैनर कोड लिखने की सामान्य गाइड देना है.
डिस्कवरी कैंपेन
getScannerList()
पर कॉल करें. उपलब्ध स्कैनर ऐसे प्रॉमिस के तौर पर दिखाए जाते हैं जोGetScannerListResponse
के साथ रिज़ॉल्व हो जाते हैं.- रिस्पॉन्स ऑब्जेक्ट में,
ScannerInfo
ऑब्जेक्ट का कलेक्शन होता है. - अगर किसी स्कैनर में एक से ज़्यादा प्रोटोकॉल या कनेक्शन के तरीके काम करते हैं, तो कलेक्शन में एक स्कैनर के लिए एक से ज़्यादा एंट्री हो सकती हैं.
- रिस्पॉन्स ऑब्जेक्ट में,
दिखाए गए कलेक्शन से कोई स्कैनर चुनें और उसकी
scannerId
प्रॉपर्टी की वैल्यू सेव करें.एक ही स्कैनर को एक से ज़्यादा ऑब्जेक्ट में अंतर करने के लिए, अलग-अलग
ScannerInfo
ऑब्जेक्ट की प्रॉपर्टी का इस्तेमाल करें. एक ही स्कैनर के ऑब्जेक्ट कीdeviceUuid
प्रॉपर्टी के लिए एक ही वैल्यू होगी.ScannerInfo
में एकimageFormats
प्रॉपर्टी भी होती है. इसमें कई तरह की इमेज शामिल होती हैं.
स्कैनर का कॉन्फ़िगरेशन
openScanner()
पर कॉल करें और सेव किए गए स्कैनर आईडी को पास करें. यह ऐसा प्रॉमिस देता है जोOpenScannerResponse
से रिज़ॉल्व हो जाता है. रिस्पॉन्स ऑब्जेक्ट में यह शामिल है:scannerHandle
प्रॉपर्टी, जिसे आपको सेव करना होगा.विकल्प प्रॉपर्टी में स्कैनर की खास प्रॉपर्टी होती हैं. आपको इन्हें सेट करना होगा. ज़्यादा जानकारी के लिए, फ़ाइलें वापस पाने के लिए स्कैनर के विकल्प देखें.
(ज़रूरी नहीं) अगर आपको उपयोगकर्ता से स्कैनर के विकल्पों की वैल्यू देनी है, तो यूज़र इंटरफ़ेस बनाएं. आपको पिछले चरण में दिए गए स्कैनर के विकल्पों की ज़रूरत होगी. साथ ही, आपको स्कैनर से मिले विकल्प के ग्रुप वापस लाने होंगे. ज़्यादा जानकारी के लिए, यूज़र इंटरफ़ेस बनाना लेख पढ़ें.
प्रोग्राम के हिसाब से या उपयोगकर्ता से मिली वैल्यू का इस्तेमाल करके,
OptionSetting
ऑब्जेक्ट का कलेक्शन बनाएं. ज़्यादा जानकारी के लिए, स्कैनर के विकल्प सेट करें देखें.स्कैनर के विकल्प सेट करने के लिए,
OptionSetting
ऑब्जेक्ट के अरे कोsetOptions()
पर पास करें. यह ऐसा प्रॉमिस दिखाता है जोSetOptionsResponse
से रिज़ॉल्व होता है. इस ऑब्जेक्ट में, स्कैनर के कॉन्फ़िगरेशन के पहले चरण में मिले स्कैनर का अपडेट किया गया वर्शन है.एक विकल्प को बदलने से, दूसरे विकल्प पर लगी पाबंदियां बदल सकती हैं. इसलिए, आपको इन चरणों को कई बार दोहराना पड़ सकता है.
स्कैन किया जा रहा है
एक
StartScanOptions
ऑब्जेक्ट बनाएं और उसेstartScan()
में पास करें. यह ऐसा प्रॉमिस देता है जोStartScanResponse
के साथ रिज़ॉल्व हो जाता है. इसकीjob
प्रॉपर्टी एक हैंडल है. इसका इस्तेमाल, स्कैन डेटा पढ़ने या स्कैन रद्द करने के लिए किया जा सकता है.readScanData()
को जॉब हैंडल दें. यह ऐसा प्रॉमिस देता है जोReadScanDataResponse
ऑब्जेक्ट की मदद से रिज़ॉल्व होता है. अगर डेटा सही तरीके से पढ़ा गया है, तो इसकीresult
प्रॉपर्टीSUCCESS
के बराबर है. साथ ही, इसकीdata
प्रॉपर्टी में एक ऐसाArrayBuffer
प्रॉपर्टी है जिसमें स्कैन का कुछ हिस्सा मौजूद है. ध्यान दें किestimatedCompletion
में, अब तक डिलीवर किए गए कुल डेटा का अनुमानित प्रतिशत शामिल है.पिछला चरण तब तक दोहराएं, जब तक
result
प्रॉपर्टी की वैल्यूEOF
के बराबर न हो या कोई गड़बड़ी न दिखे.
स्कैन पूरा होने के बाद, तीसरे चरण में सेव किए गए स्कैनर हैंडल से closeScanner()
पर कॉल करें. यह ऐसा प्रॉमिस दिखाता है जो CloseScannerResponse
से रिज़ॉल्व हो जाता है. जॉब बनने के बाद, किसी भी समय cancelScan()
को कॉल करने पर, स्कैन करना बंद हो जाएगा.
रिस्पॉन्स ऑब्जेक्ट
सभी तरीकों से ऐसा प्रॉमिस दिखता है जो किसी रिस्पॉन्स ऑब्जेक्ट के साथ रिज़ॉल्व होता है.
इनमें से ज़्यादातर में result
प्रॉपर्टी है, जिसकी वैल्यू
OperationResult
का सदस्य है. रिस्पॉन्स ऑब्जेक्ट की कुछ प्रॉपर्टी में तब तक वैल्यू नहीं होंगी, जब तक result
की वैल्यू कोई खास वैल्यू न हो. इन संबंधों के बारे में, हर रिस्पॉन्स ऑब्जेक्ट के रेफ़रंस में बताया गया है.
उदाहरण के लिए, OpenScannerResponse.scannerHandle
की वैल्यू सिर्फ़ तब होगी, जब
OpenScannerResponse.result
का मान SUCCESS
हो.
स्कैनर के विकल्प
स्कैनर के विकल्प डिवाइस के हिसाब से काफ़ी अलग होते हैं. इसी वजह से, स्कैनर के विकल्पों को सीधे documentScan API में नहीं दिखाया जा सकता. इसके बारे में जानने के लिए, OpenScannerResponse
(openScanner()
का इस्तेमाल करके वापस लाया गया) और SetOptionsResponse
(setOptions()
के लिए रिस्पॉन्स ऑब्जेक्ट) में एक options
प्रॉपर्टी होती है. यह एक ऑब्जेक्ट है, जिसमें स्कैनर के हिसाब से विकल्प मौजूद होते हैं. हर विकल्प, की-वैल्यू मैपिंग है. इसमें कुंजी, डिवाइस के हिसाब से तय की गई वैल्यू है और वैल्यू, ScannerOption
का इंस्टेंस है.
आम तौर पर, स्ट्रक्चर ऐसा दिखता है:
{
"key1": { scannerOptionInstance }
"key2": { scannerOptionInstance }
}
उदाहरण के लिए, एक ऐसा स्कैनर जो "सोर्स" और "रिज़ॉल्यूशन"
नाम के विकल्प दिखाता है. दिखाए गए options
ऑब्जेक्ट का स्ट्रक्चर, नीचे दिए गए उदाहरण की तरह कुछ दिखेगा. आसानी के लिए, सिर्फ़ आंशिक ScannerOption
रिस्पॉन्स दिखाए जाते हैं.
{
"source": {
"name": "source",
"type": OptionType.STRING,
...
},
"resolution": {
"name": "resolution",
"type": OptionType.INT,
...
},
...
}
यूज़र इंटरफ़ेस बनाना
हालांकि, इस एपीआई का इस्तेमाल करने की ज़रूरत नहीं है, लेकिन आप उपयोगकर्ता से किसी खास विकल्प के लिए वैल्यू चुन सकते हैं. इसके लिए, यूज़र इंटरफ़ेस (यूआई) होना ज़रूरी है. अटैच किए गए स्कैनर के विकल्प फिर से पाने के लिए, OpenScannerResponse
(openScanner()
ने खोला) का इस्तेमाल करें. इस बारे में पिछले सेक्शन में बताया गया है.
कुछ स्कैनर, डिवाइस के हिसाब से अलग-अलग तरह के विकल्पों का ग्रुप बनाते हैं. इनसे विकल्प के व्यवहार पर कोई असर नहीं पड़ता. हालांकि, इन ग्रुप के बारे में स्कैनर के प्रॉडक्ट दस्तावेज़ में बताया जा सकता है. इसलिए, ऐसे ग्रुप उपयोगकर्ता को दिखाए जाने चाहिए. getOptionGroups()
पर कॉल करके, इन ग्रुप को वापस पाया जा सकता है. यह ऐसा प्रॉमिस देता है जो GetOptionGroupsResponse
ऑब्जेक्ट की मदद से रिज़ॉल्व होता है. इसकी groups
प्रॉपर्टी में, स्कैनर के हिसाब से बने ग्रुप का कलेक्शन होता है. OpenScannerResponse
में दिख रहे विकल्पों को व्यवस्थित करने के लिए, इन ग्रुप की जानकारी का इस्तेमाल करें.
{
scannerHandle: "123456",
result: SUCCESS,
groups: [
{
title: "Standard",
members: [ "resolution", "mode", "source" ]
}
]
}
जैसा कि Scanner कॉन्फ़िगरेशन में बताया गया है, एक विकल्प को बदलने से दूसरे विकल्प की सीमाएं बदल सकती हैं. इस वजह से, setOptionsResponse
(setOptions()
के लिए रिस्पॉन्स ऑब्जेक्ट) में एक और options
प्रॉपर्टी मौजूद है. यूज़र इंटरफ़ेस
को अपडेट करने के लिए इसका इस्तेमाल करें. इसके बाद, ज़रूरत के हिसाब से इस प्रोसेस को तब तक दोहराएं, जब तक सभी विकल्प सेट न हो जाएं.
स्कैनर के विकल्प सेट करना
OptionSetting
ऑब्जेक्ट की कैटगरी को setOptions()
में पास करके, स्कैनर के विकल्प सेट करें. उदाहरण के लिए, नीचे दिया गया एक अक्षर के साइज़ वाला पेज स्कैन करें सेक्शन देखें.
उदाहरण
पेज को ब्लॉब के तौर पर वापस पाना
इस उदाहरण में, स्कैनर से किसी पेज को ब्लॉब के तौर पर वापस पाने का एक तरीका दिखाया गया है. साथ ही, इसमें OperationResult
की वैल्यू का इस्तेमाल करके, startScan()
और readScanData()
का इस्तेमाल दिखाया गया है.
async function pageAsBlob(handle) {
let response = await chrome.documentScan.startScan(
handle, {format: "image/jpeg"});
if (response.result != chrome.documentScan.OperationResult.SUCCESS) {
return null;
}
const job = response.job;
let imgParts = [];
response = await chrome.documentScan.readScanData(job);
while (response.result == chrome.documentScan.OperationResult.SUCCESS) {
if (response.data && response.data.byteLength > 0) {
imgParts.push(response.data);
} else {
// Delay so hardware can make progress.
await new Promise(r => setTimeout(r, 100));
}
response = await chrome.documentScan.readScanData(job);
}
if (response.result != chrome.documentScan.OperationResult.EOF) {
return null;
}
if (response.data && response.data.byteLength > 0) {
imgParts.push(response.data);
}
return new Blob(imgParts, { type: "image/jpeg" });
}
एक अक्षर के साइज़ वाला पेज स्कैन करें
इस उदाहरण में, स्कैनर चुनने, उसके विकल्प सेट करने, और उसे खोलने का तरीका बताया गया है. इसके बाद, यह एक पेज के कॉन्टेंट को इकट्ठा करता है और स्कैनर को बंद करता है. यह प्रोसेस
getScannerList()
, openScanner()
, setOptions()
, और
closeScanner()
का इस्तेमाल करती है. ध्यान दें कि पेज का कॉन्टेंट वापस पाने के लिए, पिछले उदाहरण से pageAsBlob()
फ़ंक्शन को कॉल किया जाता है.
async function scan() {
let response = await chrome.documentScan.getScannerList({ secure: true });
let scanner = await chrome.documentScan.openScanner(
response.scanners[0].scannerId);
const handle = scanner.scannerHandle;
let options = [];
for (source of scanner.options["source"].constraint.list) {
if (source.includes("ADF")) {
options.push({
name: "source",
type: chrome.documentScan.OptionType.STRING,
value: { value: source }
});
break;
}
}
options.push({
name: "tl-x",
type: chrome.documentScan.OptionType.FIXED,
value: 0.0
});
options.push({
name: "br-x",
type: chrome.documentScan.OptionType.FIXED,
value: 215.9 // 8.5" in mm
});
options.push({
name: "tl-y",
type: chrome.documentScan.OptionType.FIXED,
value: 0.0
});
options.push({
name: "br-y",
type: chrome.documentScan.OptionType.FIXED,
value: 279.4 // 11" in mm
});
response = await chrome.documentScan.setOptions(handle, options);
let imgBlob = await pageAsBlob(handle);
if (imgBlob != null) {
// Insert imgBlob into DOM, save to disk, etc
}
await chrome.documentScan.closeScanner(handle);
}
कॉन्फ़िगरेशन दिखाएं
जैसा कि हमने कहीं और बताया है, उपयोगकर्ता को स्कैनर के कॉन्फ़िगरेशन के विकल्प दिखाने के लिए, openScanner()
को कॉल करके लौटाए गए स्कैनर के साथ-साथ getOptionGroups()
को कॉल करना ज़रूरी होता है. ऐसा इसलिए है, ताकि मैन्युफ़ैक्चरर के तय किए गए ग्रुप के उपयोगकर्ताओं को विकल्प
दिखाए जा सकें. इस उदाहरण में ऐसा करने का तरीका बताया गया है.
async function showConfig() {
let response = await chrome.documentScan.getScannerList({ secure: true });
let scanner = await chrome.documentScan.openScanner(
response.scanners[0].scannerId);
let groups = await chrome.documentScan.getOptionGroups(scanner.scannerHandle);
for (const group of groups.groups) {
console.log("=== " + group.title + " ===");
for (const member of group.members) {
const option = scanner.options[member];
if (option.isActive) {
console.log(" " + option.name + " = " + option.value);
} else {
console.log(" " + option.name + " is inactive");
}
}
}
}
टाइप
CancelScanResponse
प्रॉपर्टी
-
नौकरी
स्ट्रिंग
वही जॉब हैंडल देता है जो
cancelScan()
को भेजा गया था. -
नतीजा
बैकएंड का स्कैन रद्द करने का नतीजा. अगर नतीजा
OperationResult.SUCCESS
याOperationResult.CANCELLED
आता है, तो स्कैन रद्द कर दिया गया है और स्कैनर नया स्कैन शुरू करने के लिए तैयार है. अगर नतीजाOperationResult.DEVICE_BUSY
मिलता है , तो इसका मतलब है कि स्कैनर अब भी रद्द करने के अनुरोध को प्रोसेस कर रहा है. कॉल करने वाले को कुछ समय इंतज़ार करना चाहिए और फिर से अनुरोध करने की कोशिश करनी चाहिए. अन्य नतीजे की वैल्यू से पता चलता है कि कोई गड़बड़ी हमेशा के लिए हुई है. ऐसा करने की कोशिश नहीं की जानी चाहिए.
CloseScannerResponse
प्रॉपर्टी
-
नतीजा
स्कैनर बंद करने का नतीजा. अगर यह वैल्यू
SUCCESS
न हो, तब भी हैंडल अमान्य होगा. साथ ही, किसी भी अन्य कार्रवाई के लिए इसका इस्तेमाल नहीं किया जाना चाहिए. -
scannerHandle
स्ट्रिंग
वही स्कैनर हैंडल जो
closeScanner
को दिया गया था.
Configurability
विकल्प को कैसे बदला जा सकता है.
Enum
"NOT_CONFIGURABLE"
यह विकल्प सिर्फ़ पढ़ने के लिए है.
"SOFTWARE_CONFIGURABLE"
इस विकल्प को सॉफ़्टवेयर में सेट किया जा सकता है.
"HARDWARE_CONFIGURABLE"
उपयोगकर्ता, स्कैनर पर बटन को टॉगल करके या दबाकर, यह विकल्प सेट कर सकता है.
ConnectionType
इससे पता चलता है कि स्कैनर कैसे कंप्यूटर से कनेक्ट है.
Enum
"NETWORK"
ConstraintType
डेटा टाइप के कंस्ट्रेंट को OptionConstraint
से दिखाया जाता है.
Enum
"INT_RANGE"
OptionType.INT
की वैल्यू की रेंज पर कंस्ट्रेंट. OptionConstraint
की min
, max
, और quant
प्रॉपर्टी long
होगी और उसकी list
संभावना अनसेट की जाएगी.
"FIXED_RANGE"
OptionType.FIXED
की वैल्यू की रेंज पर कंस्ट्रेंट. OptionConstraint
की min
, max
, और quant
प्रॉपर्टी double
होगी और उसकी list
प्रॉपर्टी अनसेट की जाएगी.
"INT_LIST"
OptionType.INT
वैल्यू की खास सूची का कंस्ट्रेंट. OptionConstraint.list
प्रॉपर्टी में long
वैल्यू शामिल होंगी और अन्य प्रॉपर्टी अनसेट हो जाएंगी.
"FIXED_LIST"
OptionType.FIXED
वैल्यू की किसी खास सूची पर कंस्ट्रेंट. OptionConstraint.list
प्रॉपर्टी में double
वैल्यू शामिल होंगी और अन्य प्रॉपर्टी अनसेट हो जाएंगी.
"STRING_LIST"
OptionType.STRING
वैल्यू की किसी खास सूची का कंस्ट्रेंट. OptionConstraint.list
प्रॉपर्टी में DOMString
वैल्यू शामिल होंगी और अन्य प्रॉपर्टी अनसेट हो जाएंगी.
DeviceFilter
प्रॉपर्टी
-
लोकल
बूलियन ज़रूरी नहीं
सिर्फ़ वे स्कैनर वापस करें जो सीधे कंप्यूटर से अटैच किए गए हों.
-
सुरक्षित
बूलियन ज़रूरी नहीं
सिर्फ़ वे स्कैनर वापस करें जो सुरक्षित ट्रांसपोर्ट का इस्तेमाल करते हैं, जैसे कि यूएसबी या TLS.
GetOptionGroupsResponse
प्रॉपर्टी
-
ग्रुप
OptionGroup[] ज़रूरी नहीं
अगर
result
SUCCESS
है, तो स्कैनर ड्राइवर के बताए गए क्रम के हिसाब से विकल्प ग्रुप की सूची उपलब्ध कराता है. -
नतीजा
विकल्प ग्रुप पाने का नतीजा. अगर इसकी वैल्यू
SUCCESS
है, तोgroups
प्रॉपर्टी में जानकारी अपने-आप भर जाएगी. -
scannerHandle
स्ट्रिंग
वही स्कैनर हैंडल जो
getOptionGroups
को दिया गया था.
GetScannerListResponse
प्रॉपर्टी
-
नतीजा
इन्यूमिरेशन का नतीजा. ध्यान दें कि अगर इससे गड़बड़ी दिखती है, तब भी कुछ नतीजे दिखाए जा सकते हैं.
-
स्कैनर
दिए गए
DeviceFilter
से मेल खाने वाले स्कैनर की शायद खाली सूची.
OpenScannerResponse
प्रॉपर्टी
-
विकल्प
ऑब्जेक्ट ज़रूरी नहीं
अगर
result
SUCCESS
है, तो की-वैल्यू मैपिंग उपलब्ध कराता है. यहां कुंजी, डिवाइस के हिसाब से विकल्प होती है और वैल्यू,ScannerOption
का इंस्टेंस होती है. -
नतीजा
स्कैनर खोलने का नतीजा. अगर इसकी वैल्यू
SUCCESS
है, तोscannerHandle
औरoptions
प्रॉपर्टी में जानकारी अपने-आप भर जाएगी. -
scannerHandle
स्ट्रिंग ज़रूरी नहीं
अगर
result
की वैल्यूSUCCESS
है, तो स्कैनर का हैंडल होगा. इसका इस्तेमाल, आगे की कार्रवाइयों के लिए किया जा सकेगा. -
scannerId
स्ट्रिंग
स्कैनर आईडी
openScanner()
को पास किया गया.
OperationResult
हर कार्रवाई के नतीजे को दिखाने वाली एनम.
Enum
"UNKNOWN"
कोई ऐसी गड़बड़ी हुई जिसकी जानकारी नहीं है या कोई सामान्य गड़बड़ी हुई है.
"सफल"
कार्रवाई पूरी हो गई.
"UNSUPPORTED"
यह कार्रवाई नहीं की जा सकती.
"रद्द किया गया"
कार्रवाई रद्द कर दी गई थी.
"DEVICE_BUSY"
डिवाइस व्यस्त है.
"अमान्य"
या तो डेटा या इस तरीके में पास किया गया तर्क मान्य नहीं है.
"WRONG_TYPE"
दिया गया मान, दिए गए विकल्प के लिए गलत डेटा टाइप है.
"EOF"
अब कोई डेटा उपलब्ध नहीं है.
"ADF_JAMMED"
दस्तावेज़ फ़ीडर जाम हो गया है.
"ADF_EMPTY"
दस्तावेज़ फ़ीडर खाली है.
"COVER_OPEN"
फ़्लैट किया हुआ कवर खुला है.
"IO_ERROR"
डिवाइस के साथ बातचीत करते समय कोई गड़बड़ी हुई.
"ACCESS_DENIED"
डिवाइस के लिए पुष्टि करना ज़रूरी है.
"NO_MEMORY"
Chromebook में ऑपरेशन को पूरा करने के लिए ज़रूरी मेमोरी उपलब्ध नहीं है.
"ऐक्सेस नहीं है"
डिवाइस उपलब्ध नहीं है.
"उपलब्ध नहीं है"
डिवाइस डिसकनेक्ट हो गया है.
"INTERNAL_ERROR"
कॉल करने वाले ऐप्लिकेशन के अलावा कहीं और गड़बड़ी हुई है.
OptionConstraint
प्रॉपर्टी
-
सूची
स्ट्रिंग[] | नंबर[] ज़रूरी नहीं
-
ज़्यादा से ज़्यादा
नंबर ज़रूरी नहीं
-
कम से कम
नंबर ज़रूरी नहीं
-
मात्रा
नंबर ज़रूरी नहीं
-
टाइप
OptionGroup
प्रॉपर्टी
-
सदस्य
स्ट्रिंग[]
ड्राइवर के दिए गए क्रम में विकल्प के नामों की कैटगरी.
-
title
स्ट्रिंग
प्रिंट किया जा सकने वाला शीर्षक देता हो, जैसे कि "ज्यामिति विकल्प".
OptionSetting
प्रॉपर्टी
-
नाम
स्ट्रिंग
सेट किए जाने वाले विकल्प का नाम दिखाता है.
-
टाइप
विकल्प के डेटा टाइप को दिखाता है. अनुरोध किए गए डेटा टाइप को, दिए गए विकल्प के असली डेटा टाइप से मेल खाना चाहिए.
-
value
स्ट्रिंग | नंबर | बूलियन | नंबर[] ज़रूरी नहीं
सेट की जाने वाली वैल्यू दिखाता है. जिन विकल्पों के लिए
autoSettable
चालू है उनके लिए, अपने-आप लागू होने वाली सेटिंग का अनुरोध करने के लिए, इस नीति को सेट न करें.value
के लिए दिया गया डेटा टाइपtype
से मेल खाना चाहिए.
OptionType
किसी विकल्प का डेटा टाइप.
Enum
"UNKNOWN"
विकल्प का डेटा टाइप पता नहीं है. value
प्रॉपर्टी अनसेट कर दी जाएगी.
"BOOL"
value
प्रॉपर्टी, true
false में से एक होगी.
"INT"
साइन किया गया 32-बिट वाला पूर्णांक. value
प्रॉपर्टी लंबी होगी[], जो इस बात पर निर्भर करेगी कि विकल्प में एक से ज़्यादा वैल्यू हैं या नहीं.
"ठीक किया गया"
डबल रेंज -32768-32767.9999 में, जिसका रिज़ॉल्यूशन 1/65535 है. इस प्रॉपर्टी के लिए, value
प्रॉपर्टी डबल या डबल[] होगी. यह इस बात पर निर्भर करता है कि विकल्प में एक से ज़्यादा वैल्यू दी गई हैं या नहीं. जिन डबल वैल्यू को पूरी तरह से नहीं दिखाया जा सकता उन्हें उपलब्ध रेंज और सटीक जानकारी में बदल दिया जाएगा.
"STRING"
NUL ('\0') को छोड़कर किसी भी बाइट का क्रम. value
प्रॉपर्टी एक DOMString होगी.
"BUTTON"
इस तरह के एक विकल्प की कोई वैल्यू नहीं है. इसके बजाय, इस तरह का विकल्प सेट करने से स्कैनर ड्राइवर में विकल्प के हिसाब से खराब असर पड़ता है. उदाहरण के लिए, स्कैनर ड्राइवर, बटन टाइप किए गए बटन के विकल्प का इस्तेमाल करके, डिफ़ॉल्ट वैल्यू चुनने के तरीके उपलब्ध करा सकता है या अपने-आप दस्तावेज़ फ़ीडर को पेपर की अगली शीट पर जाने के लिए कह सकता है.
"GROUP"
ग्रुपिंग विकल्प. कोई वैल्यू नहीं. इसे काम करने के लिए शामिल किया गया है. हालांकि, आम तौर पर इसे ScannerOption
वैल्यू में नहीं दिखाया जाएगा. getOptionGroups()
का इस्तेमाल करके, सदस्यों के लिए उपलब्ध विकल्पों के साथ ग्रुप की सूची फिर से पाएं.
OptionUnit
इससे पता चलता है कि ScannerOption.unit
का डेटा किस तरह का है.
Enum
"UNITसेट"
वैल्यू, यूनिटलेस नंबर है. उदाहरण के लिए, यह एक थ्रेशोल्ड हो सकता है.
"PIXEL"
वैल्यू कई पिक्सल में होती है. उदाहरण के लिए, स्कैन डाइमेंशन.
"BIT"
वैल्यू बिट की संख्या है, जैसे कि रंग की गहराई.
"MM"
वैल्यू, मिलीमीटर में मापी जाती है. उदाहरण के लिए, स्कैन डाइमेंशन.
"डीपीआई"
वैल्यू को बिंदु प्रति इंच के हिसाब से मापा जाता है. उदाहरण के लिए, रिज़ॉल्यूशन.
"PERCENT"
वैल्यू प्रतिशत है. उदाहरण के लिए, स्क्रीन की रोशनी.
"MICROSECOND"
वैल्यू को माइक्रोसेकंड में मापा जाता है. उदाहरण के लिए, एक्सपोज़र का समय.
ReadScanDataResponse
प्रॉपर्टी
-
डेटा
arrayBuffer ज़रूरी नहीं
अगर
result
SUCCESS
है, तो इसमें स्कैन किए गए इमेज डेटा का अगला हिस्सा होता है. अगरresult
EOF
है, तो इसमें स्कैन किए गए इमेज डेटा का आखिरी हिस्सा होता है. -
estimatedCompletion
नंबर ज़रूरी नहीं
अगर
result
SUCCESS
है, तो 0 से 100 की रेंज में, स्कैन का अब तक का कुल डेटा डिलीवर हो चुका है. -
नौकरी
स्ट्रिंग
readScanData()
को भेजा गया जॉब हैंडल देता है. -
नतीजा
डेटा पढ़ने का नतीजा. अगर इसकी वैल्यू
SUCCESS
है, तोdata
में इमेज डेटा का next (शायद शून्य हो) वाला वह हिस्सा शामिल होगा जो पढ़ने के लिए तैयार है. अगर इसकी वैल्यूEOF
है, तोdata
में इमेज डेटा का आखिरी हिस्सा शामिल होता है.
ScannerInfo
प्रॉपर्टी
-
connectionType
इससे पता चलता है कि स्कैनर कैसे कंप्यूटर से कनेक्ट है.
-
deviceUuid
स्ट्रिंग
एक ही फ़िज़िकल डिवाइस पर ले जाने वाली अन्य
ScannerInfo
एंट्री से मैच करने के लिए. -
imageFormats
स्ट्रिंग[]
MIME टाइप की कैटगरी जिसका अनुरोध, लौटाए गए स्कैन के लिए किया जा सकता है.
-
निर्माता
स्ट्रिंग
स्कैनर बनाने वाली कंपनी.
-
model
स्ट्रिंग
स्कैनर का मॉडल उपलब्ध होने पर या उसके बारे में सामान्य जानकारी.
-
नाम
स्ट्रिंग
स्कैनर का यूज़र इंटरफ़ेस (यूआई) में दिखने वाला नाम, जिसे कोई भी व्यक्ति आसानी से पढ़ सकता है.
-
protocolType
स्ट्रिंग
स्कैनर को ऐक्सेस करने के लिए इस्तेमाल किए जाने वाले प्रोटोकॉल या ड्राइवर की जानकारी, जिसे कोई भी व्यक्ति आसानी से पढ़ सके. जैसे, Mopria, WSD या epsonds. अगर किसी डिवाइस पर एक से ज़्यादा प्रोटोकॉल काम करते हैं, तो यह तरीका खास तौर पर उपयोगकर्ता को प्रोटोकॉल में से किसी एक को चुनने के लिए इस्तेमाल किया जाता है.
-
scannerId
स्ट्रिंग
किसी खास स्कैनर का आईडी.
-
सुरक्षित
boolean
सही होने पर, स्कैनर के कनेक्शन को TLS या यूएसबी जैसे पैसिव लिसनर से नहीं रोका जा सकता.
ScannerOption
प्रॉपर्टी
-
कॉन्फ़िगर करने की क्षमता
यह बताता है कि विकल्प को बदला जा सकता है या नहीं और अगर किया जा सकता है, तो कैसे.
-
कंस्ट्रेंट
OptionConstraint ज़रूरी नहीं है
स्कैनर के मौजूदा विकल्प के बारे में
OptionConstraint
के बारे में बताता है. -
ब्यौरा
स्ट्रिंग
विकल्प के बारे में ज़्यादा जानकारी.
-
isActive
boolean
इससे पता चलता है कि विकल्प चालू है और इसे सेट या वापस लाया जा सकता है. गलत होने पर,
value
प्रॉपर्टी सेट नहीं की जाएगी. -
isAdvanced
boolean
इससे पता चलता है कि यूज़र इंटरफ़ेस (यूआई) को यह विकल्प डिफ़ॉल्ट रूप से नहीं दिखाना चाहिए.
-
isAutoSettable
boolean
स्कैनर ड्राइवर के ज़रिए अपने-आप सेट किया जा सकता है.
-
isDetectable
boolean
इससे पता चलता है कि इस विकल्प का पता सॉफ़्टवेयर से लगाया जा सकता है.
-
isEmulated
boolean
सही होने पर स्कैनर ड्राइवर ने एम्युलेट किया.
-
नाम
स्ट्रिंग
अंग्रेज़ी के छोटे अक्षरों, अंकों, और डैश का इस्तेमाल करके विकल्प का नाम. खास तरह के चिह्नों की अनुमति नहीं है.
-
title
स्ट्रिंग
प्रिंट किया जा सकने वाला एक पंक्ति का शीर्षक.
-
टाइप
value
प्रॉपर्टी में शामिल डेटा टाइप, जो इस विकल्प को सेट करने के लिए ज़रूरी है. -
यूनिट
इस विकल्प के लिए मेज़रमेंट की इकाई.
-
value
स्ट्रिंग | नंबर | बूलियन | नंबर[] ज़रूरी नहीं
अगर ज़रूरी हो, तो विकल्प की मौजूदा वैल्यू. ध्यान दें कि इस प्रॉपर्टी का डेटा टाइप,
type
में दिए गए डेटा टाइप से मेल खाना चाहिए.
ScanOptions
प्रॉपर्टी
-
maxImages
नंबर ज़रूरी नहीं
स्कैन की गई इमेज की संख्या. डिफ़ॉल्ट वैल्यू 1 होती है.
-
mimeTypes
स्ट्रिंग[] ज़रूरी नहीं है
ऐसे MIME टाइप जिन्हें कॉल करने वाला (कॉलर) स्वीकार करता है.
ScanResults
प्रॉपर्टी
-
dataUrls
स्ट्रिंग[]
इमेज के डेटा के यूआरएल का कलेक्शन, ऐसे फ़ॉर्मैट में होता है जिसे किसी इमेज टैग को "src" वैल्यू के रूप में पास किया जा सकता है.
-
mimeType
स्ट्रिंग
dataUrls
का MIME प्रकार.
SetOptionResult
प्रॉपर्टी
-
नाम
स्ट्रिंग
सेट किए गए विकल्प का नाम दिखाता है.
-
नतीजा
विकल्प सेट करने का नतीजा दिखाता है.
SetOptionsResponse
प्रॉपर्टी
-
विकल्प
ऑब्जेक्ट ज़रूरी नहीं
दिए गए सभी विकल्पों को सेट करने की कोशिश करने के बाद, विकल्प के नामों से लेकर नए कॉन्फ़िगरेशन वाली
ScannerOption
वैल्यू पर अपडेट की गई की-वैल्यू मैपिंग. इसका स्ट्रक्चर,OpenScannerResponse
कीoptions
प्रॉपर्टी जैसा ही है.कुछ विकल्प सेट न होने पर भी, इस प्रॉपर्टी को सेट कर दिया जाएगा. हालांकि, अपडेट किए गए कॉन्फ़िगरेशन के न मिलने पर, इस प्रॉपर्टी को सेट नहीं किया जाएगा. उदाहरण के लिए, स्कैन करने के दौरान ही स्कैनर डिसकनेक्ट हो जाएगा.
-
नतीजे
नतीजों की कैटगरी, हर
OptionSetting
पास होने वाले हर व्यक्ति के लिए एक. -
scannerHandle
स्ट्रिंग
setOptions()
को भेजा गया स्कैनर हैंडल उपलब्ध कराता है.
StartScanOptions
प्रॉपर्टी
-
फ़ॉर्मैट
स्ट्रिंग
यह बताता है कि स्कैन किया गया डेटा MIME टाइप में दिया जाए या नहीं.
-
maxReadSize
नंबर ज़रूरी नहीं
अगर कोई वैल्यू शून्य नहीं है, तो उस वैल्यू के लिए एक
readScanData
रिस्पॉन्स में, स्कैन किए गए ज़्यादा से ज़्यादा बाइट को सीमित किया जा सकता है. सबसे छोटी वैल्यू 32768 (32 केबी) होनी चाहिए. अगर इस प्रॉपर्टी के बारे में जानकारी नहीं दी गई है, तो लौटाए गए हिस्से का साइज़, स्कैन की गई पूरी इमेज के बराबर हो सकता है.
StartScanResponse
प्रॉपर्टी
-
नौकरी
स्ट्रिंग ज़रूरी नहीं
अगर
result
की वैल्यूSUCCESS
है, तो हैंडल उपलब्ध कराता है. इसका इस्तेमाल, स्कैन किए गए डेटा को पढ़ने या जॉब रद्द करने के लिए किया जा सकता है. -
नतीजा
स्कैन शुरू करने का नतीजा. अगर इसकी वैल्यू
SUCCESS
है, तोjob
प्रॉपर्टी में जानकारी अपने-आप भर जाएगी. -
scannerHandle
स्ट्रिंग
वही स्कैनर हैंडल देता है जो
startScan()
को भेजा गया था.
तरीके
cancelScan()
chrome.documentScan.cancelScan(
job: string,
callback?: function,
)
शुरू किए गए स्कैन को रद्द करता है और CancelScanResponse
ऑब्जेक्ट के साथ रिज़ॉल्व होने वाला प्रॉमिस दिखाता है. अगर कॉलबैक का इस्तेमाल किया जाता है, तो ऑब्जेक्ट को पास कर दिया जाता है.
पैरामीटर
-
नौकरी
स्ट्रिंग
startScan
पर किए गए कॉल से, स्कैन किए गए काम का हैंडल. -
कॉलबैक
फ़ंक्शन ज़रूरी नहीं
callback
पैरामीटर ऐसा दिखता है:(response: CancelScanResponse) => void
-
जवाब
-
लौटाए गए प्रॉडक्ट
-
Promise<CancelScanResponse>
प्रॉमिस, मेनिफ़ेस्ट V3 और इसके बाद के वर्शन में काम करता है. हालांकि, पुराने सिस्टम के साथ काम करने के लिए कॉलबैक दिए जाते हैं. आप एक ही फ़ंक्शन कॉल पर दोनों का इस्तेमाल नहीं कर सकते. प्रॉमिस उसी टाइप के साथ रिज़ॉल्व हो जाती है जिसे कॉलबैक को पास किया जाता है.
closeScanner()
chrome.documentScan.closeScanner(
scannerHandle: string,
callback?: function,
)
पास किए गए हैंडल वाले स्कैनर को बंद करता है और CloseScannerResponse
ऑब्जेक्ट के साथ रिज़ॉल्व होने वाला प्रॉमिस देता है. अगर कॉलबैक का इस्तेमाल किया जाता है, तो ऑब्जेक्ट को पास कर दिया जाता है. भले ही रिस्पॉन्स सफल न हो, लेकिन दिया गया हैंडल अमान्य हो जाता है. इसलिए, आगे की कार्रवाइयों के लिए इसका इस्तेमाल नहीं किया जाना चाहिए.
पैरामीटर
-
scannerHandle
स्ट्रिंग
इस नीति की मदद से, खुले हुए स्कैनर के हैंडल के बारे में जानकारी मिलती है. हालांकि, यह डेटा
openScanner
पर किए गए कॉल के ज़रिए वापस भेजा जाता है. -
कॉलबैक
फ़ंक्शन ज़रूरी नहीं
callback
पैरामीटर ऐसा दिखता है:(response: CloseScannerResponse) => void
-
जवाब
-
लौटाए गए प्रॉडक्ट
-
Promise<CloseScannerResponse>
प्रॉमिस, मेनिफ़ेस्ट V3 और इसके बाद के वर्शन में काम करता है. हालांकि, पुराने सिस्टम के साथ काम करने के लिए कॉलबैक दिए जाते हैं. आप एक ही फ़ंक्शन कॉल पर दोनों का इस्तेमाल नहीं कर सकते. प्रॉमिस उसी टाइप के साथ रिज़ॉल्व हो जाती है जिसे कॉलबैक को पास किया जाता है.
getOptionGroups()
chrome.documentScan.getOptionGroups(
scannerHandle: string,
callback?: function,
)
openScanner
के ज़रिए पहले खोले गए स्कैनर से ग्रुप के नाम और सदस्य के विकल्पों की जानकारी मिलती है. यह तरीका ऐसा प्रॉमिस देता है जो GetOptionGroupsResponse
ऑब्जेक्ट की मदद से रिज़ॉल्व होता है. अगर इस फ़ंक्शन को कॉलबैक पास किया जाता है, तो इसके बजाय लौटाए गए डेटा को पास किया जाएगा.
पैरामीटर
-
scannerHandle
स्ट्रिंग
openScanner
को किए गए कॉल से, खुले हुए स्कैनर का हैंडल. -
कॉलबैक
फ़ंक्शन ज़रूरी नहीं
callback
पैरामीटर ऐसा दिखता है:(response: GetOptionGroupsResponse) => void
लौटाए गए प्रॉडक्ट
-
Promise<GetOptionGroupsResponse>
प्रॉमिस, मेनिफ़ेस्ट V3 और इसके बाद के वर्शन में काम करता है. हालांकि, पुराने सिस्टम के साथ काम करने के लिए कॉलबैक दिए जाते हैं. आप एक ही फ़ंक्शन कॉल पर दोनों का इस्तेमाल नहीं कर सकते. प्रॉमिस उसी टाइप के साथ रिज़ॉल्व हो जाती है जिसे कॉलबैक को पास किया जाता है.
getScannerList()
chrome.documentScan.getScannerList(
filter: DeviceFilter,
callback?: function,
)
उपलब्ध स्कैनर की सूची फ़ेच करता है और ऐसा प्रॉमिस देता है जो GetScannerListResponse
ऑब्जेक्ट के साथ रिज़ॉल्व हो जाता है. अगर इस फ़ंक्शन को कॉलबैक पास किया जाता है, तो इसके बजाय लौटाए गए डेटा को पास किया जाएगा.
पैरामीटर
-
फ़िल्टर
इस
DeviceFilter
से पता चलता है कि किस तरह के स्कैनर दिखाए जाने चाहिए. -
कॉलबैक
फ़ंक्शन ज़रूरी नहीं
callback
पैरामीटर ऐसा दिखता है:(response: GetScannerListResponse) => void
लौटाए गए प्रॉडक्ट
-
Promise<GetScannerListResponse>
प्रॉमिस, मेनिफ़ेस्ट V3 और इसके बाद के वर्शन में काम करता है. हालांकि, पुराने सिस्टम के साथ काम करने के लिए कॉलबैक दिए जाते हैं. आप एक ही फ़ंक्शन कॉल पर दोनों का इस्तेमाल नहीं कर सकते. प्रॉमिस उसी टाइप के साथ रिज़ॉल्व हो जाती है जिसे कॉलबैक को पास किया जाता है.
openScanner()
chrome.documentScan.openScanner(
scannerId: string,
callback?: function,
)
खास ऐक्सेस के लिए स्कैनर खोलता है और OpenScannerResponse
ऑब्जेक्ट से रिज़ॉल्व होने वाला प्रॉमिस दिखाता है. अगर इस फ़ंक्शन को कॉलबैक पास किया जाता है, तो इसके बजाय लौटाए गए डेटा को पास किया जाएगा.
पैरामीटर
-
scannerId
स्ट्रिंग
खोले जाने वाले स्कैनर का आईडी. यह वैल्यू,
getScannerList
को किए गए पिछले कॉल से मिली है. -
कॉलबैक
फ़ंक्शन ज़रूरी नहीं
callback
पैरामीटर ऐसा दिखता है:(response: OpenScannerResponse) => void
-
जवाब
-
लौटाए गए प्रॉडक्ट
-
Promise<OpenScannerResponse>
प्रॉमिस, मेनिफ़ेस्ट V3 और इसके बाद के वर्शन में काम करता है. हालांकि, पुराने सिस्टम के साथ काम करने के लिए कॉलबैक दिए जाते हैं. आप एक ही फ़ंक्शन कॉल पर दोनों का इस्तेमाल नहीं कर सकते. प्रॉमिस उसी टाइप के साथ रिज़ॉल्व हो जाती है जिसे कॉलबैक को पास किया जाता है.
readScanData()
chrome.documentScan.readScanData(
job: string,
callback?: function,
)
किसी ऐक्टिव जॉब हैंडल से उपलब्ध इमेज डेटा के अगले हिस्से को पढ़ता है और ReadScanDataResponse
ऑब्जेक्ट के साथ रिज़ॉल्व होने वाला प्रॉमिस देता है. अगर कॉलबैक का इस्तेमाल किया जाता है, तो ऑब्जेक्ट को पास कर दिया जाता है.
**ध्यान दें:**यह जवाब तब ही मान्य होता है, जब data
मेंबर की शून्य लंबाई वाला SUCCESS
हो. इसका मतलब है कि स्कैनर अब भी काम कर रहा है, लेकिन इसके लिए अतिरिक्त डेटा तैयार नहीं है. कॉल करने वाले को कुछ देर इंतज़ार करना चाहिए और फिर से कोशिश करनी चाहिए.
स्कैन पूरा होने पर, रिस्पॉन्स की वैल्यू EOF
होगी. इस जवाब में शून्य data
सदस्य नहीं हो सकता.
पैरामीटर
-
नौकरी
स्ट्रिंग
ऐक्टिव जॉब हैंडल, पहले
startScan
से मिला था. -
कॉलबैक
फ़ंक्शन ज़रूरी नहीं
callback
पैरामीटर ऐसा दिखता है:(response: ReadScanDataResponse) => void
-
जवाब
-
लौटाए गए प्रॉडक्ट
-
Promise<ReadScanDataResponse>
प्रॉमिस, मेनिफ़ेस्ट V3 और इसके बाद के वर्शन में काम करता है. हालांकि, पुराने सिस्टम के साथ काम करने के लिए कॉलबैक दिए जाते हैं. आप एक ही फ़ंक्शन कॉल पर दोनों का इस्तेमाल नहीं कर सकते. प्रॉमिस उसी टाइप के साथ रिज़ॉल्व हो जाती है जिसे कॉलबैक को पास किया जाता है.
scan()
chrome.documentScan.scan(
options: ScanOptions,
callback?: function,
)
दस्तावेज़ को स्कैन करता है और ScanResults
ऑब्जेक्ट की मदद से रिज़ॉल्व होने वाला प्रॉमिस दिखाता है. अगर इस फ़ंक्शन में कोई कॉलबैक पास किया जाता है, तो इसके बजाय वापस दिया गया डेटा पास किया जाता है.
पैरामीटर
-
विकल्प
स्कैन पैरामीटर वाला ऑब्जेक्ट.
-
कॉलबैक
फ़ंक्शन ज़रूरी नहीं
callback
पैरामीटर ऐसा दिखता है:(result: ScanResults) => void
-
नतीजा
-
लौटाए गए प्रॉडक्ट
-
Promise<ScanResults>
Chrome 96 के बाद के वर्शनप्रॉमिस, मेनिफ़ेस्ट V3 और इसके बाद के वर्शन में काम करता है. हालांकि, पुराने सिस्टम के साथ काम करने के लिए कॉलबैक दिए जाते हैं. आप एक ही फ़ंक्शन कॉल पर दोनों का इस्तेमाल नहीं कर सकते. प्रॉमिस उसी टाइप के साथ रिज़ॉल्व हो जाती है जिसे कॉलबैक को पास किया जाता है.
setOptions()
chrome.documentScan.setOptions(
scannerHandle: string,
options: OptionSetting[],
callback?: function,
)
बताए गए स्कैनर पर विकल्प सेट करता है और ऐसा प्रॉमिस देता है जो पास किए गए OptionSetting
ऑब्जेक्ट के क्रम में हर वैल्यू को सेट करने की कोशिश करने वाले SetOptionsResponse
ऑब्जेक्ट के साथ रिज़ॉल्व होता है. अगर कॉलबैक का इस्तेमाल किया जाता है, तो ऑब्जेक्ट को पास कर दिया जाता है.
पैरामीटर
-
scannerHandle
स्ट्रिंग
विकल्पों को सेट करने के लिए स्कैनर का हैंडल. यह एक ऐसी वैल्यू होनी चाहिए जो पहले
openScanner
को किए गए कॉल से वापस मिली हो. -
विकल्प
स्कैनर पर लागू किए जाने वाले
OptionSetting
ऑब्जेक्ट की सूची. -
कॉलबैक
फ़ंक्शन ज़रूरी नहीं
callback
पैरामीटर ऐसा दिखता है:(response: SetOptionsResponse) => void
-
जवाब
-
लौटाए गए प्रॉडक्ट
-
Promise<SetOptionsResponse>
प्रॉमिस, मेनिफ़ेस्ट V3 और इसके बाद के वर्शन में काम करता है. हालांकि, पुराने सिस्टम के साथ काम करने के लिए कॉलबैक दिए जाते हैं. आप एक ही फ़ंक्शन कॉल पर दोनों का इस्तेमाल नहीं कर सकते. प्रॉमिस उसी टाइप के साथ रिज़ॉल्व हो जाती है जिसे कॉलबैक को पास किया जाता है.
startScan()
chrome.documentScan.startScan(
scannerHandle: string,
options: StartScanOptions,
callback?: function,
)
बताए गए स्कैनर पर स्कैन शुरू करता है और StartScanResponse
के साथ रिज़ॉल्व होने वाला प्रॉमिस देता है. अगर कॉलबैक का इस्तेमाल किया जाता है, तो ऑब्जेक्ट को पास कर दिया जाता है. कॉल पूरा होने पर, जवाब में एक जॉब हैंडल शामिल होता है. इसका इस्तेमाल बाद के कॉल में, स्कैन डेटा पढ़ने या स्कैन को रद्द करने के लिए किया जा सकता है.
पैरामीटर
-
scannerHandle
स्ट्रिंग
खुले हुए स्कैनर का हैंडल. यह एक ऐसी वैल्यू होनी चाहिए जो पहले
openScanner
को किए गए कॉल से वापस मिली हो. -
विकल्प
StartScanOptions
ऑब्जेक्ट, जिसमें स्कैन के लिए इस्तेमाल किए जाने वाले विकल्पों की जानकारी दी गई है.StartScanOptions.format
प्रॉपर्टी, स्कैनर केScannerInfo
में दी गई किसी एक एंट्री से मेल खानी चाहिए. -
कॉलबैक
फ़ंक्शन ज़रूरी नहीं
callback
पैरामीटर ऐसा दिखता है:(response: StartScanResponse) => void
-
जवाब
-
लौटाए गए प्रॉडक्ट
-
Promise<StartScanResponse>
प्रॉमिस, मेनिफ़ेस्ट V3 और इसके बाद के वर्शन में काम करता है. हालांकि, पुराने सिस्टम के साथ काम करने के लिए कॉलबैक दिए जाते हैं. आप एक ही फ़ंक्शन कॉल पर दोनों का इस्तेमाल नहीं कर सकते. प्रॉमिस उसी टाइप के साथ रिज़ॉल्व हो जाती है जिसे कॉलबैक को पास किया जाता है.