thinkphp6生成pdf

文章描述:

thinkphp6生成pdf文件

使用mpdf生成PDF文件,需要确保已经安装了mpdf扩展

composer require mpdf/mpdf

 

use Mpdf\Mpdf;

 

public function index(){
        $id=123;
        //用html形式生成pdf
        $html_content = '<p style="text-align: center;">
        <img src="http://www.miyil.com/wp-content/themes/myui/images/logo.png" />
         
    </p>
    <p style="text-align: center;">
        <span style="color: rgb(153, 0, 0); font-size: 15px; text-align: center;">
        一年一度春节伴手礼大赛,带什么全家最开心?
        </span>
    </p>
    <p style="text-align: center;">
        <img src="http://img.baidu.com/hi/jx2/j_0034.gif"/>
        <img src="http://img.baidu.com/hi/jx2/j_0040.gif"/>
    </p>';

        //tempDir指定临时文件目录,需要有可写入的权限,否则会报错
        $mpdf = new Mpdf(['mode'=>'utf-8',
            'format' => 'A4',
            'tempDir' => 'pdf'
        ]);
        $mpdf->SetDisplayMode('fullpage');
        //自动分析录入内容字体
        $mpdf->autoScriptToLang = true;
        $mpdf->autoLangToFont = true;
        //文章pdf文件存储路径
        $fileUrl = "pdf/article_".$id.".pdf";
        //以html为标准分析写入内容
        $mpdf->WriteHTML($html_content);
        //生成文件
        $mpdf->Output($fileUrl);
        //判断是否生成文件成功
        if (is_file($fileUrl)){
            return "文件生成成功";
        } else {
            return "文件生成失败";
        }

}

 

//下载pdf文件
public function downPdf() {
        $id=123;
        $fileUrl = "pdf/article_".$id.".pdf";
        return download($fileUrl,"article_".$id.".pdf");
}

 

发布时间:2024/03/23

发表评论