অ্যান্ড্রয়েডে এমএল কিট সহ ডকুমেন্ট স্ক্যানার
আপনার অ্যাপে সহজেই ডকুমেন্ট স্ক্যানার ফিচার যোগ করতে এমএল কিট ডকুমেন্ট স্ক্যানার এপিআই ব্যবহার করুন।
| বৈশিষ্ট্য | বিস্তারিত |
|---|---|
| এসডিকে নাম | প্লে-সার্ভিসেস-এমএলকিট-ডকুমেন্ট-স্ক্যানার |
| বাস্তবায়ন | মডেল, স্ক্যানিং লজিক এবং ইউআই ফ্লো গুগল প্লে সার্ভিসেস দ্বারা ডায়নামিকভাবে ডাউনলোড করা হয়। |
| অ্যাপের আকারের প্রভাব | ডাউনলোডের আকার প্রায় ৩০০ কিলোবাইট বৃদ্ধি পেয়েছে। |
| প্রারম্ভিক সময় | প্রথমবার ব্যবহারের আগে মডেল, লজিক এবং ইউআই ফ্লো ডাউনলোড হওয়ার জন্য ব্যবহারকারীদের অপেক্ষা করতে হতে পারে। |
চেষ্টা করে দেখুন
এই API-টির একটি উদাহরণমূলক ব্যবহার দেখতে নমুনা অ্যাপটি ব্যবহার করে দেখুন।
শুরু করার আগে
আপনার প্রোজেক্ট-স্তরের
build.gradleফাইলে, buildscript এবং allprojects উভয় সেকশনেই গুগলের মেভেন রিপোজিটরি অন্তর্ভুক্ত করা নিশ্চিত করুন।আপনার মডিউলের অ্যাপ-লেভেল গ্রেডল ফাইলে (যা সাধারণত app/build.gradle হয়) এমএল কিট ডকুমেন্ট স্ক্যানার লাইব্রেরির ডিপেন্ডেন্সি যোগ করুন:
dependencies {
// …
implementation 'com.google.android.gms:play-services-mlkit-document-scanner:16.0.0'
}
ডকুমেন্ট স্ক্যানার কনফিগারেশন
ডকুমেন্ট স্ক্যানার ইউজার ফ্লো (যার মধ্যে একটি ডেডিকেটেড ভিউফাইন্ডার স্ক্রিন এবং প্রিভিউ স্ক্রিন অন্তর্ভুক্ত) এসডিকে দ্বারা সরবরাহ করা হয়। ভিউফাইন্ডার এবং প্রিভিউ স্ক্রিন নিম্নলিখিত কাস্টমাইজযোগ্য কন্ট্রোলগুলো সমর্থন করে:
- ফটো গ্যালারি থেকে আমদানি করা হচ্ছে
- স্ক্যান করা পৃষ্ঠার সংখ্যা সীমিত করা
- স্ক্যানার মোড (ফ্লোতে ফিচার সেটগুলো নিয়ন্ত্রণ করার জন্য)
আপনি আপনার স্ক্যান করা ডকুমেন্টগুলোর পিডিএফ এবং জেপিইজি উভয় ফাইলই পুনরুদ্ধার করতে পারবেন।
স্ক্যানার অপশনগুলো কনফিগার করতে GmsDocumentScannerOptions ইনস্ট্যানশিয়েট করুন:
কোটলিন
val options = GmsDocumentScannerOptions.Builder()
.setGalleryImportAllowed(false)
.setPageLimit(2)
.setResultFormats(RESULT_FORMAT_JPEG, RESULT_FORMAT_PDF)
.setScannerMode(SCANNER_MODE_FULL)
.build()জাভা
GmsDocumentScannerOptions options = new GmsDocumentScannerOptions.Builder()
.setGalleryImportAllowed(false)
.setPageLimit(2)
.setResultFormats(RESULT_FORMAT_JPEG, RESULT_FORMAT_PDF)
.setScannerMode(SCANNER_MODE_FULL)
.build();নথি স্ক্যান করুন
আপনার GmsDocumentScannerOptions তৈরি করার পর, GmsDocumentScanner এর একটি ইনস্ট্যান্স নিন। এরপর আপনি AndroidX-এ প্রবর্তিত Activity Result API অনুসরণ করে স্ক্যানার অ্যাক্টিভিটি শুরু করতে পারেন।
ডকুমেন্ট স্ক্যানিং সম্পন্ন হলে, একটি GmsDocumentScanningResult অবজেক্ট setResultFormats মাধ্যমে সংজ্ঞায়িত করা অনুযায়ী স্ক্যান করা পৃষ্ঠার সংখ্যা এবং JPEG ও PDF ফরম্যাটের ছবিগুলোর URI অ্যাক্সেস করার সুযোগ দেবে।
কোটলিন
val scanner = GmsDocumentScanning.getClient(options) val scannerLauncher = registerForActivityResult(StartIntentSenderForResult()) { result -> { if (result.resultCode == RESULT_OK) { val result = GmsDocumentScanningResult.fromActivityResultIntent(result.data) result.getPages()?.let { pages -> for (page in pages) { val imageUri = pages.get(0).getImageUri() } } result.getPdf()?.let { pdf -> val pdfUri = pdf.getUri() val pageCount = pdf.getPageCount() } } } } scanner.getStartScanIntent(activity) .addOnSuccessListener { intentSender -> scannerLauncher.launch(IntentSenderRequest.Builder(intentSender).build()) } .addOnFailureListener { ... }
জাভা
GmsDocumentScanner scanner = GmsDocumentScanning.getClient(options); ActivityResultLauncher<IntentSenderRequest> scannerLauncher = registerForActivityResult( new StartIntentSenderForResult(), result -> { if (result.getResultCode() == RESULT_OK) { GmsDocumentScanningResult result = GmsDocumentScanningResult.fromActivityResultIntent(result.getData()); for (Page page : result.getPages()) { Uri imageUri = pages.get(0).getImageUri(); } Pdf pdf = result.getPdf(); Uri pdfUri = pdf.getUri(); int pageCount = pdf.getPageCount(); } }); scanner.getStartScanIntent(activity) .addOnSuccessListener(intentSender -> scannerLauncher.launch(new IntentSenderRequest.Builder(intentSender).build())) .addOnFailureListener(...);
কর্মক্ষমতা উন্নত করার টিপস
মনে রাখবেন যে ডকুমেন্ট ফাইল তৈরি করতে সময় ও প্রসেসিং পাওয়ার লাগে, তাই শুধু আপনার প্রয়োজনীয় আউটপুট ফরম্যাটগুলোর (JPEG, বা PDF, বা উভয়ই) জন্যই অনুরোধ করুন।
অন্য কিছু উল্লেখ না করা থাকলে, এই পৃষ্ঠার কন্টেন্ট Creative Commons Attribution 4.0 License-এর অধীনে এবং কোডের নমুনাগুলি Apache 2.0 License-এর অধীনে লাইসেন্স প্রাপ্ত। আরও জানতে, Google Developers সাইট নীতি দেখুন। Java হল Oracle এবং/অথবা তার অ্যাফিলিয়েট সংস্থার রেজিস্টার্ড ট্রেডমার্ক।
2026-03-19 UTC-তে শেষবার আপডেট করা হয়েছে।