情况就是这样:
我有一个表单,用户必须填写 5个字段。我还有一个 PDF模板,其中一些布局带有 5个空白框。
现在,当用户填写表单时,应该从pdf模板生成 PDF ,并且用户已经输入的字段应添加到模板。
现在我的问题是什么是最好和最简单的方法呢?我查看了库laravel-dompdf,但它看起来不像是在使用模板。
有人必须这样做吗?如果是的话,你是怎么做到的?我正在使用laravel 5.0 。
答案 0 :(得分:2)
我使用“vsmoraes / laravel-pdf”:“^ 1.0”包,它对我们来说很好。
use Vsmoraes\Pdf\Pdf;
private $pdf;
public function __construct(Pdf $pdf)
{
$this->middleware('auth');
$this->pdf = $pdf;
}
public function pdfMaker($data)
{
$html = view('pdf.shippinglabel')->with('purchase', $purchase)->with('products', $products)->render();
$label = $this->pdf->load($html)->output();
file_put_contents(storage_path()."/ftp/po/label_".$id.".pdf",$label);
}
然后我将格式化的pdf与嵌入式CSS结合,不包括外部CSS文件链接。
这是github网址:https://github.com/vsmoraes/pdf-laravel5
答案 1 :(得分:1)
Dompdf不适用于pdf模板,但它适用于HTML模板。
所以,你可以这样做:
{field1}
,{field2}
,ecc)放在要打印表格中的值的位置提交表单后,将html模板加载到字符串中,将字符串中的占位符替换为从表单中获取的实际值
将字符串(包含有效的html)传递给dompdf并生成PDF文件
答案 2 :(得分:1)
使用Barry的Laravel包(https://github.com/barryvdh/laravel-dompdf),您可以加载视图。因此,可以使用Blade视图制作模板。
答案 3 :(得分:0)