我使用PhantomJS桥接NodeJS。 我想呈现595x842像素大小的PDF文件。
var phantom = require('phantom');
phantom.create(function(ph) {
ph.createPage(function(page) {
page.set('paperSize', {width: '595px', height: '842px', border: '0px' });
page.open("http://localhost:3000", function(status) {
if (status !== 'success') {
console.log('Unable to access the network!');
} else {
page.render('filename.pdf');
}
ph.exit();
});
});
});
但是,到最后我得到了235x331px的PDF文件。我不明白为什么。也许有人可以帮助解释我如何呈现必要的文件大小?
答案 0 :(得分:4)
回顾repo tutorial我发现了这个:
无法直接获取/设置属性,而是使用page.get('version', callback)或page.set('viewportSize',{width:640,height:480})等。 可以通过在键中包含点来访问嵌套对象,例如 page.set('settings.loadImages',false)
所以我尝试了以下代码:
var phantom = require('phantom');
phantom.create(function(ph) {
ph.createPage(function(page) {
page.set('viewportSize', { width : 595, height : 842});
page.open("http://localhost:3000", function(status) {
if (status !== 'success') {
console.log('Unable to access the network!');
} else {
page.render('filename.pdf');
}
ph.exit();
});
});
});
希望这对你有用,就像它对我一样。