softplaceweb / laravel-10-pdf-merger
Laravel Pdf Merger
1.1.4
2023-10-11 19:24 UTC
Requires
- php: >8.0
- anton-am/pdf-version-converter: ^1.0
- illuminate/support: ^9.0|^10.0
- setasign/fpdi: ^2.3.6
- tecnickcom/tcpdf: ^6.4.4
Requires (Dev)
- orchestra/testbench: ^8.0
- phpunit/phpunit: ^10.3
README
这是一个简单的Laravel服务提供者,它包含了一些基本的配置,用于包含TCPDF库,以便您能够在Laravel应用程序中合并PDF文件。
兼容性从1.3版到1.7版,如果尝试合并大于1.4版的版本,将通过Ghostscript进行转换。
最终结果是合并后的PDF文件v 1.7
要求
- PHP 8.0+
- Ghostscript(Linux上的gs命令)
安装
可以通过在项目的composer.json中添加softplaceweb/laravel-10-pdf-merger包来使用composer安装Laravel PDF Merger服务提供者。
composer require softplaceweb/laravel-10-pdf-merger
对于lumen,您应该添加以下行
$app->register(Softplaceweb\PdfMerger\PdfMergerServiceProvider::class); class_alias(Softplaceweb\PdfMerger\Facades\TCPDF::class, 'PDF');
这就完成了!您可以开始使用了。
下面是一个小例子
use Softplaceweb\PdfMerger\Facades\PdfMerger; PdfMerger::addPDF('path/to/pdf1.pdf', 1) ->addPDF('path/to/pdf2.pdf', 'all') ->merge() ->save('new_file_name.pdf', 'browser');
或者发送PDF数组...
use Softplaceweb\PdfMerger\Facades\PdfMerger; PdfMerger::addPDF([ [ 'filePath' => 'path/to/pdf1.pdf', 'pages' => 1, ], [ 'filePath' => 'path/to/pdf2.pdf', ], ]) ->merge() ->save('new_file_name.pdf', 'browser');
您可以为这个类扩展功能,有关所有可用函数的列表,请参阅TCPDF 文档
配置
Laravel Pdf Merger附带了一些基本配置。如果您想覆盖默认值,可以发布配置,如下所示
php artisan vendor:publish --provider="Softplaceweb\PdfMerger\PdfMergerServiceProvider"
现在访问config/pdf-merger.php进行自定义。
- 使用原始头部是使用TCPDF的原始
Header()。- 请注意,
PdfMerger::setHeaderCallback(function($pdf){})将覆盖此设置。
- 请注意,
- 使用原始底部是使用TCPDF的原始
Footer()。- 请注意,
PdfMerger::setFooterCallback(function($pdf){})将覆盖此设置。
- 请注意,