Snappy错误:系统找不到指定的路径

时间:2020-02-11 21:44:32

标签: php wkhtmltopdf snappy

请允许我第一次尝试使用snappy,以允许用户从我的网站下载PDF。我以前使用过DomPDF,但发现它不适用于当前情况。我首先安装了wkhtmltopdf,然后使用composer安装了snappy,并将其安装到c / users / computer-name / vendor(对composer来说我是一个新手)。我将供应商文件夹复制到我的项目目录中。

我添加了以下代码;

    require __DIR__ . '/vendor/autoload.php';
    use Knp\Snappy\Pdf;
    $snappy = new Pdf('/usr/local/bin/wkhtmltopdf');
    header('Content-Type: application/pdf');
    header('Content-Disposition: attachment; filename="file.pdf"');
    echo $snappy->getOutput('http://www.github.com');

,如下所示:https://github.com/knplabs/snappy PDF已下载,但无法打开。 Chrome浏览器显示“无法加载PDF文档”。当我用记事本打开PDF时,看到错误;

致命错误:未捕获RuntimeException:退出状态代码“ 1”表示出了点问题: stderr:“系统找不到指定的路径。 ” 标准输出:“” 命令:/ usr / local / bin / wkhtmltopdf --lowquality“ https://www.google.com/"” C:\ xampp \ htdocs中的“ C:\ Users \ CHIDIE〜1 \ AppData \ Local \ Temp \ knp_snappy5e42659b757116.59025588.pdf”。 \ corporatecareer \ templates \ vendor \ knplabs \ knp-snappy \ src \ Knp \ Snappy \ AbstractGenerator.php:381

请帮助。我想念的是什么。我知道我做错了。

谢谢。

1 个答案:

答案 0 :(得分:0)

快照示例中的

/usr/local/bin/wkhtmltopdf是Linux二进制位置。好像您正在使用Windows xampp。从此处https://wkhtmltopdf.org/downloads.html下载wkhtmltopdf程序,并像这样更新您提取二进制文件的路径。

$snappy = new Pdf('C:\path to where you extracted binary'); 

此外,请确保提取的路径不需要执行管理员权限。