回答
是的,只是把图像放在屏幕上,然后在JavaScript中调用window.print();
,它应该弹出。
(这是怎么了谷歌地图/谷歌日历做印刷)
popup = window.open();
popup.document.write("imagehtml");
popup.focus(); //required for IE
popup.print();
使用此体内块
<img src="images.jpg" id="mainImg" />
<input type="button" value="Print Image" onclick="printImg()" />
这在Chrome控制台中不起作用。 – Flea777 2013-11-13 20:14:23
这头块
<script type="text/javascript">
function printImg() {
pwin = window.open(document.getElementById("mainImg").src,"_blank");
pwin.onload = function() {window.print();}
}
</script>
使用本在Chrome中运行:
<body ><img src="image.jpg" alt="" style="display: block; width: 100%; height: 100%;">
<script type="text/javascript">
window.onload = function() {
window.print();
setTimeout(function() {
window.close();
}, 1);
};
</script>
</body>
此代码将在弹出窗口中打开YOUR_IMAGE_URL,打印后显示打印对话框并关闭弹出窗口。
var popup;
function closePrint() {
if (popup) {
popup.close();
}
}
popup = window.open(YOUR_IMAGE_URL);
popup.onbeforeunload = closePrint;
popup.onafterprint = closePrint;
popup.focus(); // Required for IE
popup.print();
另一个伟大的解决方案!一切归功于Codescratcher
<script type="text/javascript">
function ImagetoPrint(source) {
return "<html><head><script>function step1(){\n" +
"setTimeout('step2()', 10);}\n" +
"function step2(){window.print();window.close()}\n" +
"</scri" + "pt></head><body onload='step1()'>\n" +
"<img src='" + source + "' /></body></html>";
}
function PrintImage(source) {
Pagelink = "about:blank";
var pwa = window.open(Pagelink, "_new");
pwa.document.open();
pwa.document.write(ImagetoPrint(source));
pwa.document.close();
}
<a href="#" onclick="PrintImage('YOUR_IMAGE_PATH_HERE.JPG'); return false;">PRINT</a>
查看完整的例子在这里: http://www.codescratcher.com/javascript/print-image-using-javascript/#comment-762
我只花了45分钟,这个“简单”的问题,试图得到它我的方式希望它能够运作。
我在img标签内部有一个图像,它由我必须打印的jQuery Barcode
插件动态生成。我想让它在另一个窗口打印,然后关闭窗口。这一切都应该发生在用户点击jQuery Grid
插件中的按钮之后,jQuery-UI
对话框中的对话框以及jQuery-UI
对话框扩展器应用于其中。
我调整了每个人的答案,直到我终于想出了这个,也许它可以帮助某人。
w = window.open(document.getElementById("UB-canvas").src);
w.onload = function() { w.print(); }
w.onbeforeunload = setTimeout(function() { w.close(); },500);
w.onafterprint = setTimeout(function() { w.close(); },500);
的setTimeout
不仅仅是妈和笑声,这是我发现Firefox 42
会打这些功能的唯一途径。它只是简单地跳过.close()
函数,直到我为它添加了一个断点,然后它完美地工作。所以我假设它在应用onbeforeload事件函数和onafterprint事件函数之前创建了这些窗口实例,或者其他东西。
- 1. 用JavaScript打印图像
- 2. 使用javaScript打印toDataURL图像
- 3. 使用Javascript在Chrome中打印图像
- 4. 如何使用javascript打印图像
- 5. 无法使用JavaScript打印功能打印图像
- 6. 使用PHP打印图像
- 7. 使用SSRS打印图像
- 8. 使用Windows打印图像打印图像对话框
- 9. 打印图像打印灰度图像
- 10. 打印图像
- 11. 打印图像
- 12. 在HTML5/JavaScript的打印图像
- 13. 用pHp打印图像
- 14. 使用office.interop打印方法时不打印图像
- 15. 使用DPP-350蓝牙打印机进行图像打印
- 16. 使用CPCL在Zebra打印机上打印PCX图像
- 17. 如何使用PHP打印图像:打印机
- 18. 使用GraphicsUtil的斑马打印图像
- 19. 使用PrinterJob打印图像(Graphics2D)
- 20. 使用ePOS SDK打印图像
- 21. 在Mac上使用C++打印图像
- 22. 如何使用GTKSharp打印图像
- 23. Zebra EM 220,使用Android打印图像
- 24. XPS - 使用图像打印文档
- 25. 打印PHP图像
- 26. 打印按钮打印附加图像
- 27. 在POS打印机上打印图像
- 28. C#打印文档打印图像
- 29. 使用@media打印ExtJS图表打印
- 30. IFRAME tiff图像打印并不打印全图像
很酷。但是如果我想要一个不同的图像来显示启动弹出窗口? – andrew 2010-05-25 22:47:40
查看要打印的CSS样式。基本上可以在屏幕视图中隐藏图像,然后在打印视图中可见。 – 2010-05-25 23:14:30