views:

38

answers:

2

My .NET application needs to decode 2D bar codes in DataMatrix format.

I originally used a commercial library called Tasman.Bars, which had great royalty-free licensing terms, awesome performance, and supported many different bar code types... except that on certain images it would crash. These images were very rare, but this was still a show-stopping bug. Unfortunately, by the time I ran into it, the library was no longer sold or supported, having been bought out by another company and replaced with a much more expensive product.

I've tried the open-source libdmtx, both the native version (via a wrapper) and the .NET port (DataMatrix.net), and its performance is disappointing. I have to give it a timeout value when it decodes, and 1 second isn't long enough to decode some images even on a 2.8 GHz quad-core. 4 seconds works better, but that's an irritating amount of time, and even 10 seconds is insufficient for one image I've tried - I suspect it's just failing completely on that one, even though it looks visually identical to another one that works.

So... any recommendations? Commercial libraries are fine as long as the royalties are low or nonexistent.

+1  A: 

Zebra Crossing ( http://code.google.com/p/zxing/ ) has a partial port to C#, and I believe Data Matrix is implemented. Check out http://zxing.googlecode.com/svn/trunk/csharp/datamatrix/ and see for yourself. Please let me know how it turns out.

codehead
zxing's DataMatrix support is "alpha quality" and posts on the mailing list claim that the detector module is unreliable. I will be using this in a commercial product that needs to be pretty solid.
Jesse McGrew
A: 

I have tried the DLL version of Datamatrix decoder of AIPSYS(http://www.aipsys.com), it has a better image process engine which can pre-process the image and get a high quality image to be decoded.

The DLL version can be called in many development env. such C#, delphi, VB, powerbuilder, C/C++ and etc.
godsky