From 1e7d313935d4e980b0c83d78b23150cedeede4f2 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Marcus=20F=C3=B6rster?= Date: Sun, 25 Feb 2024 17:57:07 +0100 Subject: [PATCH] ignore SVG default colors --- src/renderers/svg.js | 15 ++++++++++----- 1 file changed, 10 insertions(+), 5 deletions(-) diff --git a/src/renderers/svg.js b/src/renderers/svg.js index bba880f..a4281ae 100644 --- a/src/renderers/svg.js +++ b/src/renderers/svg.js @@ -15,12 +15,21 @@ class SVGRenderer{ var currentX = this.options.marginLeft; this.prepareSVG(); + + // Create Background + if(!this.options.background.match(/transparent|#[a-f\d]{3}(?:[a-f\d]{3})?0/i)){ + this.drawRect(0, 0, "100%", "100%", this.svg).setAttribute("fill", this.options.background); + } + for(let i = 0; i < this.encodings.length; i++){ var encoding = this.encodings[i]; var encodingOptions = merge(this.options, encoding.options); var group = this.createGroup(currentX, encodingOptions.marginTop, this.svg); - group.setAttribute("fill", encodingOptions.lineColor); + + if(!encodingOptions.lineColor.match(/black|#000(?:000)?f?/i)){ + group.setAttribute("fill", encodingOptions.lineColor); + } this.drawSvgBarcode(group, encodingOptions, encoding); this.drawSVGText(group, encodingOptions, encoding); @@ -41,10 +50,6 @@ class SVGRenderer{ var width = totalWidth + this.options.marginLeft + this.options.marginRight; this.setSvgAttributes(width, maxHeight); - - if(this.options.background){ - this.drawRect(0, 0, "100%", "100%", this.svg).setAttribute("fill", this.options.background); - } } drawSvgBarcode(parent, options, encoding){