bwip-js icon indicating copy to clipboard operation
bwip-js copied to clipboard

backgroundcolor with # doesn't work or throw an error

Open jaisal1024 opened this issue 2 years ago • 1 comments

When i call the toBuffer API like so:

  const buffer = await bwipjs.toBuffer({
    bcid: 'code128',
    text: '5555563151499218',
    includetext: true,
    textxalign: 'center',
    backgroundcolor: '#ffffff',

The generated PNG is transparent, not white.

To fix it i have to call the API like so:

  const buffer = await bwipjs.toBuffer({
    bcid: 'code128',
    text: '5555563151499218',
    includetext: true,
    textxalign: 'center',
    backgroundcolor: 'ffffff',

and it adds a white background. The backgroundcolor: '#ffffff', should either throw an error or work as its really confusing to figure out what is going on!

jaisal1024 avatar Mar 14 '24 16:03 jaisal1024

This works for me:

const bwipjs = require('bwip-js');
console.log(bwipjs.BWIPJS_VERSION);   // 4.3.0 (2024-03-12)
(async function() {
    let buf = await bwipjs.toBuffer({
            bcid:'code128',
            text: '5555563151499218',
            includetext: true,
            textxalign: 'center',
            backgroundcolor: '#abcdef',
            padding: 5,
        });

    require('fs').writeFileSync('bg.png', buf);
})();

image

I suspect you are using an out of date version.

metafloor avatar Mar 14 '24 17:03 metafloor