我正在尝试使用节点包html-pdf
创建一个PDF文件我可以在我的命令行(在ubuntu上)使它工作但是在我的程序中它会抛出以下错误:
events.js:72
throw er; // Unhandled 'error' event
^
Error: write EPIPE
at errnoException (net.js:901:11)
at Object.afterWrite (net.js:718:19)
这是我的代码:
var html = '<b> Hello world </b>';
pdf.create(html).toStream(function(err, stream){
stream.pipe(fs.createWriteStream('./foo.pdf'));
});
更新
我也试过这段代码:
var options = {
phantomPath: __dirname + "/../node_modules/phantomjs/bin/phantomjs",
timeout: 30000,
height: "1720px"
};
pdf.create(html, options).toFile('./foo.pdf', callback);
的package.json:
{
"name": "application-name",
"version": "0.0.1",
"dependencies": {
"body-parser": "~1.12.4",
"ejs": "~2.3.1",
"express": "~4.12.2",
"fs": "0.0.2",
"handbrake-js": "~2.0.5",
"html-pdf": "^1.2.1",
"html5-media-converter": "0.0.2",
"jwt-simple": "~0.3.0",
"multer": "~0.1.8",
"phantom": "^0.7.2",
"phantomjs": "^1.9.17",
"socket.io-stream": "~0.8.0",
"xlsx": "^0.8.0"
}
}
请注意:
我已安装phantomjs
我已在全局和本地安装了节点模块html-pdf
,我尝试了除toStream
之外的其他功能,例如toFile
。
它们似乎都不起作用。
请帮忙!