利用jquery.qrcode在页面上生成二维码且支持中文

2020-05-22 22:00:37易采站长站整理

    switch (c) {
        case 1: return p.RS_BLOCK_TABLE[4 * (a – 1) + 0]; case 0: return p.RS_BLOCK_TABLE[4 * (a – 1) + 1]; case 3: return p.RS_BLOCK_TABLE[4 *
(a – 1) + 2]; case 2: return p.RS_BLOCK_TABLE[4 * (a – 1) + 3]
    }
}; t.prototype = { get: function (a) { return 1 == (this.buffer[Math.floor(a / 8)] >>> 7 – a % 8 & 1) }, put: function (a, c) { for (var d = 0; d < c; d++) this.putBit(1 == (a >>> c – d – 1 & 1)) }, getLengthInBits: function () { return this.length }, putBit: function (a) { var c = Math.floor(this.length / 8); this.buffer.length <= c && this.buffer.push(0); a && (this.buffer[c] |= 128 >>> this.length % 8); this.length++ } }; “string” === typeof h && (h = { text: h }); h = r.extend({}, { render: “canvas”, width: 256, height: 256, typeNumber: -1,
    correctLevel: 2, background: “#ffffff”, foreground: “#000000”
}, h); return this.each(function () {
    var a; if (“canvas” == h.render) {
        a = new o(h.typeNumber, h.correctLevel); a.addData(h.text); a.make(); var c = document.createElement(“canvas”); c.width = h.width; c.height = h.height; for (var d = c.getContext(“2d”), b = h.width / a.getModuleCount(), e = h.height / a.getModuleCount(), f = 0; f < a.getModuleCount(); f++) for (var i = 0; i < a.getModuleCount(); i++) {
            d.fillStyle = a.isDark(f, i) ? h.foreground : h.background; var g = Math.ceil((i + 1) * b) – Math.floor(i * b),
j = Math.ceil((f + 1) * b) – Math.floor(f * b); d.fillRect(Math.round(i * b), Math.round(f * e), g, j)
        }
    } else {
        a = new o(h.typeNumber, h.correctLevel); a.addData(h.text); a.make(); c = r(“<table></table>”).css(“width”, h.width + “px”).css(“height”, h.height + “px”).css(“border”, “0px”).css(“border-collapse”, “collapse”).css(“background-color”, h.background); d = h.width / a.getModuleCount(); b = h.height / a.getModuleCount(); for (e = 0; e < a.getModuleCount(); e++) {
            f = r(“<tr></tr>”).css(“height”, b + “px”).appendTo(c); for (i = 0; i < a.getModuleCount(); i++) r(“<td></td>”).css(“width”,
d + “px”).css(“background-color”, a.isDark(e, i) ? h.foreground : h.background).appendTo(f)
        }
    } a = c; jQuery(a).appendTo(this)
})
    }