1

在我的带有 xamp 本地服务器的 Windows 上,我按照html 步骤 1 和 2 (wkhtmltopdf http://www.test.com test.pdf) 中的 pdf 生成器进行操作,但步骤 3

3. In php you should execute the tool using shell_exec:

shell_exec("/usr/local/bin/wkhtmltopdf-i386 http://test.com test.pdf");
//for Linux 32 bits operating system
//for Linux 64 bits operating system use wkhtmltopdf-amd64
//for windows just put the path of the exe file.
$allfile = file_get_contents("test.pdf");
header('Content-Type: application/pdf');
header('Content-Length: '.strlen($allfile));
header('Content-Disposition: inline; filename="test.pdf"');
header('Cache-Control: private, max-age=0, must-revalidate');
header('Pragma: public');
ini_set('zlib.output_compression','0');

不做任何事情... :(

我安装在 e 驱动器上并使用:

exec("e:\wkhtmltopdf\wkhtmltopdf.exe http://www.google.com/ test.pdf");

实际上,我正确创建了 PDF,但没有将输出发送到浏览器..知道我错过了什么......?

4

1 回答 1

0

我猜,但问题可能是文件位置。file_get_contents 是否真的找到了文件?

我不太确定在执行期间生成 pdf 文件的位置,尝试对输出 pdf 位置和 file_get_contents 位置使用完整路径,默认情况下它们可能不正确。Maby 甚至以某种方式检查文件是否存在以及它们都使用什么文件夹(我不记得如何在 PHP 中执行此操作 :))

于 2012-08-09T13:53:21.583 回答