scanImage static method

Future<ScanResult> scanImage(
  1. dynamic imageInput, {
  2. ScanMode mode = ScanMode.qr,
})

High-level API to scan an image file or byte buffer for barcodes/OCR text.

Implementation

static Future<ScanResult> scanImage(
  dynamic imageInput, {
  ScanMode mode = ScanMode.qr,
}) async {
  if (imageInput is Uint8List) {
    return scanBytes(imageInput, mode: mode);
  }
  if (imageInput is File) {
    return _engine.processImageFile(imageInput.path, mode);
  }
  if (imageInput is String) {
    if (File(imageInput).existsSync()) {
      return _engine.processImageFile(imageInput, mode);
    }
    return scanBytes(Uint8List.fromList(imageInput.codeUnits), mode: mode);
  }
  return ScanResult(
    mode: mode,
    rawValue: '',
    fields: const {},
    isValid: false,
    confidence: 0.0,
    timestamp: DateTime.now(),
  );
}