【发布时间】:2023-04-10 13:20:01
【问题描述】:
如何使用 JavaScript 将 PDF 文件直接发送到打印机?
我在一个论坛找到了两个答案:
<embed src="vehinvc.pdf" id = "Pdf1" name="Pdf1" hidden>
<a onClick="document.getElementById('Pdf1').printWithDialog()" style="cursor:hand;">Print file</a>
和
<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 上运行。
有什么解决办法吗?
【问题讨论】:
-
这个问题是关于 Adobe Reader 的插件 API 的吗?
-
我不认为这与 adobe reader 的插件有关。因为我在所有浏览器中都有相同版本的 adobe reader。但这段 JavaScript 代码仍然不能在 Internet Explorer 中工作。
-
@Jignesh Manek:我不相信你会为所有浏览器找到解决方案。您可以期待的最好的结果是打开打印对话框,老实说,这应该已经足够好了。作为用户,我最不想做的就是让我的打印机开始打印一些东西,而没有机会检查我的设置、纸张尺寸、托盘等。想想看……甚至是你的大多数各种应用程序、文字处理器、电子表格等也只需调用打印对话框。
-
@Sparky672:是的,你是真的。但使用此代码,Firefox 甚至不显示打印对话框..
-
@Jignesh Manek:那你到底想要什么?是否可以只在所有浏览器中打开打印对话框?此线程有更多信息:stackoverflow.com/questions/687675/…
标签: javascript html pdf printing