.Net port of the original java-based barcode reader and generator library zxing
C# Other
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Failed to load latest commit information.
3rdparty signing validation reworked Apr 14, 2018
Clients #23 Strange indentation Jun 28, 2018
Icons Added ZXing.Net Icons for 0.12.0.0 Release Sep 22, 2013
Key remove old ..svnbridge directories Sep 11, 2017
Patches add patch file for a k-d-tree implementation in the PDF417 decoder (j… Mar 27, 2014
Source Windows Compatibility Pack Bindings: use better namespace Aug 16, 2018
docs README in docs Dec 13, 2017
.editorconfig #23 Strange indentation Jun 28, 2018
.gitignore add more patterns to .gitignore Sep 11, 2017
CODE_OF_CONDUCT.md Create CODE_OF_CONDUCT.md Dec 1, 2017
COPYING small cleanups before releasing Sep 22, 2013
README.md AppVeyor badge Mar 24, 2018
THANKS #34 Problems Encoding barcodes from VB6 using COM Interop Aug 22, 2017
TODO.txt port SHA-1: 98bc57f5d193192ef7058cc8d70d4283ca6ecf6e Jan 28, 2015
build_deployment.bindings.cmd versionnumbers Apr 14, 2018
build_deployment.cmd versionnumbers Apr 14, 2018
build_deployment_copy_operations.bindings.txt [#132] Class: BitmapLuminanceSource for .Net Core 2 Aug 14, 2018
build_deployment_copy_operations.txt updated build files Apr 12, 2018
build_deployment_files.bindings.txt [#132] Class: BitmapLuminanceSource for .Net Core 2 Aug 14, 2018
build_deployment_files.txt updated build files Apr 12, 2018
build_deployment_source_export.txt moving on to VS 2017 Mar 20, 2018
build_deployment_strong_named_files.bindings.txt [#132] Class: BitmapLuminanceSource for .Net Core 2 Aug 14, 2018
build_deployment_strong_named_files.txt updated build files Apr 12, 2018
log4net.config port rev. 2531: Feb 10, 2013
nuget-pack.cmd updated build files Apr 12, 2018
nuget-push.cmd fix deployment files Sep 11, 2017
nuget-remove.cmd NuGet support added Jan 2, 2012
nuget.config package source for ImageSharp added May 2, 2017
zxing.ce.sln added WindowsCE demo Oct 2, 2012
zxing.monoandroid.sln remove warnings Aug 10, 2017
zxing.monotouch.sln added monotouch support and demo (thanks to Redth for his work) Nov 4, 2012
zxing.nunit nUnit project updated Jun 9, 2012
zxing.nuspec Bindings: version increment, compatibility fixes Apr 14, 2018
zxing.sln cleanup solutions Apr 12, 2018
zxing.vs2015.sln solution updates Apr 14, 2018
zxing.vs2017.ci.sln solution for CI build Mar 23, 2018
zxing.vs2017.sln [#132] Class: BitmapLuminanceSource for .Net Core 2 Aug 14, 2018
zxing.vssscc project files connected to TFS Sep 30, 2016

README.md

ZXing.Net

ZXing.Net.Mobile Logo

Project Description

A library which supports decoding and generating of barcodes (like QR Code, PDF 417, EAN, UPC, Aztec, Data Matrix, Codabar) within images.

The project is a port of the java based barcode reader and generator library ZXing.
https://github.com/zxing/zxing
It has been ported by hand with a lot of optimizations and improvements.

The following barcodes are supported by the decoder: UPC-A, UPC-E, EAN-8, EAN-13, Code 39, Code 93, Code 128, ITF, Codabar, MSI, RSS-14 (all variants), QR Code, Data Matrix, Aztec and PDF-417. The encoder supports the following formats: UPC-A, EAN-8, EAN-13, Code 39, Code 128, ITF, Codabar, Plessey, MSI, QR Code, PDF-417, Aztec, Data Matrix

Assemblies are available for the following platforms:

  • .Net 2.0, 3.5, 4.0, 4.5, 4.6 and 4.7
  • Silverlight 4 and 5
  • Windows Phone 7.0, 7.1 and 8.0
  • Windows CE
  • Windows RT Class Library and Runtime Components (winmd)
  • .NET Standard / .NET Core / UWP
  • Portable Class Library
  • Unity3D (.Net 2.0 built without System.Drawing reference)
  • Xamarin.Android (formerly Mono for Android)
  • bindings to CoreCompat.System.Drawing, ImageSharp, SkiaSharp, OpenCVSharp, Magick, Kinect V1 and V2
  • support COM interop, can be used with VBA

The library is available in the release section release section and as NuGet package, too.

N|NuGet Build status

Additional platform support without pre-built binaries

The library can be built for Xamarin.iOS (formerly MonoTouch). The project file and solution are available in the source code repository.

A special version for the .Net Micro Framework can be found in a separate branch in the source code repository.

The following demo clients are available:

  • decoder for the command line
  • encoder for the command line
  • Windows Forms demo (demonstrates decoding and encoding of static images and from a camera)
  • Windows Phone demo (demonstrates decoding of static images and from a camera)
  • Windows Service demo (demonstrates decoding of static images)
  • Windows Presentation Framework demo (demonstrates decoding of static images)
  • Windows CE demo (demonstrates decoding of static images)
  • Windows RT demo (demonstrates decoding of static images)
  • Windows Store App with HTML5/JS (demonstrates decoding of static images)
  • Unity3D and Vuforia demo (demonstrates encoding of barcodes and decoding of images from a camera with Unity3D)
  • Silverlight demo (demonstrates decoding and encoding of static images)
  • EmguCV demo (demonstrates decoding of images from a camera and uses the EmguCV framework)
  • OpenCV demo (demonstrates decoding of images from a camera and uses the OpenCVSharp framework)
  • AForge demo (demonstrates decoding of images from a camera and uses the AForge framework)

Thanks

Many thanks to the team of the zxing project for their great work. ZXing.Net would not be possible without your work!

Usage examples

The source code repository includes small examples for Windows Forms, Silverlight, Windows Phone and other project types.

small example decoding a barcode inside a bitmap (.Net 2.0/3.5/4.x)

// create a barcode reader instance
IBarcodeReader reader = new BarcodeReader();
// load a bitmap
var barcodeBitmap = (Bitmap)Image.LoadFrom("C:\\sample-barcode-image.png");
// detect and decode the barcode inside the bitmap
var result = reader.Decode(barcodeBitmap);
// do something with the result
if (result != null)
{
   txtDecoderType.Text = result.BarcodeFormat.ToString();
   txtDecoderContent.Text = result.Text;
}

Help wanted

All help is welcome!

Feedback

You use the library? We would be happy if you give us a short note on the use of the library.

You found a bug? Please create a new issue here or start a discussion about it if you are not sure.

You use the library and you are not happy with it? Write us an email please or start a discussion about your problems with it. We will try to help you.

And you can find me on Twitter. N|http://twitter.com/micjahn

Support it

If you find the project useful and you wish to support the future development feel free to support it with a donation.

Donate

N|Donate

Beside a donation patches, bug reports, feedback and other useful help are always welcome!

Donation WITHOUT money

It would be really, really great if you could support one of my social projects. You can support it WITHOUT paying money. You only have to go to the following url before you buy anything from a supported online shop (like Amazon or eBay):
http://www.bildungsspender.de/kitadorfhain
Select you prefered online shop and go shopping like everytime. The online shop will pay a provision to our Kindergarten for your purchase. No extra costs for you. There are 85 thankful kids. (and one thankful developer of ZXing.Net ;) )