【发布时间】:2012-05-06 22:21:55
【问题描述】:
我一直在尝试将 html 页面转换为 PDF,但没有成功,我尝试使用 wkhtmltopdf (http://code.google.com/p/wkhtmltopdf/) 和同一开发人员提供的 PHP 类(http://code.google.com/p/wkhtmltopdf/wiki/IntegrationWithPhp) 尽管以下命令在终端中正确执行:
wkhtmltopdf http:/www.googl.com test.pdf
由于以下错误,我无法在 PHP 中执行命令: 无法连接到 X 服务器。
任何人都可以为我提供分步教程,以便能够将 html/css 转换为 PDF 文件,无论是使用 wkhtmltopdf 还是任何其他体面的解决方案。
提前致谢
这是我用过的课程http://code.google.com/p/wkhtmltopdf/wiki/IntegrationWithPhp
下面是我的代码
$html = file_get_contents("test.html");
$pdf = new WKPDF();
$pdf->set_html($html);
$pdf->render();
$pdf->output(WKPDF::$PDF_EMBEDDED,'sample.pdf');
以下是错误:
Fatal error: Uncaught exception 'Exception' with message 'WKPDF didn't return any data.
/usr/bin/wkhtmltopdf: /opt/lampp/lib/libxml2.so.2: no version information available
(required by /usr/lib/libgstreamer-0.10.so.0) No protocol specified wkhtmltopdf: cannot
connect to X server :0 </pre>' in /var/www/c4/components/com_wkhtmltopdf
/wkhtmltopdf.class.php:211 Stack trace: #0 /var/www/c4/components/com_wkhtmltopdf
/wkhtmltopdf.php(68): WKPDF->render() #1 /var/www/c4/components/com_wkhtmltopdf
/wkhtmltopdf.php(50): html2pdf() #2 /var/www/c4/index2.php(114): require_once('/var/ww...')
#3 {main} thrown in /var/www/c4/components/com_wkhtmltopdf/wkhtmltopdf.class.php on line 211
【问题讨论】:
-
看看stackoverflow.com/questions/391005/… 并尝试搜索功能。 ;)
-
既然你问得这么宽泛,而且你是 TIA 类型的人:请使用副本,K THX TIA! - 一步一步地浏览那里的答案。
-
Paul,您发送的主题与将我引导至 wkhmltopdf 库的主题相同,在尝试了上述步骤后,我决定寻求帮助
-
请贴出您尝试过的代码(PHP)。如果没有看到您的代码,我们将无能为力。顺便说一句,“无法连接到 X 服务器”错误可能是因为运行 PHP 脚本的用户没有这样做的权限。你的环境是什么? X 是否正在运行,或者这是您远程连接的无头服务器?这是托管的还是内部的(即,您对盒子有完全的控制权)?
-
daiscog:我已经添加了代码,是的,我确实可以完全控制服务器。谢谢
标签: php linux pdf pdf-generation wkhtmltopdf