首页 > 解决方案 > laravel pdf 使用 (Barryvdh\DomPDF) 查看添加水印

问题描述

我的问题(这个网址(127.0.0.1:8081/php_tutorial.pdf)时不显示pdf内容)

控制器

public function generatePDF()

{
    $data = [

        'title' => 'Welcome to ',
        'pdf' => '127.0.0.1:8081/php_tutorial.pdf',
        'date' => date('m/d/Y')

    ];
    $pdf = PDF::loadView('pdf',$data);
    $pdf->setPaper('L');
    $pdf->output();
    $canvas = $pdf->getDomPDF()->getCanvas();
    $height = $canvas->get_height();
    $width = $canvas->get_width();
    $canvas->set_opacity(.2,"Multiply");
    $canvas->page_text($width/5, $height/2, 'This Is Watermark text', null,
     70, array(0,0,0),2,2,-30);
     return $pdf->stream('result.pdf'); 

}

视图(刀片)

{{ $标题}}

<iframe src="{{ $pdf }}" width="100%" height="500px">

标签: laravel

解决方案


  1. 首先,您需要创建视图以加载所有 PDF 视图。

  2. 然后在您的控制器中查询您的数据

    public function PDFSlip($id)
    
       $data = ModelName::get()
    
       $customPaper = array(0,0,600.00,310.80);
    
       $pdf = PDF::loadView('pdf\bookingDetailPDF', compact('data'))- 
       >setPaper($customPaper, 'portrait');;
       return $pdf->download('PDFNAME.pdf');
    }
    
  3. 然后您的文件将下载到本地目录中,并且 pdf 也将加载到新选项卡中。


推荐阅读