Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/378.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_Html_Pdf_Iframe - Fatal编程技术网

在所有流行浏览器中使用Javascript打印PDF文件

在所有流行浏览器中使用Javascript打印PDF文件,javascript,html,pdf,iframe,Javascript,Html,Pdf,Iframe,如何在所有流行浏览器中使用Javascript打印PDF文件? 我对这个问题做了相当广泛的研究,没有真正的解决办法 第一种方法是使用iFrame,但是,iFrame不是一种好的实践。代码如下所示 function printIframePdf(){ window.frames["printf"].focus(); try { window.frames["printf"].print(); } catch(e){ window.pr

如何在所有流行浏览器中使用Javascript打印PDF文件? 我对这个问题做了相当广泛的研究,没有真正的解决办法

第一种方法是使用iFrame,但是,iFrame不是一种好的实践。代码如下所示

function printIframePdf(){
    window.frames["printf"].focus();
    try {
        window.frames["printf"].print();
    }
    catch(e){
        window.print();
        console.log(e);
    }
}
function printObjectPdf() {
    document.getElementById('idPdf').Print();
}
第二种方法是使用
标记来显示pdf,并使用
document.getElementById(pdfID).print()
来打印。但是,Chrome不支持此功能。代码如下所示

function printIframePdf(){
    window.frames["printf"].focus();
    try {
        window.frames["printf"].print();
    }
    catch(e){
        window.print();
        console.log(e);
    }
}
function printObjectPdf() {
    document.getElementById('idPdf').Print();
}

有什么好的解决办法吗

>你考虑PDF吗?JS?


这是基于web标准的平台。

谢谢,Matteo。这是一个非常沉重的解决方案。有更简单的方法吗?一种方法是强制从web下载PDF,并添加文档级javascript,当它在Acrobat中打开时将执行此.print()-显然这需要用户拥有Acrobat,没有JS supportPDF.JS的其他PDF查看器不是很好,即使客户端没有Acrobat或任何程序来打开PDF。这可能是在旧计算机上出现的(因为处理JS的性能)