我正在尝试使用Snappy哦我的Symfony项目输出一个twig文件的PDF。当我点击链接时,我的页面重定向,我得到以下异常:
The exit status code '1' says something went wrong:
stderr: "The system cannot find the path specified.
"
stdout: ""
command: /usr/local/bin/wkhtmltopdf --lowquality "C:\Users\user\AppData\Local\Temp\knp_snappy52333e6a9d6731.29137239.html" "C:\Users\user\AppData\Local\Temp\knp_snappy52333e6a9e84c9.03326780.pdf".
我检查了AppData文件夹,并且已经呈现了html文件。没有PDF是我认为Snappy正在尝试生成的内容。
我的控制器中有类似以下的电话:
$html = $this->renderView('MyBundle:Foo:bar.html.twig', array(
'some' => $vars
));
return new Response(
$this->get('knp_snappy.pdf')->getOutputFromHtml($html),
200,
array(
'Content-Type' => 'application/pdf',
'Content-Disposition' => 'attachment; filename="file.pdf"'
)
);
这是我的config.yml
knp_snappy:
pdf:
enabled: true
binary: /usr/local/bin/wkhtmltopdf
options: []
image:
enabled: true
binary: /usr/local/bin/wkhtmltoimage
options: []
有什么我错过的吗?我在我的本地Windows机器上运行它,可能是权限错误吗?
答案 0 :(得分:2)
您很可能将错误的路径放到可执行文件中。
/usr/local/bin/wkhtmltopdf
- wkhtmltopdf二进制文件的Linux路径。
您必须找到wkhtmltopdf放置的位置并在config配置正确的路径。
答案 1 :(得分:1)
问题是我没有安装wkhtmltopdf,doh!