我正在使用phantomjs将html转换为pdf。 html由我生成并托管在s3上。以下是代码段:
var markSheetinHtml = require('webpage').create();
var system = require('system');
var fs = require('fs') ;
//check for number of supplied parameters
if (system.args.length < 5) {
console.log('Usage: phantomjs index.js <web page URL> <ouptut path/filename> <width> <height>');
phantom.exit();
}
markSheetinHtml.paperSize = {
width: system.args[3],
height: system.args[4],
margin: {
top: '20px',
left: '10px'
}
} ;
markSheetinHtml.open(system.args[1], function (status) {
console.log("Status: " + status);
if (status === "success") {
//console.log(system.args[2]) ;
markSheetinHtml.render(system.args[2]);
console.log("Finished") ;
}
else {
console.log("Failed")
}
phantom.exit();
});
这是命令:
phantomjs index.js <html-url> <local-path> <width-of-pdf> <height-of-pdf>
我在ec2上生成的pdf与我的本地机器相比有轻微的扭曲。我最初认为这可能是版本问题,但本地和服务器都有 2.1.1
不确定导致扭曲的原因。有趣的是,我尝试了几个流行的网页,如yelp,谷歌和他们加载得很好。但我仍然不应该为我的网页获取变体。关于如何修复或调试这个的任何想法?