From 4c64e2b61db2e8872fe421830af56ddb2cacd8d1 Mon Sep 17 00:00:00 2001 From: Timo Kilpilehto Date: Thu, 15 Jun 2017 10:41:25 +0300 Subject: [PATCH] Rgb/rgba values for colours broke img check --- src/jquery-qrcode.js | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/src/jquery-qrcode.js b/src/jquery-qrcode.js index cbbaf9c..60a9e73 100644 --- a/src/jquery-qrcode.js +++ b/src/jquery-qrcode.js @@ -9,6 +9,8 @@ return !!(elem.getContext && elem.getContext('2d')); }()); + var isColorFunctionRegExp = /rgba?\(.+\)/gi; + // Wrapper for the original QR code generator. function createQRCode(text, level, version, quiet) { var qr = {}; @@ -122,7 +124,7 @@ } function drawBackground(qr, context, settings) { - if (jq(settings.background).is('img')) { + if (!settings.background.match(isColorFunctionRegExp) && jq(settings.background).is('img')) { context.drawImage(settings.background, 0, 0, settings.size, settings.size); } else if (settings.background) { context.fillStyle = settings.background; @@ -256,7 +258,7 @@ fn(qr, context, settings, l, t, w, row, col); } } - if (jq(settings.fill).is('img')) { + if (!settings.background.match(isColorFunctionRegExp) && jq(settings.fill).is('img')) { context.strokeStyle = 'rgba(0,0,0,0.5)'; context.lineWidth = 2; context.stroke();