A .NET port of the ZXing library for decoding and generating barcodes like QR codes, Data Matrix, and EAN.
ZXing.Net is a .NET port of the ZXing library that provides barcode decoding and generation capabilities for .NET applications. It supports a wide range of barcode formats, including QR codes, Data Matrix, and EAN, allowing developers to integrate barcode scanning and creation into desktop, mobile, and web apps. The library solves the problem of adding barcode functionality without relying on external services or platform-specific tools.
.NET developers building applications that require barcode scanning or generation, such as inventory systems, mobile apps with QR code features, or enterprise solutions needing data capture from barcodes.
Developers choose ZXing.Net for its comprehensive format support, cross-platform compatibility across the .NET ecosystem, and seamless integration with popular imaging libraries. Its hand-ported, optimized codebase ensures reliability and performance while being fully open-source and community-driven.
.Net port of the original java-based barcode reader and generator library zxing
Open-Awesome is built by the community, for the community. Submit a project, suggest an awesome list, or help improve the catalog on GitHub.
Decodes and generates over a dozen barcode types including QR Code, Data Matrix, and PDF-417, as detailed in the README's comprehensive lists for both decoder and encoder.
Supports .NET Framework, .NET Core, .NET Standard, UWP, Xamarin, Unity3D, and more via NuGet, with pre-built assemblies for diverse environments.
Extensible with bindings to multiple imaging libraries like System.Drawing, ImageSharp, and SkiaSharp, allowing adaptation to different project needs without locking into one backend.
Includes practical demo clients for Windows Forms, WPF, Unity3D, and camera decoding with frameworks like EmguCV and AForge, providing ready-to-use examples.
Requires additional NuGet packages for image handling in .NET Standard/.NET 5+ projects, as noted in the README's important notice, which can confuse developers and increase dependency management.
As a hand-ported library from Java, updates and new features from the original ZXing may be delayed, potentially affecting support for emerging barcode technologies or bug fixes.
Supports obsolete platforms like Windows Phone and Silverlight up to release 0.16, which might add unnecessary complexity or size to the library for modern applications focused on current .NET versions.