PDF417 HUB3 Barcode Generator
This library provides you with the ability to generate PDF417 HUB3 Barcodes in browser or Node.js
apps. The final barcode is drawn into a canvas element and can be used for many different use cases.
The code is based on the bcmath-js and
pdf417-js.
Browser
You can find a complete example at examples/browser and a running demo here.
The usage is as simple as providing a canvas element and a text that should be used for barcode generation:
<script src="https://cdn.jsdelivr.net/gh/pkoretic/pdf417-generator@master/lib/libbcmath.js" type="text/javascript"></script>
<script src="https://cdn.jsdelivr.net/gh/pkoretic/pdf417-generator@master/lib/bcmath.js" type="text/javascript"></script>
<script src="https://cdn.jsdelivr.net/gh/pkoretic/pdf417-generator@master/lib/pdf417.js" type="text/javascript"></script>
HTML
<canvas id="barcode" ></canvas>
JS
var code = "HRVHUB30\nHRK\n" +
"000000000012355\n"+
"PETAR KORETIĆ\n"+
"PREVOJ DD\n"+
"10000 Zagreb\n"+
"pkoretic J.D.O.O\n"+
"PREVOJ DD\n"+
"10000 ZAGREB\n"+
"HR5041240000000000\n"+
"HR01\n"+
"7336-68949637625-00001\n"+
"COST\n"+
"Uplata za 1. mjesec\n";
var canvas = document.getElementById("barcode")
PDF417.draw(code, canvas)
Node.js
You can find a complete example at examples/node.
The node-canvas library is used for drawing.
Install the library:
npm install pdf417-generator
Use it as:
const Canvas = require("canvas")
const PDF417 = require("pdf417-generator")
const code =
`HRVHUB30
HRK
000000000012355
PETAR KORETIĆ
PREVOJ DD
10000 Zagreb
FIRMA J.D.O.O
PREVOJ DD
10000 ZAGREB
HR5041240000000000
HR01
7336-68949637625-00001
COST
Uplata za 1. mjesec`
let canvas = new Canvas()
PDF417.draw(code, canvas)
// create an image which can be sent in an e-mail or similar
console.log(`<img src="${canvas.toDataURL()}" />`)
TypeScript
import * as PDF417 from 'pdf417-generator';
PDF417.draw(code, canvas);
draw arguments
code - (string) code to represent using PDF417
canvas - (Canvas) Canvas instance
aspectRatio - (float) the width to height of the symbol (excluding quiet zones); default 2
ecl - (int) error correction level (0-8); default -1 = automatic correction level
devicePixelRatio (int) determine how much extra pixel density should be added to allow for a sharper image; default window.devicePixelRatio if available