有没有办法在PhantomJS
打印页面。我想将我的页面传递给PDF打印机(PDFCreator
)以获得一个好看的PDF页面(查看我的问题here )
我正在使用以下代码,但它不起作用
var page = require('webpage').create(),
address, output, size;
var input = phantom.args[0];
page.open(input, function (status) {
page.evaluate(function () {
window.print();
});
phantom.exit();
});
答案 0 :(得分:2)
也许这会有所帮助:您需要在rasterize.js
中设置一个超时超时,以便在执行page.render(output)
之前呈现整个文档
此外,您提供的脚本与rasterize.js
的脚本大不相同,但不起作用。
答案 1 :(得分:1)
看起来像PhantomJS has examples included on its website。其中之一rasterize.js表示它显示了如何将HTML输出为PDF。我没有尝试过,但也许这可能会导致解决方案。
答案 2 :(得分:0)
我发现了这个要点:https://gist.github.com/boriscy/a0ac26c54f30296949df 看起来很关键:
page.onLoadFinished = function() {
page.render(pdf);
phantom.exit();
}
我看到的其他示例都在等待,希望等到等待结束时文档已完成。对我来说这似乎并不好,因为较大的文档会失败,而较小的文档会比需要的更慢。