DocScanKit Plugin

pub.dev

Description

A Flutter plugin that performs document scanning, using ML Kit on Android and Vision Kit on iOS.


Feature Support

Feature Android iOS
Document Scanning
Auto Crop
Filters
Edge Detection
Multi-page Scanning
Text Recognizer
QrCode Recognizer

🚧 Pending Improvements

⚠️ Areas that need improvement:

  • Improve error handling and return values.
  • Improve viewing when scanning text android.

Demo

iOS

Screenshots

Screenshot 1 Screenshot 2 Screenshot 3

Android

Screenshots

Screenshot 1 Screenshot 2 Screenshot 3

Initial Setup

Android

To configure Android, add the following settings to the android/app/build.gradle file:

Requirements

  • minSdkVersion: 21
  • targetSdkVersion: 33
  • compileSdkVersion: 34

iOS

For iOS, edit the ios/Podfile to set the minimum version:

platform :ios, '13.0'

Also, add the camera usage permission in the ios/Runner/Info.plist file:

<key>NSCameraUsageDescription</key>
<string>Camera Usage is Required</string>

Usage

Here's a simple example of how to use the plugin to scan documents:

import 'package:doc_scan_kit/doc_scan_kit.dart';

  try {
      final List<ScanResult> images = await docScanKitPlugin.scanner();
    } on PlatformException catch (e) {
      debugPrint('Failed $e');
    } finally {
      docScanKitPlugin.close();
    }

This example performs the scan and returns a list of images in Uint8List format.


Contributions

Contributions are welcome! Feel free to open an issue or submit a pull request.


Supported Versions

  • Android: minSdkVersion 21+
  • iOS: 13.0+

Libraries

doc_scan_kit