我需要生成QR码并将其显示在凭证上。我有一个打印链接。点击打印链接,我应该获得qrcode和其他一些细节的打印。
但是我读到使用javascript打印无法打印画布。
我需要将画布转换为图像,然后在凭证页面上显示,以便打印。
这是代码
<div class="qrcode${voucher.voucherId}" style="float:left;" >
<canvas width="100" height="100"></canvas>
</div>
$('.qrcode'+voucherid).qrcode({
width: 100,
height: 100,
text: ""+voucherid+"",
size: 100
});
请建议。
答案 0 :(得分:0)
这是我将页面中的第一个画布保存到png的代码。 在谷歌浏览器中测试过。
// Save first canvas object in current document to png.
var canv = document.getElementsByTagName("canvas")[0],
zz = document.createElement("a");
zz.href = canv.toDataURL();
zz.setAttribute("download", "Canvas_" + (new Date).getTime() + ".png");
var myEvt = document.createEvent("MouseEvents");
myEvt.initEvent("click", !1, !0);
zz.dispatchEvent(myEvt);