git地址:https://github.com/niklasravnsborg/laravel-pdf
在项目中,如果要写入并下载、展示PDF格式的文件,这个时候,就需要用到PDF的插件了,PHP的PDF插件很多,有dompdf、Wkhtmltopdf等,今天主要介绍mpdf的安装和使用。
引入该插件,有两种:
一、在laravel根目录,执行
composer require niklasravnsborg/laravel-pdf
二、或者在根目录的composer.json文件中的require中加入:
"niklasravnsborg/laravel-pdf":"*"
执行
composer update
接下来,在config/app.php文件下加入:
'providers' => [ // ... niklasravnsborg\LaravelPdf\PdfServiceProvider::class ]
和
'aliases' => [ // ... 'PDF' => niklasravnsborg\LaravelPdf\Facades\Pdf::class ]
到此,就可以直接引用了:
直接在页面渲染: $pdf = PDF::loadHTML('HTML内容'); return $pdf->stream(); 下载PDF: $pdf = PDF::loadHTML('HTML内容'); return $pdf->download('document.pdf'); 通过模板文件渲染: $pdf = PDF::loadHTML('HTML内容'); return $pdf->loadView('pdf',$data);
值得注意的是,中午会出现乱码,这个时候,就要配置一下文件了:
首先,生成一个PDF的配置文件
php artisan vendor:publish --provider="Barryvdh\DomPDF\ServiceProvider
然后,看mpdf的版本,如果是mpdf6.1以后可以用
return [ 'mode' => 'zh-cn', 'format' => 'A4', 'author' => '', 'subject' => '', 'keywords' => '', 'creator' => 'Laravel Pdf', 'display_mode' => 'fullpage', 'tempDir' => base_path('../temp/') ];
mpdf6.0可以用:
return [ 'mode' => '+aCJK', 'format' => 'A4', 'author' => '', 'subject' => '', 'keywords' => '', 'creator' => 'Laravel Pdf', 'display_mode' => 'fullpage', 'tempDir' => base_path('../temp/') ];
至此,完成。
转载请注明:永盟博客 » mpdf的使用(PHP-laravel)