2

我有一个项目,我需要打印用户所在的 HTML 页面,以及多个 PDF 文件(多个提示都可以)

在 Google 和 Stackoverflow 上四处寻找之后,我发现使用 JavaScript 打印多个 PDF 文件很接近,但不太有效。

下面的代码可以很好地打印 HTML 页面,并为 PDF 创建打印提示,但 PDF 打印提示是针对空白页的。

我已经检查了示例地址三次,罚款肯定在http://www.mydomain.co.nz/wp-content/uploads/Golden-China1.pdf

有人发现我做错了什么吗?

function PrintAll(file1, file2, file3) {
    window.print();
    var pages = [file1, file2, file3];
    for (var i = 0; i < pages.length; i++) {
        if (pages[i] != undefined) {
            var oWindow = window.open(pages[i], "print");
            oWindow.print();
            oWindow.close();
        }
    }
}

$('.print-btn').click(function() {
    PrintAll('/wp-content/uploads/Golden-China1.pdf');
});
4

1 回答 1

6

我测试了一些代码,我的代码遇到的问题是时间加载,添加了延迟,所以我让 PDF 完成加载,然后发送打印命令:

<!DOCTYPE html>
<html>
<body>
<script>
var pages = ["P1.pdf", "P2.pdf", "P3.pdf"];
var oWindow=new Array();
function PrintAll(){
    for (var i = 0; i < pages.length; i++) {
        oWindow[i].print();
        oWindow[i].close();

    }
}
    function OpenAll() {
    for (var i = 0; i < pages.length; i++) {
        oWindow[i] = window.open(pages[i]);
    }
    setTimeout("PrintAll()", 5000);
    }
    OpenAll();
</script>
</body>
</html>
于 2013-03-02T08:54:08.867 回答