将没有src的图像复制到可打印窗口

时间:2015-02-16 20:17:38

标签: javascript jquery html

我有一个TLDR创建条形码的JavaScript项目。在按钮上单击我想要打印由内部guid生成的条形码我正在使用jsBarcode.js插件,该插件接受一个字符串并将其转换为条形码。这是该div的html标记。

<div id="printable">
    <img id="barcode"></img>
</div>

条形码完美地显示了它只是在尝试将其复制到新窗口时它没有出现:(

我尝试了多种方法,但没有运气。现在我有了这个代码,在弹出的窗口上显示object Object

var printContent = new $('#barcode').clone();
var w = window.open('','','width=340,height=260');

var windowContent = '<!DOCTYPE html>';
    windowContent += '<html>';
    windowContent += '<head><title>Print canvas</title>';
    windowContent += '</head>';
    windowContent += '<body>';
    windowContent += '<img id="printWindowBarcode">' + printContent + '</img>';
    windowContent += '</body>';
    windowContent += '</html>';
    w.document.write(windowContent);
    w.focus();
    w.print();
    w.close();

我没有运气这样做..我可以让文本内容现在显示出来的问题,但是在链接没有来源的图像时怎么做也没有任何线索...任何帮助都将非常感激。

1 个答案:

答案 0 :(得分:0)

在插件页面上,示例条形码实际上有源:lindell.me/JsBarcode它是base64图像,直接硬编码到图像源中。 您可以使用$('#myImg').attr('src')简单地访问源代码,然后获取base64数据。你可以在画布上绘制它等。看看这里:Base64 png data to html5 canvas