zxing_lib는 ZXing 바코드 라이브러리의 Dart 구현으로, QR 코드, PDF417, DataMatrix, Aztec, MaxiCode, OneD 등 다양한 1차원 및 2차원 바코드의 인코딩과 디코딩을 가능하게 합니다. 안드로이드, iOS, 웹, 맥OS, 윈도우, 리눅스 등 여러 플랫폼을 지원합니다. Flutter 앱에 원활하게 통합될 수 있도록 설계되어 외부 종속성 없이 신뢰할 수 있는 크로스플랫폼 바코드 기능을 제공합니다. 다양한 형식의 바코드 스캔 또는 생성이 필요한 애플리케이션에 적합합니다.
사용 사례
모바일 앱에서 바코드 스캔
데이터 공유를 위한 QR 코드 생성
문서 시스템에서 PDF417 처리
웹 애플리케이션에 바코드 지원 통합
재고 시스템에서 DataMatrix 코드 읽기
아즈텍 기반 티켓 시스템 만들기
주요 기능
여러 바코드 유형을 지원합니다
크로스 플랫폼 호환성
경량 Dart 포트
내장 종속성 없음
디코딩의 높은 정확도
Flutter와의 간편한 통합
적합한 대상
바코드 기능이 있는 앱을 개발하는 플러터 개발자
다양한 형식의 바코드 지원이 필요한 응용 프로그램
오프라인 바코드 처리가 필요한 프로젝트
여러 운영 체제를 대상으로 하는 개발자
순수한 Dart 솔루션을 찾는 팀
고려 사항
지원되는 바코드 형식에 한정
저사양 기기에서는 성능이 다를 수 있습니다
실시간 카메라 스트리밍이 포함되어 있지 않습니다
이미지 입력을 수동으로 처리해야 합니다
스캔을 위해 추가적인 UI 구성 요소가 필요할 수 있습니다
고속 배치 처리에 최적화되지 않음
원본 README
연결된 소스 저장소의 README 원문 스냅샷입니다. 최신 내용은 저장소에서 확인하세요.
ZXing-Dart
A Dart port of zxing that encode and decode multiple 1D/2D barcodes, Supported qrcode, pdf417, oned, maxicode, datamatrix, aztec.
ZXing Widget
ZXing Scanner
Why
Pure Dart implementation, no need to rely on native packages, good platform compatibility
Provide pure Dart encoding for all platforms
Provide pure Dart decoding for all platforms
Research learning and an exploration of Dart language
... At present, this package is far inferior to other native packages in decoding speed and accuracy, and can be used as a decoding tool and some platforms (such as Web and Desktop). I will also continue to pay attention to the improvement of zxing and the improvement of the performance problems in this project. And welcome suggestions for improvement from those with experience in decoding algorithms and image algorithms.
Feature
✅ Core package translate
✅ Core test translate
✅ Core unit test(all passed)
✅ Demo Creator
✅ Demo Scanner (Decode from Captured picture or CameraImage from camera stream)
✅ Code optimization
🚧 Keep syncing from zxing java...
Preview
Demo App
Exception Type
IllegalArgumentException => ArgumentError
FormatException => FormatsException
IllegalStateException => StateError
Issue
Because there is no float type in dart, the results of some test cases are different from zxing
Flutter
This project is a starting point for a Dart
package,
a library module containing code that can be shared easily across
multiple Flutter or Dart projects.
For help getting started with Flutter, view our
online documentation, which offers tutorials,
samples, guidance on mobile development, and a full API reference.