我已经安装了wkhtmltopdf 0.11和KNP \ Snappy,以便在我的Symfony2项目中尝试从HTML生成PDF。我正在运行CentOS 6 x64。
Wkhtmltopdf抛出以下内容:
QPixmap: Cannot create a QPixmap when no GUI is being used
Segmentation fault
除非有活动的X服务器,否则当我尝试在命令行上生成时,我指定了--use-xserver。
这会转换为以下PHP错误:
RuntimeException: The exit status code '1' says something went wrong:\nstderr: \"wkhtmltopdf: cannot connect to X server \n\"\nstdout: \"\"\ncommand: \/usr\/local\/bin\/wkhtmltopdf --lowquality --use-xserver...
然而,当我启动X服务器然后用PHP运行wkhtmltopdf时,无论是否使用-use-xserver我都会得到相同的错误,所以我认为PHP无法找到X服务器。
如何让PHP使用X服务器,以便wkhtmltopdf可以从PHP / Symfony2中生成PDF?
我的代码:
use Knp\Snappy\Pdf;
$snappy = new Pdf('/usr/local/bin/wkhtmltopdf');
return $snappy->getOutput($html, array(
'use-xserver' => true
));
答案 0 :(得分:0)
有两个问题: 1)我应该使用getOutputFromHtml()而不是getOutput() 2)v0.11中存在一些错误,在此处记录:https://github.com/pdfkit/pdfkit/issues/180