বর্ণনা
সংযুক্ত নথি স্ক্যানার থেকে চিত্রগুলি আবিষ্কার এবং পুনরুদ্ধার করতে chrome.documentScan
API ব্যবহার করুন৷
ডকুমেন্ট স্ক্যান API অ্যাপ এবং এক্সটেনশনগুলিকে একটি সংযুক্ত নথি স্ক্যানারে কাগজের নথির বিষয়বস্তু দেখার অনুমতি দেওয়ার জন্য ডিজাইন করা হয়েছে৷
অনুমতি
documentScan
প্রাপ্যতা
ধারণা এবং ব্যবহার
এই API নথি স্ক্যান করার দুটি উপায় সমর্থন করে। যদি আপনার ব্যবহারের ক্ষেত্রে কোনো স্ক্যানারের সাথে কাজ করতে পারে এবং কনফিগারেশনের নিয়ন্ত্রণের প্রয়োজন না হয়, scan()
পদ্ধতি ব্যবহার করুন। আরও জটিল ব্যবহারের ক্ষেত্রে পদ্ধতির সংমিশ্রণ প্রয়োজন, যা শুধুমাত্র Chrome 124 এবং পরবর্তীতে সমর্থিত।
সহজ স্ক্যানিং
সাধারণ ব্যবহারের ক্ষেত্রে, মানে যেগুলি যে কোনও স্ক্যানারের সাথে কাজ করতে পারে এবং কনফিগারেশনের নিয়ন্ত্রণের প্রয়োজন হয় না, scan()
কল করুন৷ এই পদ্ধতিটি একটি ScanOptions
অবজেক্ট নেয় এবং একটি প্রতিশ্রুতি প্রদান করে যা একটি ScanResults
অবজেক্টের সাথে সমাধান করে। এই বিকল্পের ক্ষমতাগুলি স্ক্যানের সংখ্যা এবং MIME প্রকারের মধ্যে সীমাবদ্ধ যা কলার দ্বারা গ্রহণ করা হবে৷ ইউজার ইন্টারফেসের জন্য <img>
ট্যাগে প্রদর্শনের জন্য স্ক্যানগুলি URL হিসাবে ফেরত দেওয়া হয়।
জটিল স্ক্যানিং
এই বিভাগে বর্ণিত জটিল স্ক্যানগুলি তিনটি পর্যায়ে সম্পন্ন করা হয়। এই রূপরেখাটি প্রতিটি পদ্ধতির আর্গুমেন্ট বা প্রতিক্রিয়াতে ফিরে আসা প্রতিটি সম্পত্তি বর্ণনা করে না। এটি শুধুমাত্র আপনাকে স্ক্যানার কোড লেখার জন্য একটি সাধারণ নির্দেশিকা দেওয়ার উদ্দেশ্যে।
আবিষ্কার
getScannerList()
কে কল করুন। উপলব্ধ স্ক্যানারগুলি একটি প্রতিশ্রুতিতে ফেরত দেওয়া হয় যা একটিGetScannerListResponse
এর সাথে সমাধান করে।- প্রতিক্রিয়া বস্তুতে
ScannerInfo
অবজেক্টের একটি অ্যারে রয়েছে। - অ্যারেতে একটি একক স্ক্যানারের জন্য একাধিক এন্ট্রি থাকতে পারে যদি সেই স্ক্যানারটি একাধিক প্রোটোকল বা সংযোগ পদ্ধতি সমর্থন করে।
- প্রতিক্রিয়া বস্তুতে
ফিরে আসা অ্যারে থেকে একটি স্ক্যানার নির্বাচন করুন এবং এর
scannerId
সম্পত্তির মান সংরক্ষণ করুন।একই স্ক্যানারের জন্য একাধিক বস্তুর মধ্যে পার্থক্য করতে পৃথক
ScannerInfo
অবজেক্টের বৈশিষ্ট্য ব্যবহার করুন। একই স্ক্যানার থেকে অবজেক্টেরdeviceUuid
সম্পত্তির জন্য একই মান থাকবে।ScannerInfo
সমর্থিত ইমেজ প্রকারের একটি অ্যারে সমন্বিত একটিimageFormats
বৈশিষ্ট্যও রয়েছে।
স্ক্যানার কনফিগারেশন
সংরক্ষিত স্ক্যানার আইডি দিয়ে
openScanner()
কল করুন। এটি একটি প্রতিশ্রুতি প্রদান করে যা একটিOpenScannerResponse
দিয়ে সমাধান করে। প্রতিক্রিয়া বস্তুর মধ্যে রয়েছে:একটি
scannerHandle
সম্পত্তি, যা আপনাকে সংরক্ষণ করতে হবে।স্ক্যানার-নির্দিষ্ট বৈশিষ্ট্য ধারণকারী একটি বিকল্প সম্পত্তি, যা আপনাকে সেট করতে হবে। আরও তথ্যের জন্য পুনরুদ্ধার স্ক্যানার বিকল্পগুলি দেখুন।
(ঐচ্ছিক) যদি আপনার স্ক্যানার বিকল্পগুলির জন্য ব্যবহারকারীর মান প্রদানের প্রয়োজন হয়, একটি ব্যবহারকারী ইন্টারফেস তৈরি করুন। আপনার পূর্ববর্তী ধাপে প্রদত্ত স্ক্যানার বিকল্পগুলির প্রয়োজন হবে এবং আপনাকে স্ক্যানার দ্বারা প্রদত্ত বিকল্প গোষ্ঠীগুলি পুনরুদ্ধার করতে হবে৷ আরও তথ্যের জন্য একটি ব্যবহারকারী ইন্টারফেস নির্মাণ দেখুন।
প্রোগ্রাম্যাটিক বা ব্যবহারকারী-প্রদত্ত মান ব্যবহার করে
OptionSetting
অবজেক্টের একটি অ্যারে তৈরি করুন। আরও তথ্যের জন্য স্ক্যানার বিকল্পগুলি সেট করুন দেখুন।স্ক্যানারের জন্য অপশন সেট করতে
OptionSetting
অবজেক্টের অ্যারেsetOptions()
এ পাস করুন। এটি একটি প্রতিশ্রুতি প্রদান করে যা একটিSetOptionsResponse
দিয়ে সমাধান করে। এই অবজেক্টটিতে স্ক্যানার কনফিগারেশনের ধাপ 1 এ পুনরুদ্ধার করা স্ক্যানার বিকল্পগুলির একটি আপডেট সংস্করণ রয়েছে।যেহেতু একটি বিকল্প পরিবর্তন করা অন্য বিকল্পের সীমাবদ্ধতা পরিবর্তন করতে পারে, তাই আপনাকে এই পদক্ষেপগুলি কয়েকবার পুনরাবৃত্তি করতে হতে পারে।
স্ক্যানিং
একটি
StartScanOptions
অবজেক্ট তৈরি করুন এবং এটিstartScan()
এ পাস করুন। এটি একটি প্রতিশ্রুতি প্রদান করে যা একটিStartScanResponse
দিয়ে সমাধান করে। এরjob
সম্পত্তি হল একটি হ্যান্ডেল যা আপনি হয় স্ক্যান ডেটা পড়তে বা স্ক্যান বাতিল করতে ব্যবহার করবেন।readScanData()
কাজের হ্যান্ডেলটি পাস করুন। এটি একটি প্রতিশ্রুতি প্রদান করে যা একটিReadScanDataResponse
অবজেক্টের সাথে সমাধান করে। যদি ডেটা সফলভাবে পঠিত হয়, তবে এরresult
বৈশিষ্ট্যSUCCESS
এর সমান এবং এরdata
সম্পত্তিতে স্ক্যানের অংশ সহ একটিArrayBuffer
রয়েছে। মনে রাখবেন যেestimatedCompletion
এখন পর্যন্ত বিতরণ করা মোট ডেটার আনুমানিক শতাংশ রয়েছে।result
সম্পত্তিEOF
বা একটি ত্রুটি সমান না হওয়া পর্যন্ত পূর্ববর্তী ধাপটি পুনরাবৃত্তি করুন।
স্ক্যান শেষ হলে, 3 ধাপে সংরক্ষিত স্ক্যানার হ্যান্ডেলের সাহায্যে closeScanner()
কে কল করুন। এটি একটি প্রতিশ্রুতি প্রদান করে যা একটি CloseScannerResponse
এর সাথে সমাধান করে। কাজ তৈরি হওয়ার পর যেকোনো সময় cancelScan()
কল করলে স্ক্যানিং শেষ হয়ে যাবে।
প্রতিক্রিয়া বস্তু
সমস্ত পদ্ধতি একটি প্রতিশ্রুতি প্রদান করে যা কিছু ধরণের প্রতিক্রিয়া বস্তুর সাথে সমাধান করে। এর মধ্যে বেশিরভাগের মধ্যে একটি result
সম্পত্তি রয়েছে যার মান হল OperationResult
এর সদস্য। রেসপন্স অবজেক্টের কিছু বৈশিষ্ট্যে মান থাকবে না যদি না result
মানের একটি নির্দিষ্ট মান থাকে। এই সম্পর্কগুলি প্রতিটি প্রতিক্রিয়া বস্তুর জন্য রেফারেন্সে বর্ণিত হয়েছে।
উদাহরণস্বরূপ, OpenScannerResponse.scannerHandle
শুধুমাত্র তখনই একটি মান থাকবে যখন OpenScannerResponse.result
SUCCESS
সমান হবে।
স্ক্যানার বিকল্প
স্ক্যানার বিকল্পগুলি ডিভাইস অনুসারে যথেষ্ট পরিবর্তিত হয়। ফলস্বরূপ, ডকুমেন্টস্ক্যান 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,
...
},
...
}
একটি ইউজার ইন্টারফেস তৈরি করুন
যদিও এই API ব্যবহার করার প্রয়োজন নেই, আপনি একজন ব্যবহারকারীকে একটি নির্দিষ্ট বিকল্পের জন্য মান চয়ন করতে চাইতে পারেন। এর জন্য একটি ইউজার ইন্টারফেস প্রয়োজন। পূর্ববর্তী বিভাগে বর্ণিত স্ক্যানারের বিকল্পগুলি পুনরুদ্ধার করতে OpenScannerResponse
( openScanner()
দ্বারা খোলা ) ব্যবহার করুন।
ডিভাইস-নির্দিষ্ট উপায়ে কিছু স্ক্যানার গ্রুপ বিকল্প। তারা বিকল্প আচরণকে প্রভাবিত করে না, কিন্তু যেহেতু এই গোষ্ঠীগুলিকে একটি স্ক্যানারের পণ্যের ডকুমেন্টেশনে উল্লেখ করা যেতে পারে, এই ধরনের গোষ্ঠীগুলি ব্যবহারকারীকে দেখানো উচিত। আপনি getOptionGroups()
কল করে এই গোষ্ঠীগুলি পুনরুদ্ধার করতে পারেন। এটি একটি প্রতিশ্রুতি প্রদান করে যা একটি GetOptionGroupsResponse
অবজেক্টের সাথে সমাধান করে। এর groups
সম্পত্তিতে গ্রুপগুলির একটি স্ক্যানার-নির্দিষ্ট অ্যারে রয়েছে। প্রদর্শনের জন্য OpenScannerResponse
এ বিকল্পগুলি সংগঠিত করতে এই গোষ্ঠীর তথ্য ব্যবহার করুন।
{
scannerHandle: "123456",
result: SUCCESS,
groups: [
{
title: "Standard",
members: [ "resolution", "mode", "source" ]
}
]
}
স্ক্যানার কনফিগারেশনের অধীনে বলা হয়েছে, একটি বিকল্প পরিবর্তন করা অন্য বিকল্পের সীমাবদ্ধতা পরিবর্তন করতে পারে। এই কারণে 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
না হয়, হ্যান্ডেলটি অবৈধ হবে এবং পরবর্তী ক্রিয়াকলাপের জন্য ব্যবহার করা উচিত নয়৷ - স্ক্যানার হ্যান্ডেল
স্ট্রিং
একই স্ক্যানার হ্যান্ডেল যা
closeScanner
পাস করা হয়েছিল।
Configurability
কিভাবে একটি বিকল্প পরিবর্তন করা যেতে পারে.
এনাম
"NOT_CONFIGURABLE" "SOFTWARE_CONFIGURABLE" "HARDWARE_CONFIGURABLE"
বিকল্পটি শুধুমাত্র পঠনযোগ্য।
বিকল্পটি সফ্টওয়্যারে সেট করা যেতে পারে।
ব্যবহারকারী স্ক্যানারে একটি বোতাম টগল করে বা পুশ করে বিকল্পটি সেট করা যেতে পারে।
ConnectionType
স্ক্যানারটি কম্পিউটারের সাথে কীভাবে সংযুক্ত রয়েছে তা নির্দেশ করে।
এনাম
"অনির্দিষ্ট" "ইউএসবি" "নেটওয়ার্ক"
এনাম
"INT_RANGE" "FIXED_RANGE" "INT_LIST" "FIXED_LIST" "STRING_LIST"
OptionType.INT
মানগুলির একটি পরিসরের সীমাবদ্ধতা৷ OptionConstraint
এর min
, max
, এবং quant
বৈশিষ্ট্য long
হবে, এবং এর list
বৈশিষ্ট্য আনসেট করা হবে।
OptionType.FIXED
মানগুলির একটি পরিসরের সীমাবদ্ধতা৷ OptionConstraint
এর min
, max
, এবং quant
বৈশিষ্ট্য double
হবে, এবং এর list
বৈশিষ্ট্য আনসেট করা হবে।
OptionType.INT
মানের একটি নির্দিষ্ট তালিকার সীমাবদ্ধতা। OptionConstraint.list
বৈশিষ্ট্যে long
মান থাকবে, এবং অন্যান্য বৈশিষ্ট্যগুলি আনসেট করা হবে।
OptionType.FIXED
মানগুলির একটি নির্দিষ্ট তালিকার সীমাবদ্ধতা। OptionConstraint.list
বৈশিষ্ট্যে double
মান থাকবে এবং অন্যান্য বৈশিষ্ট্যগুলি আনসেট করা হবে।
OptionType.STRING
মানের একটি নির্দিষ্ট তালিকার সীমাবদ্ধতা। OptionConstraint.list
বৈশিষ্ট্যে DOMString
মান থাকবে এবং অন্যান্য বৈশিষ্ট্যগুলি আনসেট করা হবে।
DeviceFilter
বৈশিষ্ট্য
- স্থানীয়
বুলিয়ান ঐচ্ছিক
শুধুমাত্র কম্পিউটারের সাথে সরাসরি সংযুক্ত স্ক্যানার ফেরত দিন।
- নিরাপদ
বুলিয়ান ঐচ্ছিক
শুধুমাত্র ইউএসবি বা টিএলএস-এর মতো নিরাপদ পরিবহন ব্যবহার করে এমন স্ক্যানার ফেরত দিন।
GetOptionGroupsResponse
বৈশিষ্ট্য
- গ্রুপ
অপশনগ্রুপ [] ঐচ্ছিক
result
SUCCESS
হলে, স্ক্যানার ড্রাইভার দ্বারা সরবরাহকৃত ক্রম অনুসারে বিকল্প গোষ্ঠীগুলির একটি তালিকা প্রদান করে। - ফলাফল
অপশন গ্রুপ পেয়ে ফলাফল. যদি এটির মান
SUCCESS
হয়,groups
সম্পত্তি জনবহুল হবে। - স্ক্যানার হ্যান্ডেল
স্ট্রিং
getOptionGroups
এ পাস করা একই স্ক্যানার হ্যান্ডেল।
GetScannerListResponse
বৈশিষ্ট্য
- ফলাফল
গণনার ফলাফল। মনে রাখবেন যে আংশিক ফলাফল ফিরে আসতে পারে এমনকি যদি এটি একটি ত্রুটি নির্দেশ করে।
- স্ক্যানার
প্রদত্ত
DeviceFilter
সাথে মেলে এমন স্ক্যানারগুলির একটি সম্ভাব্য-খালি তালিকা৷
OpenScannerResponse
বৈশিষ্ট্য
- বিকল্প
বস্তু ঐচ্ছিক
যদি
result
SUCCESS
হয়, একটি কী-মান ম্যাপিং প্রদান করে যেখানে কীটি একটি ডিভাইস-নির্দিষ্ট বিকল্প এবং মানটিScannerOption
এর একটি উদাহরণ। - ফলাফল
স্ক্যানার খোলার ফলাফল। যদি এর মান
SUCCESS
হয়,scannerHandle
এবংoptions
বৈশিষ্ট্যগুলি পূরণ করা হবে। - স্ক্যানার হ্যান্ডেল
স্ট্রিং ঐচ্ছিক
যদি
result
SUCCESS
হয়, স্ক্যানারের একটি হ্যান্ডেল যা পরবর্তী ক্রিয়াকলাপের জন্য ব্যবহার করা যেতে পারে। - স্ক্যানার আইডি
স্ট্রিং
স্ক্যানার আইডি
openScanner()
এ পাস করা হয়েছে।
OperationResult
একটি enum যা প্রতিটি অপারেশনের ফলাফল নির্দেশ করে।
এনাম
"অজানা" "সাফল্য" "অসমর্থিত" "বাতিল" "DEVICE_BUSY" "অবৈধ" "WRONG_TYPE" "ইওএফ" "ADF_JAMMED" "ADF_EMPTY" "COVER_OPEN" "IO_ERROR" "ACCESS_DENIED" "NO_MEMORY" "অগম্য" "নিখোঁজ" "অভ্যন্তরীণ_ত্রুটি"
একটি অজানা বা জেনেরিক ব্যর্থতা ঘটেছে.
অপারেশন সফল হয়েছে।
অপারেশন সমর্থিত নয়.
অপারেশন বাতিল করা হয়।
ডিভাইসটি ব্যস্ত।
পদ্ধতিতে পাস করা ডেটা বা একটি যুক্তি বৈধ নয়।
সরবরাহকৃত মান হল অন্তর্নিহিত বিকল্পের জন্য ভুল তথ্য প্রকার।
আর কোন তথ্য পাওয়া যায় না।
ডকুমেন্ট ফিডার জ্যাম করা হয়েছে।
ডকুমেন্ট ফিডার খালি।
ফ্ল্যাটবেড কভার খোলা।
ডিভাইসের সাথে যোগাযোগ করার সময় একটি ত্রুটি ঘটেছে৷
ডিভাইসটির প্রমাণীকরণ প্রয়োজন।
অপারেশন সম্পূর্ণ করার জন্য Chromebook-এ পর্যাপ্ত মেমরি উপলব্ধ নেই৷
ডিভাইসটি পৌঁছানো যায় না।
ডিভাইস সংযোগ বিচ্ছিন্ন করা হয়েছে.
কলিং অ্যাপ্লিকেশন ছাড়া অন্য কোথাও একটি ত্রুটি ঘটেছে৷
OptionConstraint
বৈশিষ্ট্য
- তালিকা
স্ট্রিং[] | সংখ্যা[] ঐচ্ছিক
- সর্বোচ্চ
সংখ্যা ঐচ্ছিক
- মিনিট
সংখ্যা ঐচ্ছিক
- পরিমাণ
সংখ্যা ঐচ্ছিক
- টাইপ
OptionGroup
বৈশিষ্ট্য
- সদস্যদের
স্ট্রিং[]
ড্রাইভার-প্রদত্ত ক্রমে বিকল্প নামের একটি অ্যারে।
- শিরোনাম
স্ট্রিং
একটি মুদ্রণযোগ্য শিরোনাম প্রদান করে, উদাহরণস্বরূপ "জ্যামিতি বিকল্প"।
OptionSetting
বৈশিষ্ট্য
- নাম
স্ট্রিং
সেট করার বিকল্পটির নাম নির্দেশ করে।
- টাইপ
অপশনের ডাটা টাইপ নির্দেশ করে। অনুরোধ করা ডেটা টাইপ অবশ্যই অন্তর্নিহিত বিকল্পের প্রকৃত ডেটা টাইপের সাথে মিলবে।
- মান
স্ট্রিং | সংখ্যা | বুলিয়ান | সংখ্যা[] ঐচ্ছিক
সেট করার মান নির্দেশ করে।
autoSettable
সক্ষম থাকা বিকল্পগুলির জন্য স্বয়ংক্রিয় সেটিং অনুরোধ করতে সেট না করে ছেড়ে দিন।value
জন্য সরবরাহ করা ডেটারtype
সাথে মিল থাকা আবশ্যক৷
OptionType
একটি বিকল্পের ডেটা প্রকার।
এনাম
"অজানা" "বুল" "আইএনটি" "স্থির" "STRING" "বোতাম" "গ্রুপ"
বিকল্পটির ডেটা টাইপ অজানা। value
সম্পত্তি আনসেট করা হবে.
value
সম্পত্তি true
মিথ্যা এক হবে.
একটি স্বাক্ষরিত 32-বিট পূর্ণসংখ্যা। বিকল্পটি একাধিক মান নেয় কিনা তার উপর নির্ভর করে value
বৈশিষ্ট্যটি দীর্ঘ বা দীর্ঘ হবে।
1/65535 রেজোলিউশন সহ -32768-32767.9999 রেঞ্জের একটি ডবল৷ বিকল্পটি একাধিক মান নেয় কিনা তার উপর নির্ভর করে value
বৈশিষ্ট্য দ্বিগুণ বা দ্বিগুণ হবে। দ্বৈত মানগুলি যা সঠিকভাবে উপস্থাপন করা যায় না সেগুলি উপলব্ধ পরিসর এবং নির্ভুলতার সাথে বৃত্তাকার হবে৷
NUL ('\0') ছাড়া যেকোনো বাইটের একটি ক্রম। value
সম্পত্তি একটি DOMString হবে.
এই ধরনের একটি বিকল্পের কোন মূল্য নেই। পরিবর্তে, এই ধরনের একটি বিকল্প সেট করা স্ক্যানার ড্রাইভারে একটি বিকল্প-নির্দিষ্ট পার্শ্ব প্রতিক্রিয়া সৃষ্টি করে। উদাহরণস্বরূপ, একটি বোতাম-টাইপ করা বিকল্পটি একটি স্ক্যানার ড্রাইভার দ্বারা ডিফল্ট মান নির্বাচন করার জন্য বা একটি স্বয়ংক্রিয় নথি ফিডারকে কাগজের পরবর্তী শীটে অগ্রসর হওয়ার জন্য একটি উপায় প্রদান করতে ব্যবহার করা যেতে পারে।
গ্রুপিং বিকল্প। কোন মূল্য নেই। এটি সামঞ্জস্যের জন্য অন্তর্ভুক্ত করা হয়েছে, তবে সাধারণত ScannerOption
মানগুলিতে ফেরত দেওয়া হবে না। তাদের সদস্য বিকল্পগুলির সাথে গ্রুপগুলির তালিকা পুনরুদ্ধার করতে getOptionGroups()
ব্যবহার করুন।
এনাম
"নিরীহ" "পিক্সেল" "বিট" "এমএম" "DPI" "PERCENT" "মাইক্রোসেকেন্ড"
মান হল একটি এককবিহীন সংখ্যা। উদাহরণস্বরূপ, এটি একটি থ্রেশহোল্ড হতে পারে।
মান হল পিক্সেলের একটি সংখ্যা, উদাহরণস্বরূপ, স্ক্যান মাত্রা।
মান হল বিটের সংখ্যা, উদাহরণস্বরূপ, রঙের গভীরতা।
মানটি মিলিমিটারে পরিমাপ করা হয়, উদাহরণস্বরূপ, স্ক্যান মাত্রা।
মানটি প্রতি ইঞ্চিতে বিন্দুতে পরিমাপ করা হয়, উদাহরণস্বরূপ, রেজোলিউশন।
মান একটি শতাংশ, উদাহরণস্বরূপ, উজ্জ্বলতা।
মানটি মাইক্রোসেকেন্ডে পরিমাপ করা হয়, উদাহরণস্বরূপ, এক্সপোজার সময়।
ReadScanDataResponse
বৈশিষ্ট্য
- তথ্য
ArrayBuffer ঐচ্ছিক
result
SUCCESS
হলে, স্ক্যান করা চিত্র ডেটার পরবর্তী অংশ থাকে। যদিresult
EOF
হয়, স্ক্যান করা চিত্র ডেটার শেষ অংশ ধারণ করে। - আনুমানিক সমাপ্তি
সংখ্যা ঐচ্ছিক
result
SUCCESS
হলে, 0 থেকে 100 রেঞ্জের মধ্যে, এখন পর্যন্ত মোট স্ক্যান ডেটার কতটা বিতরণ করা হয়েছে তার একটি অনুমান। - চাকরি
স্ট্রিং
readScanData()
এ পাস করা কাজের হ্যান্ডেল প্রদান করে। - ফলাফল
ডেটা পড়ার ফলাফল। যদি এর মান
SUCCESS
হয়, তাহলেdata
পরবর্তী (সম্ভবত শূন্য-দৈর্ঘ্য) চিত্র ডেটার অংশ থাকে যা পড়ার জন্য প্রস্তুত৷ যদি এর মানEOF
হয়, তাহলেdata
ছবির ডেটার শেষ অংশ থাকে।
ScannerInfo
বৈশিষ্ট্য
- সংযোগ প্রকার
স্ক্যানারটি কম্পিউটারের সাথে কীভাবে সংযুক্ত রয়েছে তা নির্দেশ করে।
- deviceUuid
স্ট্রিং
অন্যান্য
ScannerInfo
এন্ট্রিগুলির সাথে মিলের জন্য যা একই শারীরিক ডিভাইসের দিকে নির্দেশ করে। - ইমেজ ফরম্যাট
স্ট্রিং[]
MIME প্রকারের একটি অ্যারে যা ফেরত স্ক্যানের জন্য অনুরোধ করা যেতে পারে৷
- প্রস্তুতকারক
স্ট্রিং
স্ক্যানার প্রস্তুতকারক।
- মডেল
স্ট্রিং
স্ক্যানার মডেল যদি এটি উপলব্ধ থাকে, বা একটি জেনেরিক বিবরণ।
- নাম
স্ট্রিং
UI-তে স্ক্যানার দেখানোর জন্য একটি মানব-পাঠযোগ্য নাম।
- প্রোটোকল টাইপ
স্ট্রিং
স্ক্যানার অ্যাক্সেস করতে ব্যবহৃত প্রোটোকল বা ড্রাইভারের একটি মানব-পাঠযোগ্য বিবরণ, যেমন মোপ্রিয়া, ডাব্লুএসডি, বা ইপসন্ড। একটি ডিভাইস একাধিক প্রোটোকল সমর্থন করলে ব্যবহারকারীকে প্রোটোকলের মধ্যে বেছে নেওয়ার অনুমতি দেওয়ার জন্য এটি প্রাথমিকভাবে কার্যকর।
- স্ক্যানার আইডি
স্ট্রিং
একটি নির্দিষ্ট স্ক্যানার আইডি।
- নিরাপদ
বুলিয়ান
সত্য হলে, স্ক্যানার সংযোগের পরিবহন একটি প্যাসিভ শ্রোতা যেমন TLS বা USB দ্বারা বাধা দিতে পারে না।
ScannerOption
বৈশিষ্ট্য
- কনফিগারযোগ্যতা
বিকল্পটি কীভাবে পরিবর্তন করা যেতে পারে তা নির্দেশ করে।
- বাধা
Option Constraint ঐচ্ছিক
বর্তমান স্ক্যানার বিকল্পে
OptionConstraint
সংজ্ঞায়িত করে। - বর্ণনা
স্ট্রিং
বিকল্পের একটি দীর্ঘ বিবরণ।
- সক্রিয়
বুলিয়ান
নির্দেশ করে যে বিকল্পটি সক্রিয় এবং সেট বা পুনরুদ্ধার করা যেতে পারে। মিথ্যা হলে,
value
সম্পত্তি সেট করা হবে না। - উন্নত
বুলিয়ান
নির্দেশ করে যে UI ডিফল্টরূপে এই বিকল্পটি প্রদর্শন করা উচিত নয়।
- isAutoSettable
বুলিয়ান
স্ক্যানার ড্রাইভার দ্বারা স্বয়ংক্রিয়ভাবে সেট করা যেতে পারে।
- সনাক্ত করা যায়
বুলিয়ান
নির্দেশ করে যে এই বিকল্পটি সফ্টওয়্যার থেকে সনাক্ত করা যেতে পারে।
- অনুকরণ করা হয়
বুলিয়ান
সত্য হলে স্ক্যানার ড্রাইভার দ্বারা অনুকরণ করা হয়।
- নাম
স্ট্রিং
ছোট হাতের ASCII অক্ষর, সংখ্যা এবং ড্যাশ ব্যবহার করে বিকল্পের নাম। ডায়াক্রিটিক অনুমোদিত নয়।
- শিরোনাম
স্ট্রিং
একটি মুদ্রণযোগ্য এক-লাইন শিরোনাম।
- টাইপ
value
বৈশিষ্ট্যে থাকা ডেটা টাইপ, যা এই বিকল্প সেট করার জন্য প্রয়োজন। - ইউনিট
এই বিকল্পের জন্য পরিমাপের একক।
- মান
স্ট্রিং | সংখ্যা | বুলিয়ান | সংখ্যা[] ঐচ্ছিক
বিকল্পের বর্তমান মান, যদি প্রাসঙ্গিক হয়। মনে রাখবেন এই প্রপার্টির ডাটা টাইপ অবশ্যই
type
উল্লেখ করা ডাটা টাইপের সাথে মিলতে হবে।
ScanOptions
বৈশিষ্ট্য
- সর্বোচ্চ ছবি
সংখ্যা ঐচ্ছিক
স্ক্যান করা ছবির সংখ্যা অনুমোদিত। ডিফল্ট হল 1।
- মাইমের প্রকার
স্ট্রিং[] ঐচ্ছিক
কলার দ্বারা গৃহীত MIME প্রকারগুলি৷
ScanResults
বৈশিষ্ট্য
- dataUrls
স্ট্রিং[]
ডেটা ইমেজ ইউআরএলের একটি বিন্যাস একটি ফর্মে যা একটি ইমেজ ট্যাগে "src" মান হিসাবে পাস করা যেতে পারে।
- মাইম টাইপ
স্ট্রিং
dataUrls
এর MIME প্রকার।
SetOptionResult
বৈশিষ্ট্য
- নাম
স্ট্রিং
সেট করা বিকল্পটির নাম নির্দেশ করে।
- ফলাফল
বিকল্প সেট করার ফলাফল নির্দেশ করে।
SetOptionsResponse
বৈশিষ্ট্য
- বিকল্প
বস্তু ঐচ্ছিক
সমস্ত সরবরাহ করা বিকল্পগুলি সেট করার চেষ্টা করার পরে নতুন কনফিগারেশন ধারণকারী বিকল্পের নাম থেকে
ScannerOption
মানগুলিতে একটি আপডেট করা কী-মান ম্যাপিং।OpenScannerResponse
এoptions
প্রপার্টির মতই এটির গঠন রয়েছে।কিছু বিকল্প সফলভাবে সেট না হলেও এই বৈশিষ্ট্যটি সেট করা হবে, তবে আপডেট করা কনফিগারেশন পুনরুদ্ধার করতে ব্যর্থ হলে এটি আনসেট করা হবে (উদাহরণস্বরূপ, স্ক্যানিংয়ের মাঝখানে স্ক্যানার সংযোগ বিচ্ছিন্ন হলে)।
- ফলাফল
ফলাফলের একটি অ্যারে, প্রতিটি পাস-ইন
OptionSetting
জন্য একটি করে। - স্ক্যানার হ্যান্ডেল
স্ট্রিং
setOptions()
এ পাস করা স্ক্যানার হ্যান্ডেল প্রদান করে।
StartScanOptions
বৈশিষ্ট্য
- বিন্যাস
স্ট্রিং
স্ক্যান করা ডেটা ফেরত দিতে MIME প্রকার নির্দিষ্ট করে৷
- maxReadSize
সংখ্যা ঐচ্ছিক
যদি একটি অ-শূন্য মান নির্দিষ্ট করা হয়, তাহলে সেই মানের জন্য একটি একক
readScanData
প্রতিক্রিয়ায় ফেরত দেওয়া সর্বাধিক স্ক্যান করা বাইটগুলিকে সীমাবদ্ধ করে। ক্ষুদ্রতম অনুমোদিত মান হল 32768 (32 KB)। যদি এই বৈশিষ্ট্যটি নির্দিষ্ট করা না থাকে, তাহলে একটি ফেরত অংশের আকার পুরো স্ক্যান করা চিত্রের মতো বড় হতে পারে।
StartScanResponse
বৈশিষ্ট্য
- চাকরি
স্ট্রিং ঐচ্ছিক
result
SUCCESS
হলে, একটি হ্যান্ডেল প্রদান করে যা স্ক্যান ডেটা পড়তে বা কাজ বাতিল করতে ব্যবহার করা যেতে পারে। - ফলাফল
স্ক্যান শুরু করার ফলাফল। যদি এর মান
SUCCESS
হয়, তাহলেjob
সম্পত্তি জনবহুল হবে। - স্ক্যানার হ্যান্ডেল
স্ট্রিং
একই স্ক্যানার হ্যান্ডেল প্রদান করে যা
startScan()
এ পাস করা হয়েছিল।
পদ্ধতি
cancelScan()
chrome.documentScan.cancelScan(
job: string,
callback?: function,
)
একটি শুরু করা স্ক্যান বাতিল করে এবং একটি প্রতিশ্রুতি প্রদান করে যা একটি CancelScanResponse
অবজেক্টের সাথে সমাধান করে। যদি একটি কলব্যাক ব্যবহার করা হয়, বস্তুটি পরিবর্তে এটিতে পাস করা হয়।
পরামিতি
- চাকরি
স্ট্রিং
একটি সক্রিয় স্ক্যান কাজের হ্যান্ডেল পূর্বে
startScan
এ একটি কল থেকে ফিরে এসেছে। - কলব্যাক
ফাংশন ঐচ্ছিক
callback
প্যারামিটারটি এর মতো দেখাচ্ছে:(response: CancelScanResponse) => void
- প্রতিক্রিয়া
রিটার্নস
প্রতিশ্রুতি< CancelScanResponse >
প্রতিশ্রুতিগুলি ম্যানিফেস্ট V3 এবং পরবর্তীতে সমর্থিত, তবে পশ্চাদগামী সামঞ্জস্যের জন্য কলব্যাক প্রদান করা হয়। আপনি একই ফাংশন কলে উভয় ব্যবহার করতে পারবেন না। প্রতিশ্রুতিটি একই ধরণের সাথে সমাধান করে যা কলব্যাকে পাস করা হয়।
closeScanner()
chrome.documentScan.closeScanner(
scannerHandle: string,
callback?: function,
)
পাস করা হ্যান্ডেলের সাথে স্ক্যানারটি বন্ধ করে এবং একটি প্রতিশ্রুতি প্রদান করে যা একটি CloseScannerResponse
অবজেক্টের সাথে সমাধান করে। যদি একটি কলব্যাক ব্যবহার করা হয়, বস্তুটি পরিবর্তে এটিতে পাস করা হয়। প্রতিক্রিয়া সফল না হলেও, সরবরাহকৃত হ্যান্ডেলটি অবৈধ হয়ে যায় এবং পরবর্তী ক্রিয়াকলাপের জন্য ব্যবহার করা উচিত নয়।
পরামিতি
- স্ক্যানার হ্যান্ডেল
স্ট্রিং
একটি ওপেন স্ক্যানারের হ্যান্ডেল নির্দিষ্ট করে যা পূর্বে
openScanner
এ একটি কল থেকে ফিরে এসেছিল। - কলব্যাক
ফাংশন ঐচ্ছিক
callback
প্যারামিটারটি এর মতো দেখাচ্ছে:(response: CloseScannerResponse) => void
- প্রতিক্রিয়া
রিটার্নস
প্রতিশ্রুতি< CloseScanner Response >
প্রতিশ্রুতিগুলি ম্যানিফেস্ট V3 এবং পরবর্তীতে সমর্থিত, তবে পশ্চাদগামী সামঞ্জস্যের জন্য কলব্যাক প্রদান করা হয়। আপনি একই ফাংশন কলে উভয় ব্যবহার করতে পারবেন না। প্রতিশ্রুতিটি একই ধরণের সাথে সমাধান করে যা কলব্যাকে পাস করা হয়।
getOptionGroups()
chrome.documentScan.getOptionGroups(
scannerHandle: string,
callback?: function,
)
openScanner
দ্বারা পূর্বে খোলা একটি স্ক্যানার থেকে গোষ্ঠীর নাম এবং সদস্য বিকল্পগুলি পায়৷ এই পদ্ধতিটি একটি প্রতিশ্রুতি প্রদান করে যা একটি GetOptionGroupsResponse
অবজেক্টের সাথে সমাধান করে। যদি এই ফাংশনে একটি কলব্যাক পাস করা হয়, তবে প্রত্যাবর্তিত ডেটা পরিবর্তে এটিতে প্রেরণ করা হয়।
পরামিতি
- স্ক্যানার হ্যান্ডেল
স্ট্রিং
একটি ওপেন স্ক্যানারের হ্যান্ডেল
openScanner
একটি কল থেকে ফিরে এসেছে। - কলব্যাক
ফাংশন ঐচ্ছিক
callback
প্যারামিটারটি এর মতো দেখাচ্ছে:(response: GetOptionGroupsResponse) => void
- প্রতিক্রিয়া
রিটার্নস
প্রতিশ্রুতি< GetOptionGroupsResponse >
প্রতিশ্রুতিগুলি ম্যানিফেস্ট V3 এবং পরবর্তীতে সমর্থিত, তবে পশ্চাদগামী সামঞ্জস্যের জন্য কলব্যাক প্রদান করা হয়। আপনি একই ফাংশন কলে উভয় ব্যবহার করতে পারবেন না। প্রতিশ্রুতিটি একই ধরণের সাথে সমাধান করে যা কলব্যাকে পাস করা হয়।
getScannerList()
chrome.documentScan.getScannerList(
filter: DeviceFilter,
callback?: function,
)
উপলব্ধ স্ক্যানারগুলির তালিকা পায় এবং একটি প্রতিশ্রুতি প্রদান করে যা একটি GetScannerListResponse
অবজেক্টের সাথে সমাধান করে। যদি এই ফাংশনে একটি কলব্যাক পাস করা হয়, তবে প্রত্যাবর্তিত ডেটা পরিবর্তে এটিতে প্রেরণ করা হয়।
পরামিতি
- ফিল্টার
কোন ধরনের স্ক্যানার ফেরত দিতে হবে তা নির্দেশ করে একটি
DeviceFilter
। - কলব্যাক
ফাংশন ঐচ্ছিক
callback
প্যারামিটারটি এর মতো দেখাচ্ছে:(response: GetScannerListResponse) => void
- প্রতিক্রিয়া
রিটার্নস
প্রতিশ্রুতি< GetScannerListResponse >
প্রতিশ্রুতিগুলি ম্যানিফেস্ট V3 এবং পরবর্তীতে সমর্থিত, তবে পশ্চাদগামী সামঞ্জস্যের জন্য কলব্যাক প্রদান করা হয়। আপনি একই ফাংশন কলে উভয় ব্যবহার করতে পারবেন না। প্রতিশ্রুতিটি একই ধরণের সাথে সমাধান করে যা কলব্যাকে পাস করা হয়।
openScanner()
chrome.documentScan.openScanner(
scannerId: string,
callback?: function,
)
একচেটিয়া অ্যাক্সেসের জন্য একটি স্ক্যানার খোলে এবং একটি প্রতিশ্রুতি প্রদান করে যা একটি OpenScannerResponse
অবজেক্টের সাথে সমাধান করে। যদি এই ফাংশনে একটি কলব্যাক পাস করা হয়, তবে প্রত্যাবর্তিত ডেটা পরিবর্তে এটিতে প্রেরণ করা হয়।
পরামিতি
- স্ক্যানার আইডি
স্ট্রিং
একটি স্ক্যানার আইডি খুলতে হবে।
getScannerList
এ পূর্ববর্তী কল থেকে এই মানটি ফেরত দেওয়া হয়েছে। - কলব্যাক
ফাংশন ঐচ্ছিক
callback
প্যারামিটারটি এর মতো দেখাচ্ছে:(response: OpenScannerResponse) => void
- প্রতিক্রিয়া
রিটার্নস
প্রতিশ্রুতি< OpenScanner Response >
প্রতিশ্রুতিগুলি ম্যানিফেস্ট V3 এবং পরবর্তীতে সমর্থিত, তবে পশ্চাদগামী সামঞ্জস্যের জন্য কলব্যাক প্রদান করা হয়। আপনি একই ফাংশন কলে উভয় ব্যবহার করতে পারবেন না। প্রতিশ্রুতিটি একই ধরণের সাথে সমাধান করে যা কলব্যাকে পাস করা হয়।
readScanData()
chrome.documentScan.readScanData(
job: string,
callback?: function,
)
একটি সক্রিয় কাজের হ্যান্ডেল থেকে উপলব্ধ ইমেজ ডেটার পরবর্তী অংশটি পড়ে এবং একটি প্রতিশ্রুতি প্রদান করে যা একটি ReadScanDataResponse
অবজেক্টের সাথে সমাধান করে। যদি একটি কলব্যাক ব্যবহার করা হয়, বস্তুটি পরিবর্তে এটিতে পাস করা হয়।
**দ্রষ্টব্য:**একটি শূন্য-দৈর্ঘ্য data
সদস্যের সাথে SUCCESS
হওয়া একটি প্রতিক্রিয়া ফলাফলের জন্য বৈধ। এর মানে স্ক্যানার এখনও কাজ করছে কিন্তু এখনও অতিরিক্ত ডেটা প্রস্তুত নেই। কলারের কিছুক্ষণ অপেক্ষা করা উচিত এবং আবার চেষ্টা করা উচিত।
স্ক্যান কাজ শেষ হলে, প্রতিক্রিয়ার ফলাফলের মান EOF
হবে। এই প্রতিক্রিয়া একটি চূড়ান্ত অ-শূন্য data
সদস্য থাকতে পারে.
পরামিতি
- চাকরি
স্ট্রিং
সক্রিয় কাজের হ্যান্ডেল পূর্বে
startScan
থেকে ফিরে এসেছে। - কলব্যাক
ফাংশন ঐচ্ছিক
callback
প্যারামিটারটি এর মতো দেখাচ্ছে:(response: ReadScanDataResponse) => void
- প্রতিক্রিয়া
রিটার্নস
প্রতিশ্রুতি< ReadScanDataResponse >
প্রতিশ্রুতিগুলি ম্যানিফেস্ট V3 এবং পরবর্তীতে সমর্থিত, তবে পশ্চাদগামী সামঞ্জস্যের জন্য কলব্যাক প্রদান করা হয়। আপনি একই ফাংশন কলে উভয় ব্যবহার করতে পারবেন না। প্রতিশ্রুতিটি একই ধরণের সাথে সমাধান করে যা কলব্যাকে পাস করা হয়।
scan()
chrome.documentScan.scan(
options: ScanOptions,
callback?: function,
)
একটি নথি স্ক্যান করে এবং একটি প্রতিশ্রুতি প্রদান করে যা একটি ScanResults
অবজেক্টের সাথে সমাধান করে। যদি এই ফাংশনে একটি কলব্যাক পাস করা হয়, তবে প্রত্যাবর্তিত ডেটা পরিবর্তে এটিতে প্রেরণ করা হয়।
পরামিতি
- বিকল্প
স্ক্যান পরামিতি ধারণকারী একটি বস্তু।
- কলব্যাক
ফাংশন ঐচ্ছিক
callback
প্যারামিটারটি এর মতো দেখাচ্ছে:(result: ScanResults) => void
- ফলাফল
রিটার্নস
প্রতিশ্রুতি < স্ক্যান ফলাফল >
Chrome 96+প্রতিশ্রুতিগুলি ম্যানিফেস্ট V3 এবং পরবর্তীতে সমর্থিত, তবে পশ্চাদগামী সামঞ্জস্যের জন্য কলব্যাক প্রদান করা হয়। আপনি একই ফাংশন কলে উভয় ব্যবহার করতে পারবেন না। প্রতিশ্রুতিটি একই ধরণের সাথে সমাধান করে যা কলব্যাকে পাস করা হয়।
setOptions()
chrome.documentScan.setOptions(
scannerHandle: string,
options: OptionSetting[],
callback?: function,
)
নির্দিষ্ট স্ক্যানারে বিকল্পগুলি সেট করে এবং একটি প্রতিশ্রুতি প্রদান করে যা একটি SetOptionsResponse
অবজেক্টের সাথে সমাধান করে যার মধ্যে পাস-ইন OptionSetting
অবজেক্টের ক্রমে প্রতিটি মান সেট করার চেষ্টা করার ফলাফল রয়েছে। যদি একটি কলব্যাক ব্যবহার করা হয়, বস্তুটি পরিবর্তে এটিতে পাস করা হয়।
পরামিতি
- স্ক্যানার হ্যান্ডেল
স্ট্রিং
স্ক্যানার হ্যান্ডেল অপশন সেট করতে। এটি একটি মান হওয়া উচিত যা আগে
openScanner
এ একটি কল থেকে ফিরে এসেছে। - বিকল্প
বিকল্প সেটিং []
স্ক্যানারে প্রয়োগ করা
OptionSetting
অবজেক্টের একটি তালিকা। - কলব্যাক
ফাংশন ঐচ্ছিক
callback
প্যারামিটারটি এর মতো দেখাচ্ছে:(response: SetOptionsResponse) => void
- প্রতিক্রিয়া
রিটার্নস
প্রতিশ্রুতি< সেট বিকল্প প্রতিক্রিয়া >
প্রতিশ্রুতিগুলি ম্যানিফেস্ট V3 এবং পরবর্তীতে সমর্থিত, তবে পশ্চাদগামী সামঞ্জস্যের জন্য কলব্যাক প্রদান করা হয়। আপনি একই ফাংশন কলে উভয় ব্যবহার করতে পারবেন না। প্রতিশ্রুতিটি একই ধরণের সাথে সমাধান করে যা কলব্যাকে পাস করা হয়।
startScan()
chrome.documentScan.startScan(
scannerHandle: string,
options: StartScanOptions,
callback?: function,
)
নির্দিষ্ট স্ক্যানারে একটি স্ক্যান শুরু করে এবং একটি প্রতিশ্রুতি প্রদান করে যা একটি StartScanResponse
দিয়ে সমাধান করে। যদি একটি কলব্যাক ব্যবহার করা হয়, বস্তুটি পরিবর্তে এটিতে পাস করা হয়। কলটি সফল হলে, প্রতিক্রিয়াটিতে একটি কাজের হ্যান্ডেল অন্তর্ভুক্ত থাকে যা পরবর্তী কলগুলিতে স্ক্যান ডেটা পড়তে বা স্ক্যান বাতিল করতে ব্যবহার করা যেতে পারে।
পরামিতি
- স্ক্যানার হ্যান্ডেল
স্ট্রিং
একটি খোলা স্ক্যানার হ্যান্ডেল. এটি একটি মান হওয়া উচিত যা আগে
openScanner
এ একটি কল থেকে ফিরে এসেছে। - বিকল্প
একটি
StartScanOptions
অবজেক্ট যা স্ক্যানের জন্য ব্যবহার করা বিকল্পগুলি নির্দেশ করে।StartScanOptions.format
বৈশিষ্ট্যটি অবশ্যই স্ক্যানারেরScannerInfo
এ প্রত্যাবর্তিত এন্ট্রিগুলির একটির সাথে মিলবে। - কলব্যাক
ফাংশন ঐচ্ছিক
callback
প্যারামিটারটি এর মতো দেখাচ্ছে:(response: StartScanResponse) => void
- প্রতিক্রিয়া
রিটার্নস
প্রতিশ্রুতি< StartScanResponse >
প্রতিশ্রুতিগুলি ম্যানিফেস্ট V3 এবং পরবর্তীতে সমর্থিত, তবে পশ্চাদগামী সামঞ্জস্যের জন্য কলব্যাক প্রদান করা হয়। আপনি একই ফাংশন কলে উভয় ব্যবহার করতে পারবেন না। প্রতিশ্রুতিটি একই ধরণের সাথে সমাধান করে যা কলব্যাকে পাস করা হয়।