GitHub 儲存庫ishaquehassan/document_scanner_flutter

document_scanner_flutter

適用於 Flutter 的文件掃描外掛程式

document_scanner_flutter 專案封面
星標
63
分支
136
最近推送(UTC)
2026年3月1日
專案狀態
未封存

原始 README

以下為英文專案原文快照,最新內容請造訪 GitHub。

document_scanner_flutter pub package

A document scanner + PDF generator plugin for Flutter. Supports Android and iOS with auto edge detection, cropping, B&W filter, and PDF generation.

Requirements

Platform Minimum Version
Android API 21 (Android 5.0)
iOS iOS 12.0
Flutter 3.0.0
Dart 2.17.0

Getting Started

Installing
document_scanner_flutter: ^0.4.0

Usage

Basic — Camera or Gallery picker
final File? scannedDoc = await DocumentScannerFlutter.launch(context);
// returns null if user cancels
Specific source
final File? scannedDoc = await DocumentScannerFlutter.launch(
  context,
  source: ScannerFileSource.CAMERA, // or ScannerFileSource.GALLERY
);
Re-edit an existing image (v0.4.0+)
final Uint8List imageBytes = await myFile.readAsBytes();

final File? rescanned = await DocumentScannerFlutter.launch(
  context,
  source: ScannerFileSource.CAMERA,
  initialImage: imageBytes,
  canBackToInitial: true,
);
Recover last scan after crash (v0.4.0+)
// Call this on app startup to recover image lost due to process death
final File? recovered = await DocumentScannerFlutter.retrieveLostData();
if (recovered != null) {
  // use recovered image
}
PDF generation from multiple scans
final File? pdfFile = await DocumentScannerFlutter.launchForPdf(
  context,
  source: ScannerFileSource.CAMERA,
);
// returns a PDF File or null if cancelled
Labels customization
final File? scannedDoc = await DocumentScannerFlutter.launch(
  context,
  source: ScannerFileSource.CAMERA,
  labelsConfig: {
    ScannerLabelsConfig.ANDROID_NEXT_BUTTON_LABEL: 'Next',
    ScannerLabelsConfig.ANDROID_SAVE_BUTTON_LABEL: 'Save',
    ScannerLabelsConfig.ANDROID_ROTATE_LEFT_LABEL: 'Rotate Left',
    ScannerLabelsConfig.ANDROID_ROTATE_RIGHT_LABEL: 'Rotate Right',
    ScannerLabelsConfig.ANDROID_ORIGINAL_LABEL: 'Original',
    ScannerLabelsConfig.ANDROID_BMW_LABEL: 'B & W',
    ScannerLabelsConfig.PICKER_CAMERA_LABEL: 'Camera',
    ScannerLabelsConfig.PICKER_GALLERY_LABEL: 'Gallery',
    ScannerLabelsConfig.PICKER_CANCEL_LABEL: 'Cancel',
    ScannerLabelsConfig.ANDROID_INITIAL_IMAGE_LOADING_MESSAGE: 'Loading image...',
  },
);

Changelog

See CHANGELOG.md for full release history.

Ishaq Hassan GitHub avatar
GitHub 作者

Ishaq Hassan ↗

Flutter Framework Contributor | Engineering Manager @ DigitalHire | Open Source Author

@DigitalHire-NewKarachi, Pakistan官方網站 ↗
語言DartKotlinSwiftRubyObjective-CShell

此儲存庫發佈的套件

使用的依賴

依賴清單 5 項

如何選擇適合專案的儲存庫?

先依使用情境篩選,再比較專案活躍情況,最後到原始儲存庫確認使用要求。

  1. 透過儲存庫名稱、作者或描述搜尋,再依技術分類縮小範圍。
  2. 綜合星標、分支與最近推送比較專案;星標反映社群關注,不保證品質。
  3. 使用前在 GitHub 確認 README、授權條款與 Issues。

來源與維護

“A repository is the most basic element of GitHub.”

GitHub Docs — About repositories ↗