Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/471.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 在浏览器中需要一个打印按钮来打印PDF文件_Javascript_Pdf_Browser_Printing - Fatal编程技术网

Javascript 在浏览器中需要一个打印按钮来打印PDF文件

Javascript 在浏览器中需要一个打印按钮来打印PDF文件,javascript,pdf,browser,printing,Javascript,Pdf,Browser,Printing,我需要在HTML中设置一个打印按钮来打印某个PDF文件,希望不必先下载该文件。我尝试了一些方法,但有些方法只适用于IE,有些方法需要将文件作为嵌入式对象下载,这也是不可接受的。在PDF中嵌入javascript听起来是最有希望的,但如果可能的话,出于其他原因,我宁愿避免这样做 还有其他想法吗?不幸的是,这真的无法实现。。。任何浏览器都不会天真地处理PDF,因此无法使用浏览器的“打印”对话框打印PDF 你的用户将不得不下载pdf并用他们使用的任何pdf软件打印它(即使它只是浏览器的插件),除非你将

我需要在HTML中设置一个打印按钮来打印某个PDF文件,希望不必先下载该文件。我尝试了一些方法,但有些方法只适用于IE,有些方法需要将文件作为嵌入式对象下载,这也是不可接受的。在PDF中嵌入javascript听起来是最有希望的,但如果可能的话,出于其他原因,我宁愿避免这样做


还有其他想法吗?

不幸的是,这真的无法实现。。。任何浏览器都不会天真地处理PDF,因此无法使用浏览器的“打印”对话框打印PDF


你的用户将不得不下载pdf并用他们使用的任何pdf软件打印它(即使它只是浏览器的插件),除非你将它转换成无聊的旧html或图像或其他东西。

如果用户不先下载它,你就无法打印

打印机位于连接的用户端。PDF首先位于服务器端


因此,PDF必须在打印机知道要在纸上使用哪种墨水之前,通过网络传输到用户端。换句话说,它必须被下载。

我认为最好的办法是将PDF下载到
iframe
元素中,并建议用户单击其中的“打印”按钮。据我所知,没有比这更紧密的整合是可能的。无法通过JavaScript访问PDF viewer的打印按钮。

因此,场景如下:单击链接,会出现打印提示框?这两者之间绝对没有什么关系?是的,一个链接或一个按钮会出现在一个“普通页面”上,上面有很多其他信息,但只是将此打印按钮/链接作为一个选项提供给用户。如果您的目标是让用户无法保存PDF,请立即放弃。即使你以某种方式强迫他们打印,“打印机”实际上也可以是一个在本地磁盘上写入PDF的程序。不,保存是可以的——主要目标是让用户能够快速访问打印此PDF并尽可能实现自动化。我理解这一点,但不想在用户按下打印按钮之前下载文件,因为他可能不想打印它。在pdf中嵌入javascript是可行的,至少对许多机器是这样(我听说Mac在这方面有一些问题——有人知道了吗?)。这可能是我唯一现实的选择。