我有一个HTML页面,通过wkhtmltopdf转换为PDF。我的本地机器,阿拉伯字体,PDF转换为新的自定义字体,一切都很好用。我使用@ font-face,本地存储的字体和utf-8编码。没问题。
但是在服务器上,不仅(1)阿拉伯字符变成了黑盒子, 但是(2)甚至不那么特别的英文字体(如Georgia和Impact)也停止工作了。 PDF以简单的sans-serif呈现。也就是说,如果它渲染的话。有时它甚至不产生输出。我在服务器的CSS上添加了@ font-face规则,但wkhtmltopdf似乎没有接受它们。我知道这些字体和路径在服务器上很好,因为HTML页面使用相同的CSS样式表并且呈现完美。
如果我做简单的纯文本没有任何奇怪的字体,wkhtmltopdf工作正常。
有什么想法吗?这与在服务器上有关吗?我的本地计算机有Windows 7,服务器正在运行Linux。
答案 0 :(得分:1)
问题解决了。我确实需要升级我的托管计划,以便我可以使用X11运行wkhtmltopdf静态二进制文件。虽然Linux机器上只有一些Nimbus字体,但是通过添加字体文件和使用@ font-face css规则,阿拉伯语和其他字体对我来说都很好。
附加说明:为了使用自定义阿拉伯字体文件正确呈现阿拉伯文字,我使用FontSquirrel生成了所需的字体文件和css规则,在“专家”渲染选项下使用“无子集”。