0

我已经安装了 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
        ));
4

1 回答 1

0

有两个问题:1)我应该使用 getOutputFromHtml() 而不是 getOutput() 2)v0.11 中有一些错误,记录在这里:https ://github.com/pdfkit/pdfkit/issues/180

于 2013-10-02T22:46:57.990 回答