3

我正在尝试使用 Snappy 生成 pdf。我已经阅读了https://github.com/KnpLabs/snappy上的文档并尝试了代码。

require_once '/KnpLabs/src/autoload.php';

use Knp\Snappy\Pdf;

$snappy = new Pdf('C:\Program Files (x86)\wkhtmltopdf');

// Display the resulting image in the browser
// by setting the Content-type header to jpg
$snappy = new Pdf('C:\Program Files (x86)\wkhtmltopdf');
header('Content-Type: application/pdf');
header('Content-Disposition: attachment; filename="file.pdf"');
echo $snappy->getOutput('http://localhost/pdfTester/try.php');

当我单击 try.php 上的链接时,会弹出一个打开 pdf 文件的窗口,当我选择打开时,会出现一条消息。

Adobe Reader 无法打开“file.pdf”,因为它不是受支持的文件类型或文件已损坏

顺便说一句,我刚刚获得了一个月大的 php 经验,我已经在搜索相同的主题,但看起来帮不上什么忙。任何帮助表示赞赏。

4

1 回答 1

2
  • 您的路径C:\Program Files (x86)\wkhtmltopdf看起来像是指向一个文件夹而不是二进制文件。如果您的 wkhtmltopdf 安装到C:\Program Files (x86)\wkhtmltopdf\二进制文件可能是的文件夹中,可以C:\Program Files (x86)\wkhtmltopdf\wkhtmltopdf.exe尝试指向可执行文件以查看是否有效?
  • 如果这不起作用,当您尝试从命令行运行命令时会发生什么?那它行得通吗?

    wkhtmltopdf http://localhost/pdfTester/try.php test.pdf

于 2012-08-14T05:52:27.400 回答