我正在尝试使用Barryvdh / snappy在Laravel 5.6中创建PDF。我的config/snappy.php
看起来像
'pdf' => array(
'enabled' => true,
'binary' => 'C:/xampp/htdocs/pdftesting/vendor/h4cc/wkhtmltopdf-amd64/bin/wkhtmltopdf',
'timeout' => false,
'options' => array(),
'env' => array(),
),
我的控制器看起来像,
$pdf = PDF::loadView('pdf',$data);
return $pdf->download('test.pdf');
但是我得到了这个错误,
退出状态代码“1”表示出错:\ n stderr:“'C:/ xampp / htdocs / pdftesting / vendor / h4cc / wkhtmltopdf-amd64 / bin / wkhtmltopdf'未被识别为内部或外部命令,\ r \ n 可操作程序或批处理文件。\ r \ n “\ n 标准输出:“”\ n 命令:C:/ xampp / htdocs / pdftesting / vendor / h4cc / wkhtmltopdf-amd64 / bin / wkhtmltopdf --lowquality --images --enable -javascript --javascript-delay“10”“C:\ WINDOWS \ TEMP \ knp_snappy5ad430445b31e9 .92776484.html“”C:\ WINDOWS \ TEMP \ knp_snappy5ad430445fac87.79827170.pdf“
答案 0 :(得分:0)
您没有提到是否在Windows上安装了wkhtmltopdf。如果没有访问https://wkhtmltopdf.org/downloads.html,请根据Windows要求进行下载(如果Windows是32位,则下载32位;如果64位,则下载64位msi文件),然后将其安装到默认位置。
然后根据以下行更改config / snappy.php文件
'binary'=>'“ C:\ Program Files \ wkhtmltopdf \ bin \ wkhtmltopdf”'
希望这会对您有所帮助。
答案 1 :(得分:0)
尝试此解决方案https://github.com/barryvdh/laravel-snappy/issues/60,并寻找STAMBOULI ABDELKARIM的评论,它对我很有帮助。
使用DomPDF生成图表非常困难/不可能,开发者Barryvdh也指出了这一点
答案 2 :(得分:0)
我认为这是Windows错误。尝试将 Wkhtmltopdf bin
文件夹添加到路径。
请参阅此article。
答案 3 :(得分:0)
我认为如果将文件复制到公共路径并在config / snappy文件中编辑二进制路径
'pdf' => [
'enabled' => true,
'binary' => public_path('wkhtmltopdf/bin/wkhtmltopdf.exe'),
'timeout' => false,
'options' => [],
'env' => [],
],
'image' => [
'enabled' => true,
'binary' => public_path('wkhtmltopdf/bin/wkhtmltoimage.exe'),
'timeout' => false,
'options' => [],
'env' => [],
],
或在wkhtmltopdf的bin路径中添加双引号 'binary'=>'“ C:\ Program Files \ wkhtmltopdf \ bin \ wkhtmltopdf”'