使用 JavaScript 打印 PDF
print pdf with javascript
我知道有很多关于这个问题的问题,但我测试了所有内容,并没有解决我的问题。我有以下代码:
var datauri = //PDF in base64
popup = window.open("", "Your PDF","width=1024,height=768,resizable=yes,scrollbars=yes,toolbar=no,location=no,directories=no,status=no,menubar=no,copyhistory=no,id='printPDF'");
popup.document.location.href = datauri;//show pdf in other page
popup.print();//print pdf
但是,当我打印 PDF 时,页面显示为空,但是当我关闭打印窗口,显示 PDF 时,我尝试了很多东西,但没有任何效果,请帮我:(
哦
,等一下,我想我看到了可能出错的地方。
datauri
变量实际上是弹出窗口的 URL。但是你用错了。
首先,看一下文档。
var windowObjectReference = window.open(strUrl, strWindowName[, strWindowFeatures]);
如您所见,第一个参数是 strUrl
,新弹出窗口的 URL。你给出一个空洞的论点,这本来就不好。
发生的事情,可能是这样的:
- 弹出窗口随即创建。
- 数据 URL 将传递到弹出窗口。PDF 开始在后台加载。
- 出现打印对话框,查找空文档(PDF 尚未加载(,从而打印空页面。
- PDF 完成加载,此时您可以打印它(在您关闭第一个弹出窗口后(。
因此,与其这样做:
popup.document.location.href = datauri;
您应该将datauri
作为第一个参数传递给 window.open
,这是代码片段中的空字符串。
我希望这有所帮助。
相关文章:
- 显示用于网站打印的PDF
- PDF.js - 一次打印多个文档
- PDF.js在打印时插入空白页
- 使用 JavaScript 打印 PDF
- 阻止 PDF 自动下载,并改为自动打印
- 打开打印窗口处于活动状态的 PDF 链接
- 通过 Javascript 打印在 IFrame 中加载的 PDF
- IE9 在 iframe 中打印 PDF 时出现“无效调用对象”
- 打印和下载受保护的网络 PDF 查看器
- 如何将页面打印为仅具有 x y 坐标的 PDF
- 如何从 InAppBrowser (PhoneGap) 打印 PDF 数据
- 我是否可以动态更改带有数字的图像,然后将其打印为 PDF
- 在不打开打印对话框的情况下打印 pdf 文档
- 将打印和下载受保护的 PDF 查看器添加到网站
- 在 C# 中查看 PDF 文件并阻止保存和打印选项
- 使用即时生成的PDF打印Iframe IE 11
- 如何将两个pdf打印与Prawn(rails 3)合并
- 在pdf打印中使用glyphicon或Font-Awesome
- 在java中以PDF打印
- 是否可以使用javascript在字节数组中获得网站的PDF打印版本