laravel 将html网页转成pdf

安装

下载页面:wkhtmltopdf

请根据系统进行安装,macOS直接下载安装即可,linux版本下载完解压即可,要用到里面bin的文件

tar -xvf  wkhtmltox-0.12.4_linux-generic-amd64.tar.xz
cd wkhtmltox
cp bin/wkhtmltoimage /usr/local/bin/
cp bin/wkhtmltopdf /usr/local/bin/

运行:wkhtmltoimage 指令,没出错即为安装成功~!

安装laravel-snappy package

composer require barryvdh/laravel-snappy

在 config/app.php 的providers里添加

Barryvdh\Snappy\ServiceProvider::class,

在 config/app.php 的Facade里添加(可选)

'PDF' => Barryvdh\Snappy\Facades\SnappyPdf::class,
'SnappyImage' => Barryvdh\Snappy\Facades\SnappyImage::class,

生成config/snappy.php配置文件

php artisan vendor:publish --provider="Barryvdh\Snappy\ServiceProvider"

里面的配置默认即可!

用法

加载resource/view里的视图

$pdf = App::make('snappy.pdf.wrapper');
$pdf->loadView('home.index', $data);  // $data 为传递的参数
return $pdf->inline(); // 显示
// return $pdf->download('your_selfdefine_name.pdf'); // 下载
// $pdf->loadView('home.index', $data)->setPaper('a4')->save('/path/to/myfile.pdf') //保存到本地

加载视图的文件支持bootstrap ,只需在加载的laravel视图文件引入bootstrap 的css即可,非常方便!
附:http://www.bootcdn.cn/

你可能感兴趣的:(laravel 将html网页转成pdf)