jbreuer95 / laravel-make-pdf
使用无头Chrome实例将HTML转换为PDF
v0.0.3
2024-10-03 09:00 UTC
Requires
- php: ^8.1
- ext-zip: *
- guzzlehttp/guzzle: ^7.9
- illuminate/contracts: ^10.0||^11.0
- php-webdriver/webdriver: ^1.15
- spatie/laravel-package-tools: ^1.16
Requires (Dev)
- larastan/larastan: ^2.9
- laravel/pint: ^1.14
- nunomaduro/collision: ^8.1.1||^7.10.0
- orchestra/testbench: ^9.0.0||^8.22.0
- pestphp/pest: ^2.34
- pestphp/pest-plugin-arch: ^2.7
- pestphp/pest-plugin-laravel: ^2.3
- phpstan/extension-installer: ^1.3
- phpstan/phpstan-deprecation-rules: ^1.1
- phpstan/phpstan-phpunit: ^1.3
This package is auto-updated.
Last update: 2024-10-03 09:01:54 UTC
README
此包允许您通过Selenium使用无头Chrome轻松地将HTML转换为PDF,无需Node.js。它受到Spatie的laravel-pdf包的启发,该包使用BrowserShot和Puppeteer,但我们的解决方案提供了更以PHP为中心的方法,使用Selenium。
要求
Laravel Make PDF需要PHP 8.1+和Laravel 10+。
安装与设置
您可以通过Composer安装此包
composer require jbreuer95/laravel-make-pdf
安装后,使用以下Artisan命令下载无头Chrome
php artisan make-pdf:install
要自定义包配置,发布配置文件
php artisan vendor:publish --tag="laravel-make-pdf-config"
以下是发布配置文件的内容
return [ // Configuration options will go here ];
用法
使用此包将HTML转换为PDF简单高效。以下是几个常见用例
基本示例
将Blade视图转换为PDF并流式传输到浏览器
use Breuer\MakePDF\Facades\PDF; Route::get('/', function () { return PDF::view('view.name', [])->response(); });
或强制浏览器下载PDF文件
return PDF::view('view.name', [])->download();
选项
渲染原始HTML:您可以直接传递HTML而不是传递Blade视图
PDF::html('<h1>Hello World</h1>')
保存到文件:使用save
方法将PDF存储在给定的文件路径中
->save('/path/to/save/yourfile.pdf')
自定义文件名:在从浏览器下载PDF时定义自定义名称。如果省略,将自动追加.pdf
扩展名
->name('custom_filename')
流式传输PDF:直接在浏览器中显示PDF,而无需将其保存到磁盘
->response()
强制下载:提示浏览器立即下载PDF
->download()
许可证
此包是开源软件,根据MIT许可证授权。
请参阅许可证文件获取更多信息。