如何使用 JavaScript 将 pdf 文件直接发送到打印机?

2024-04-06

如何使用 JavaScript 将 PDF 文件直接发送到打印机?

我在论坛找到了两个答案:

<embed src="vehinvc.pdf" id = "Pdf1" name="Pdf1" hidden>
<a onClick="document.getElementById('Pdf1').printWithDialog()" style="cursor:hand;">Print file</a>

and

<OBJECT id = "Pdf2" name="Pdf2" CLASSID="clsid:CA8A9780-280D-11CF-A24D-444553540000" WIDTH="364" HEIGHT="290">
     <PARAM NAME='SRC' VALUE="file.pdf">
</OBJECT>
<a onClick="document.Pdf2.printWithDialog()">Print file</a> 

但我的问题是它只适用于 IE,不适用于 Firefox 或 Chrome。

有什么解决办法吗?


我认为这个 JavaScript 库可能会帮助你:

它被称为Print.js http://printjs.crabbly.com/

首先包含

<script src="print.js"></script>
<link rel="stylesheet" type="text/css" href="print.css">

它的基本用法是调用printJS()只需传入 PDF 文档 url:printJS('docs/PrintJS.pdf')

我所做的就是这样,如果 PDF 文档太大,这也会显示“正在加载...”。

<button type="button" onclick="printJS({printable:'docs/xx_large_printjs.pdf', type:'pdf', showModal:true})">
    Print PDF with Message
</button>

但请记住:

Firefox 目前不允许使用 iframe 打印 PDF 文档。有一个开放的bug https://bugzilla.mozilla.org/show_bug.cgi?id=911444在 Mozilla 的网站上有关于这个的内容。使用 Firefox 时,Print.js 会在新选项卡中打开 PDF 文件。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何使用 JavaScript 将 pdf 文件直接发送到打印机? 的相关文章

随机推荐