FLUTTER ECOSYSTEM

PiotrFLEURY/camcode

uma biblioteca de escaneamento de código de barras com câmera web do Flutter

Capa do projeto camcode
Stars
11
Forks
11
Último push (UTC)
9 de set. de 2023
Status do projeto
Ativo
Piotr FLEURY GitHub avatar
GITHUB User

Piotr FLEURY ↗

XPEHOFrance
LinguagensDartRubyHTMLKotlinSwiftJavaScriptObjective-C

Pacotes publicados por este repositório

Dependências usadas

Lista de dependências 6 itens
  • flutter{"sdk":"flutter"}
  • flutter_web_plugins{"sdk":"flutter"}
  • js^0.6.2
  • flutter_testDesenvolvimento{"sdk":"flutter"}
  • every_testDesenvolvimento^1.0.0
  • pedanticDesenvolvimento^1.9.0

README original

Texto original em inglês. Visite o GitHub para a versão atual.

Expandir / recolher README

camcode

A camera barcode scan library for Flutter Web

Web build status

Getting Started

Add a javascript file for barcode scan

function detectBarcode(dataUrl, callback) {

    // call here your favorite javascript barcode scan library
    // input must be an image dataUrl
    // output must be a single String

    // don't forget to trigger the call back in order to get the result
    callback(barcode);
}

Import javascript files into your index.html

<script src="LINK_TO_MY_AWESOME_JAVASCRIPT_BARCODE_SCAN_LIB"></script>
<script src="js/barcode.js"></script> // the javascript file with the detectBarcode function

Use it

import 'package:camcode/cam_code_scanner.dart';

showDialog(
    context: context,
    builder: (context) => CamCodeScanner(
    width: MediaQuery.of(context).size.width,
    height: MediaQuery.of(context).size.height,
    refreshDelayMillis: 200,
    onBarcodeResult: (barcode) {
        // do whatever you want
    },
    minimalResultCount: 2,
    ),
);

More options

Manually release resources

Sometimes, depending on your camcode usage, you may need to release resources manually.

1- To do so, create first a controller for the scanner

// Create a controller to send instructions to scanner
  final CamCodeScannerController _controller = CamCodeScannerController();

2- Then, add it to the CamCodeScanner

CamCodeScanner(
    width: ...,
    height: ...,
    refreshDelayMillis: ...,
    onBarcodeResult: (barcode) {
        ...
    },
    controller: _controller,
),

3- And finally, just call releaseResources() method when required

ElevatedButton(
    onPressed: () {
        _controller.releaseResources();
    },
    child: Text('Release resources'),
),

Calling this method will close the camera and stop the scanner process