我正在尝试将wkhtmltopdf放到虚拟盒的ubuntu 12.04 64位服务器上。到目前为止没有运气。 存储库中的软件包希望运行xserver和静态版本:
wkhtmltopdf google.com tesss.pdf
Loading pages (1/6)
QSslSocket: cannot resolve SSLv2_client_method ] 10%
QSslSocket: cannot resolve SSLv2_server_method
Counting pages (2/6)
Resolving links (4/6)
Loading headers and footers (5/6)
Printing pages (6/6)
QPixmap: Cannot create a QPixmap when no GUI is being used===] Page 1 of 1
QPixmap: Cannot create a QPixmap when no GUI is being used
QPixmap: Cannot create a QPixmap when no GUI is being used
QPixmap: Cannot create a QPixmap when no GUI is being used
QPixmap: Cannot create a QPixmap when no GUI is being used
QPixmap: Cannot create a QPixmap when no GUI is being used
QPixmap: Cannot create a QPixmap when no GUI is being used
Segmentation fault
任何想法我怎么能接近这个?
答案 0 :(得分:13)
http://code.google.com/p/wkhtmltopdf/issues/detail?id=730
基本上,它在一年前得到修复,但仍未发布。真是一团糟:(
尝试使用0.10.0_rc2 version代替,这对我来说非常合适
答案 1 :(得分:5)
QPixmap错误不会导致分段错误。实际上,添加--disable-javascript
选项可以解决问题。您仍然会收到警告,但PDF正确生成。 HTH。
答案 2 :(得分:1)
我知道这是一个老问题,但对于那些仍然遇到此问题的人,请尝试升级到最新版本(撰写本文时为 0.12.6)。在最近的几个版本中,这些问题中的很多都得到了修复。
之后,尝试像其他人提到的那样在您的机器上调整您的 ulimit
。
最后,如果您要在页眉或页脚中显示当前页数和总页数,请参阅 this answer 以获得好的提示和解决方案。
答案 3 :(得分:0)
二进制使用:wkhtmltopdf 0.11.0 rc1 linux i386
我在转换嵌入了Google Maps JS API的网页时看到了细分错误。在这些情况下,生成具有0字节大小的输出文件。没有找到任何解决办法让这个版本通过wkhtmltopdf的不同命令行参数运行。
最后切换到Google Maps Static API以防止繁重的JS工作,这似乎导致了问题。这只是将地图嵌入为静态图像,如果您提供scale = 2作为选项,则在打印时看起来非常好。
答案 4 :(得分:0)
我有一个类似的问题(segfault),发现我从apache执行wkhtmltopdf时设置了ulimit -v(虚拟内存)限制。使用相同的命令时,从命令行运行正常。
我能够通过在ulimit之前添加命令来适应它:" ulimit -v 1073741824; wkhtmltopdf --page-size Letter ...."