zxing_lib 是 ZXing 條碼庫的 Dart 實作,支援多種一維與二維條碼(如 QR Code、PDF417、DataMatrix、Aztec、MaxiCode 及 OneD)的編碼與解碼。支援 Android、iOS、Web、macOS、Windows 與 Linux 等多個平台。專為順暢整合至 Flutter 應用而設計,提供可靠且跨平台的條碼功能,無需外部依賴。此套件非常適合需要以多種格式掃描或產生條碼的應用程式。
適用情境
移動應用中的條形碼掃描
產生QR碼以分享資料
在文件系統中處理PDF417
在Web應用程式中整合條碼支援
在庫系統中讀取DataMatrix碼
建立基於阿茲特克的票務系統
主要特色
支援多種條碼類型
跨平台相容性
輕量級 Dart 版本
無原生依賴
解碼的高精度
與 Flutter 的輕鬆整合
適合對象
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.