7

我正在尝试在 Ubuntu 16.04 上使用 node-html-pdf ( https://github.com/marcbachmann/node-html-pdf ) 节点模块,并从给定的名片示例开始。

不幸的是,我无法生成此 PDF。

首先,我在本地安装了模块。

然后我将 businesscard.html 和 image.png 复制到我的项目中,并尝试执行以下代码,其中没有任何更改:

var fs = require('fs');
var pdf = require('html-pdf');
var html = fs.readFileSync('./test/businesscard.html', 'utf8');
var options = { format: 'Letter' };

pdf.create(html, options).toFile('./businesscard.pdf', function(err, res) {
  if (err) return console.log(err);
  console.log(res); // { filename: '/app/businesscard.pdf' }
});

结果是一个带有 2 个黑页(好的)的 PDF,文本正确,但格式要大得多,字体不正确,我无法在其中获取图像。

看起来像一些基本配置,缺少路径或类似...

有什么线索吗?

4

2 回答 2

1

一种解决方案:尝试安装 pdf 中列出的字体...

于 2017-08-05T05:36:47.373 回答
1

我的猜测是,如果您.html使用浏览器打开该文件,您将获得相同(或相似)的输出。

可能指向图像 src 的链接已损坏并且未导入字体。

也许您可以尝试制作自己的基本 html,然后将其解析为 pdf,您应该期望.pdf类似于.html

于 2017-07-25T19:53:14.533 回答