JSPM

  • Created
  • Published
  • Downloads 98
  • Score
    100M100P100Q70034F
  • License SEE LICENSE IN LICENSE.txt

Node.js bindings to Dynamsoft Barcode Reader C/C++ SDK.

Package Exports

  • barcode4nodejs

This package does not declare an exports field, so the exports above have been automatically detected and optimized by JSPM instead. If any package subpath is missing, it is recommended to post an issue to the original package (barcode4nodejs) to support the "exports" field. If that is not possible, create a JSPM override to customize the exports field for this package.

Readme

DBR Node.js Extension

The project aims to help developers build Node.js barcode apps with Dynamsoft Barcode Reader in Windows, Linux, macOS, and Raspberry Pi.

Barcode SDK License Key

Get the trial license.

Contact Us

support@dynamsoft.com

Environment

Node v12.14.0

Installation

Quick Usage

const dbr = require('barcode4nodejs');
dbr.initLicense("LICENSE-KEY")
dbr.decodeFileAsync("YOUR IMAGE FILE", dbr.formats.OneD | dbr.formats.PDF417 | dbr.formats.QRCode | dbr.formats.DataMatrix | dbr.formats.Aztec, function(err, msg){
  console.log(msg)
}, "");

How to Build the Module for Windows, Linux, macOS and Raspberry Pi

Replace the library files in platforms/ with yours.

Build the Node.js extension:

node-gyp configure
node-gyp build

For Raspberry Pi

Download and extract the Raspberry Pi package, and then copy the libDynamsoftBarcodeReader.so file to the platforms/linux folder.

For Visual Studio 2019 Community

node-gyp configure --msbuild_path="C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\MSBuild\Current\Bin\MSBuild.exe" --msvs_version=2017
node-gyp build

Examples

  • examples/command-line

    node test.js -f test.tif
  • examples/web

    npm install
    node server.js

    Open http://localhost:2018/index.htm in web browsers.

  • examples/desktop-electron

    cd src
    node-gyp rebuild --target=0.36.7 --arch=x64 --dist-url=https://atom.io/download/atom-shell
    
    cd examples/desktop-electron
    npm install
    npm start
  • examples/linux-camera

    npm install v4l2camera
    node camera_barcode_reader.js
  • examples/RESTful-service

    npm install restify
    node server.js

    Open https://< ip >:2018 to scan barcodes in web browsers.

APIs

  • initLicense(license-key)
  • decodeFileAsync(fileName, barcodeTypes, callback, template)
  • decodeFileStreamAsync(fileStream, fileSize, barcodeTypes, callback, template)
  • decodeBase64Async(base64, barcodeTypes, callback, template)
  • decodeYUYVAsync(buffer, width, height, barcodeTypes, callback, template)
  • decodeBufferAsync(buffer, width, height, stride, barcodeTypes, callback, template, maxBufferLength)

Template is an advanced usage. By default, you just need to set template "".

barcodeTypes

barcodeTypes = dbr.formats.OneD | dbr.formats.PDF417 | dbr.formats.QRCode | dbr.formats.DataMatrix | dbr.formats.Aztec

template

let params = {
  "ImageParameter": {
    "Name": "Custom_143301_827",
    "BarcodeFormatIds": [
      "BF_ALL"
    ],
    "DeblurLevel": 9,
    "ExpectedBarcodesCount": 100,
    "ScaleDownThreshold": 1200000,
    "Timeout": 100000
  },
  "Version": "3.0"
};
template = JSON.stringify(params);