javascript - 如何使用 nodeJs 将 jsreport 渲染保存到文件?

标签 javascript node.js jsreport

我是 node.js 和 jsreport 的新手,但我想做的是使用 node.js 在内存中创建一个 pdf,然后将其保存到磁盘。我需要它是独立的,因为它将作为 AWS Lambda 函数运行。

var fs = require('fs');
require("jsreport").render("<h1>Hi there!</h1>").then(function(out) {
    //pipe pdf with "Hi there!"
    fs.writeFile('C:\\helloworld.pdf', out, function (err) {
        if (err) return console.log(err);
        console.log('Hello World > helloworld.txt');
    });
fs.close();
    console.log("The End");
});

虽然这会运行,但输出的 pdf 不会在 Adob​​e Reader 中打开,所以我假设文件输出不是有效的 PDF。

这需要 npm install jsreport

最佳答案

从我从 jsreport 网站上收集到的信息(虽然我无法验证,因为他们网站上的所有示例都不适合我),看起来 out 没有呈现(PDF) 数据,而是一个包含流的对象。

这让我相信这可能有效:

require("jsreport").render("<h1>Hi there!</h1>").then(function(out) {
  out.result.pipe(fs.createWriteStream('c:\\helloworld.pdf'));
});

关于javascript - 如何使用 nodeJs 将 jsreport 渲染保存到文件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29437832/

相关文章:

javascript - 从 Seuquelize 返回然后 JavaScript 中的代码块

c# - JsReport Recipe ChromePdf 页码

excel - jsreport excel xml属性格式ISO-8601日期为自定义 `d-mmm-yy`

javascript - 通过input type = file上传文件如何打开windows对话框窗口

javascript - Greasemonkey XHR 未显示在 firefox 网络开发工具中

javascript - 使用 NODE.JS 解析 JSON url 并使用 SOCKET.IO 保持最新状态

node.js - Json 架构 : Validating Arrays

javascript - 动态生成 div 时 div 排序不起作用

javascript - 如何将 npm 包 selenium-standalone 与 Nightmare.js 一起使用而不是下载 selenium jar?

node.js - AspNetCore NodeServices 抛出 NodeInitationException