我正在使用“html5-to-pdf”模块将HTML5页面转换为PDF.Below是我用来指定输入和输出文件的代码片段。
<md-autocomplete md-selected-item="selectedMovie"
md-search-text="searchText"
md-selected-item-change="selectedItemChange(movie)"
md-items="movie in searchMovie(searchText)"
md-item-text="movie.title"
md-min-length="1"
placeholder="Search Movies">
<md-item-template>
<span md-highlight-text="searchText" md-highlight-flags="^i">
{{movie.title}}
</span>
</md-item-template>
<md-not-found>
No Movies matching were found.
</md-not-found>
执行此代码时,我遇到异常:
var html5pdf = require("html5-to-pdf");
var fs = require("fs");
fs.createReadStream("/Vineet/POC/HTML_Inputs/TestSample.html")
.pipe(html5pdf())
.pipe(fs.createWriteStream("/Vineet/POC/PDF_Outputs/Output.pdf"));
由于生成的PDF格式为0字节且无法打开。任何人都可以帮我解决此问题。
答案 0 :(得分:0)
此软件包需要在您的计算机上安装PhatomJS。 Phantomjs呈现页面并将其保存为PDF。阅读html5-to-pdf 选项参数
您应该使用html-pdf包。
var pdf = require('html-pdf'),
fs = require('fs');
pdf.create(fs.readFileSync('./Vineet/POC/HTML_Inputs/TestSample.html', 'utf8'), { format: 'Letter' }).toFile('./Vineet/POC/PDF_Outputs/Output.pdf', function(err, res) {
if (err) return console.log(err);
console.log(res);
});