ZXing (pronounced "zebra crossing") is an open-source, multi-format 1D/2D barcode image processing library implemented in Java, with ports to other languages. Our focus is on using the built-in camera on mobile phones to scan and decode barcodes on the device, without communicating with a server. However the project can be used to encode and decode barcodes on desktops and servers as well. We currently support these formats:
S. Ceri, E. Valle, D. Pedreschi, and R. Trasarti. Conceptual Modeling, volume 7532 of Lecture Notes in Computer Science, Springer Berlin Heidelberg, (2012)
A. Leitner, M. Oriol, A. Zeller, I. Ciupa, and B. Meyer. Proceedings of the Twenty-second IEEE/ACM International Conference on Automated Software Engineering, page 417--420. New York, NY, USA, ACM, (2007)
A. Cal\`ı, G. Gottlob, and T. Lukasiewicz. Proceedings of the 12th International Conference on Database Theory, page 14--30. New York, NY, USA, ACM, (2009)
A. Lancichinetti, and S. Fortunato. (2009)cite arxiv:0908.1062Comment: 12 pages, 8 figures. The software to compute the values of our general normalized mutual information is available at http://santo.fortunato.googlepages.com/inthepress2.