Pandoc和NodeJS:如何以文件Blob形式获得结果?

时间:2019-01-16 10:28:45

标签: javascript node.js pandoc

我正在尝试使用pandoc在NodeJS Web应用程序中将一些HTML标记转换为PDF。我已经在运行我的应用程序的服务器上安装了pandoc。我正在使用node-pandoc尝试实现这一目标。这是我正在使用的代码:

return new Promise<string> ((resolve, reject) => {
  nodePandoc(content, '-f html -t pdf', (error, result) => {
    resolve(result);
    if (error) {
      reject(error);
    }
  });
});

如果我像在此所做的那样省略-o标志,则应该从node-pandoc的文档中获取转换结果。我想做的是获取结果并将其转换为文件blob,以便我可以将其发送到客户端。我该怎么做?

1 个答案:

答案 0 :(得分:0)

我认为该错误表明类似Unknown writer: pdf,对吗?

  

如果我省略-o标志,我应该在控制台上获得转换结果

这实际上仅适用于非二进制输出格式。因此,PDF是不可能的。您需要使用-o out.pdf。然后,使用节点的fs再次读取该文件,并将二进制文件发送到客户端,或将其移动到某个静态文件服务器。

顺便说一句。您还需要安装LaTeX。参见http://pandoc.org/MANUAL.html#creating-a-pdf