我正在尝试使用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获得了一个月大的exp,我已经搜索了相同的主题,但它看起来无济于事。任何帮助都表示赞赏。
答案 0 :(得分:2)
C:\Program Files (x86)\wkhtmltopdf
看起来像是指向文件夹而不是二进制文件。如果您的wkhtmltopdf安装在文件夹C:\Program Files (x86)\wkhtmltopdf\
中,二进制文件可能是C:\Program Files (x86)\wkhtmltopdf\wkhtmltopdf.exe
,maby会尝试指向可执行文件以查看它是否有效? 如果这不起作用,当您尝试从命令行运行命令时会发生什么?那会有用吗?
wkhtmltopdf http://localhost/pdfTester/try.php test.pdf