3

我有一个通过 wkhtmltopdf 转换为 PDF 的 HTML 页面。一切都在我的本地机器上运行良好,阿拉伯字体,PDF 转换到它们,新的自定义字体。我使用了@font-face、本地存储的字体和 utf-8 编码。没问题。

但是在服务器上,不仅 (1) 阿拉伯字符变成黑框,而且 (2) 甚至不那么特别的英文字体(如 Georgia 和 Impact)都停止工作。PDF 以纯无衬线字体呈现。也就是说,如果它完全渲染。有时它甚至不产生输出。我在服务器的 CSS 上添加了@font-face 规则,但 wkhtmltopdf 似乎没有选择它们。我知道这些字体和路径在服务器上很好,因为 HTML 页面使用相同的 CSS 样式表并且呈现完美。

如果我做没有任何奇怪字体的简单纯文本,wkhtmltopdf 工作正常。

有任何想法吗?这与在服务器上有关吗?我的本地机器有 Windows 7,服务器运行的是 Linux。

4

1 回答 1

1

问题解决了。我确实需要升级我的托管计划,以便可以使用 X11 运行 wkhtmltopdf 静态二进制文件。尽管 Linux 机器上只有一些 Nimbus 字体,但通过添加字体文件和使用 @font-face css 规则,阿拉伯语和其他字体对我来说效果很好。

附加说明:为了使用自定义阿拉伯字体文件正确渲染阿拉伯文本,我使用FontSquirrel生成了所需的字体文件和 css 规则,并在“专家”渲染选项下使用“无子集”。

于 2012-09-25T10:16:21.103 回答