Can';t在Slim Framework、Twig和DomPDF中打印为PDF
我一直在努力解决这个问题,但我无法让它工作,尽管在其他一些帖子中,他们说你可以使用细枝的Can';t在Slim Framework、Twig和DomPDF中打印为PDF,pdf,twig,slim,dompdf,Pdf,Twig,Slim,Dompdf,我一直在努力解决这个问题,但我无法让它工作,尽管在其他一些帖子中,他们说你可以使用细枝的render()函数,但我得到以下错误: 请求的HTML文档不包含任何数据。Dompdf\Exception 到目前为止,我的代码是: use Dompdf\Dompdf; $app->post('/my/path/for/printing',function()use($app){ //echo '<p>printing to pdf ... ☺</p>';
render()
函数,但我得到以下错误:
请求的HTML文档不包含任何数据。Dompdf\Exception
到目前为止,我的代码是:
use Dompdf\Dompdf;
$app->post('/my/path/for/printing',function()use($app){
//echo '<p>printing to pdf ... ☺</p>';
$request=$app->request;
/* code for retrieving data from the database ... done.*/
$variables = [
'param1' => $param1,
'param2' => $param2,
];
$dompdf = new Dompdf();
$content = $app->render('path/for/the/view.print.twig', $variables);
$dompdf->loadHtml($content);
$dompdf->render();
$dompdf->stream('sample.pdf');
})->name('my.path.for.printing');
使用Dompdf\Dompdf;
$app->post('/my/path/for/printing',函数()使用($app){
//echo'打印为pdf。。。☺ ",;
$request=$app->request;
/*从数据库检索数据的代码…完成*/
$variables=[
“param1”=>$param1,
“param2”=>$param2,
];
$dompdf=新的dompdf();
$content=$app->render('path/for/the/view.print.twig',$variables);
$dompdf->loadHtml($content);
$dompdf->render();
$dompdf->stream('sample.pdf');
})->名称('my.path.for.printing');
如果渲染视图,数据将正确显示。但是dompdf不起作用
有人知道怎么解决这个问题吗
否则,您可以用任何其他软件包的示例解释如何以PDF格式打印细枝视图吗?render()
不返回HTML。尝试:
$content=$appview->fetch('path/for/the/view.print.twig',$variables);
这部分现在可以工作了。然而,我还不能让它工作。我现在遇到了更多的问题,例如对unlink()函数的权限被拒绝。我正在尝试其他软件包,但仍有一些错误。我不能让它工作(我试过fpdf,但它只在屏幕上打印坏字符。:(我无法在Slim Framework 2.x上使用这些PDF包:(有什么想法吗?我正在windows 7上努力解决这个问题…有什么提示可以解决吗?权限问题在C:\Users\Me\AppData\Local\Temp
dompdf上报告。它使用一个临时目录来存储远程资源(例如图像)。默认情况下,它使用由sys\u get\u Temp\u dir()返回的值)
。如果您没有该位置的读/写权限,您可以尝试使用$dompdf->set_option('tmpDir','…');
(填写临时目录)修改这些文件的存储位置。@BrianS谢谢,我可以更改目录。但是,我仍然无法解决此取消链接()权限被拒绝的问题。这让我抓狂。我无法从服务列表中找到Apache2.4来检查权限。我转到这个文件夹,检查了所有权限,什么都没有。这不起作用。Okkei。我通过注释FontMetrics.php
文件中的所有unlink()
函数来解决它,它终于起作用了。