css - 服务器上的 wkhtmltopdf unicode 和自定义字体

标签 css pdf unicode fonts wkhtmltopdf

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

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

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

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

最佳答案

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

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

关于css - 服务器上的 wkhtmltopdf unicode 和自定义字体,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12352564/

相关文章:

javascript - 4 个按钮切换 4 个不同的 div,使用 jQuery 包装高度转换

css - 在循环中的图像上设置一个类

php - 使用 knp snappy bundle 生成 pdf - symfony2

PDFsharp 换行符

css - DOMPDF - 如何将 PDF 呈现为完全没有边距?

python - 如何将unicode字符串转换为对应的ascii字符串?

python - python3中如何将字节控制台转换为字符串?

jquery - CSS Dropdown类问题+需要Jquery

javascript - 从 NodeJS 提供静态文件时出现奇怪的 mime 类型覆盖问题

java - 询问Eclipse的编码