wkhtmltopdf上的平方字符问题

时间:2011-01-07 16:33:31

标签: encoding fonts centos pdf-generation wkhtmltopdf

我在Centos 5.5上安装了wkhtmltopdf。 (因为有图书馆问题,已经过了4天)。 它现在部分工作了。部分原因是因为,所有由wkhtmltopdf创建的pdf都包含正方形而不是文本?

我该怎么办?我搜索了谷歌,但我找不到任何东西。

感谢您的帮助。

7 个答案:

答案 0 :(得分:81)

当我遇到黑色方块问题时,我可以通过安装 urw-fonts 包安装X11来解决它。

答案 1 :(得分:18)

我能够使用以下资源解决此问题:

http://code.google.com/p/wkhtmltopdf/wiki/static

简而言之,您可能不需要安装整个x11库及其所有依赖项。 只需安装urw-fonts就可以了解。上述资源甚至提到 CentOS 有这个问题。

在您的服务器上运行此命令:

sudo yum install urw-fonts libXext openssl-devel

答案 2 :(得分:2)

我正在使用带有wkhtmltox 12.4的CentOS 7,并发现迄今为止没有任何建议在输出PDF中修复了我的块文本。

对我来说,最终的解决方案是安装dejavu-sans-fonts。

答案 3 :(得分:0)

我猜这是一个字体问题,或者可能是一个编码问题。

您的HTML使用什么编码? (这更容易检查,所以我先列出它)如果它是一个时髦的东西,你可能需要翻译它,然后再将其提供给wkhtmltopdf。在这种情况下,报告错误也可能有所帮助。

wkhtmltopdf知道如何找到你的字体吗?如果wkhtmltopdf找不到你的系统的字体,那么它就会出现严重的问题并且可能会回到“未知字符”字符(空框)上。

此外,如果您的文本包含所请求字体中实际不存在的字符,您将获得未知字符字符。如果您应该使用“Courier New”并且文本都是阿拉伯语...字体信使不包含这些字符。浏览器具有各种可以使用的后备位置,但PDF渲染器将尽其所能地执行它所说的内容。在这种情况下,这是未知的角色。

简单测试:wkhtmltopdf可以在您的系统上成功将“hello world.html”转换为PDF吗?

<html><body>Hello World</body></html>

如果有效,你需要弄清楚“脑死”和“真正的html”之间的界限是什么。

答案 4 :(得分:0)

我认为您需要尝试安装X11软件包,wkhtmltopdf将其用于字体等。 您描述的症状正是程序对丢失的软件包所能做的。

答案 5 :(得分:0)

独立的wkhtmltopdf不需要x-server - 尝试一下,看看是否可以缓解这个问题。我在没有图形/ x服务器的CentOS上工作,它的工作非常好。

答案 6 :(得分:0)

如果有人在Alpine上遇到相同的问题。这为我解决了问题:

apk --update add ttf-dejavu