如何将多个URL呈现为单个PDF

我试图打开一系列URL来呈现输出,然后使用PhantomJS将其合并为一个PDF,但是我找不到有关如何执行此操作的任何文档。 我只是使用试验和错误,但没有得到任何地方 - 希望有人知道如何做到这一点。

我并没有完全放在PhantomJS上,所以如果你知道一个更好的命令行,节点或者JAVA工具,那会更好,我都是耳朵(或者在这种情况下是眼睛)。

这里是我拥有的呈现单个页面的代码。 我尝试复制打开/渲染,但它总是覆盖PDF而不是附加到它。

var page = require('webpage').create(),
    system = require('system'),
    fs = require('fs'),
    pages = {
        page1: 'http://localhost/test1.html',
        page2: 'http://localhost/test2.html'
    };

page.paperSize = { 
    format: 'A4',
    orientation: 'portrait',
};

page.settings.dpi = "96";

// this renders a single page and overwrites the existing PDF or creates a new one
page.open('pages.page1', function() {
    setTimeout(function() {
        page.render('capture.pdf');
        phantom.exit();
    }, 5000);
});

PhantomJS将一个网页呈现为一个PDF文件,因此如果您可以将多个网址合并为一个html文件,则可以在PhantomJS中打开它并制作PDF。

但是制作几个PDF文件比较简单,然后在脚本末尾将它们合并为一个类似pdfkt的文件,从PhantomJS子模块启动合并命令

链接地址: http://www.djcxy.com/p/46963.html

上一篇: How can I render multiple URL's into a single PDF

下一篇: Merge several pdf files