Barcode
barcode generation for nodejs
* [Code39](http://en.wikipedia.org/wiki/Code39) * [Codabar](http://en.wikipedia.org/wiki/Codabar) * [Code128](http://en.wikipedia.org/wiki/Code128) * [UPC-A](http://en.wikipedia.org/wiki/Universal_Product_Code) * [UPC-E](http://en.wikipedia.org/wiki/Universal_Product_Code#UPC-E) * [EAN-13](http://en.wikipedia.org/wiki/EAN) The project is written primarily in JavaScript, distributed under the MIT License license, first published in 2012. Key topics include: barcode-generator, javascript, upc.
barcode generator 
Generate 1D and 2D barcodes
Supported 1D types
Supported 2D types
- QR Code (comming soon)
- DataMatrix (comming soon)
- PDF417 (comming soon)
Requirements
- A working installation of GraphicsMagick.
- node >= 0.10.0
Installing
npm install barcode
Usage
Set it up and specify your type and options. The following 3 are the only
required ones.
javascriptvar barcode = require('barcode'); var code39 = barcode('code39', { data: "it works", width: 400, height: 100, });
Next choose from the three methods below how you want to output your barcode.
Stream
Get a stream of the final image data. you can collect this and save out a new
PNG (default type), pipe it elsewhere, or save it to a CDN.
javascriptcode39.getStream(function (err, readStream) { if (err) throw err; // 'readStream' is an instance of ReadableStream readStream.pipe(CdnWriteStream); });
File to disk
Save an image out to the file system, pretty simple. Just be sure to specify
your outfile.
javascriptvar outfile = path.join(__dirname, 'imgs', 'mycode.png') code39.saveImage(outfile, function (err) { if (err) throw err; console.log('File has been written!'); });
Base64 encoded img src
Often times, barcodes are single use for a single print or whatever. With this
method, we can create one on the fly and just send the base64 encoded image to
the browser through the HTML.
javascriptcode39.getBase64(function (err, imgsrc) { if (err) throw err; // if we're using HTTP or another framework res.end('<img src="' + imgsrc + '">'); });
Refactor
Much of the underlying code for the generation is being rewritten, however the
API will remain the same. As a rule, anything new will have to be testable.
Things todo:
- Move all checksums and ECC to a module in lib/utils
- Use the new barcode generation class: Barcode2D.js
- Remove uses of Barcode1D and in-place image generation
- Create separate functions for generating sequences
In the future:
- Abstract drawing to be able to draw with
gmor output html (bars with css
or canvas)
License
Contributors
Showing top 1 contributor by commit count.
