got-daijobu/laravel-pdfmerger-s3

支持S3的Webklex包 - 感谢nipunTharuksha

v1.0.0 2024-06-04 13:48 UTC

This package is not auto-updated.

Last update: 2024-09-25 10:17:38 UTC


README

Software License

致谢

此包是从NinpunTaruksha的工作分支而来,旨在为Webklex的PdfMerger包添加S3兼容性。

通过使用临时文件而不是临时URL来增强S3兼容性。

安装

通过Composer

$ composer require got-daijobu/laravel-pdfmerger-s3

设置

将服务提供者添加到config/app.php中的providers数组中。

'providers' => [
    ...
    Webklex\PDFMerger\Providers\PDFMergerServiceProvider::class
],

'aliases' => [
    ...
    'PDFMerger' => Webklex\PDFMerger\Facades\PDFMergerFacade::class
]

使用方法

基本使用示例

use Webklex\PDFMerger\Facades\PDFMergerFacade as PDFMerger;

$oMerger = PDFMerger::init();

$oMerger->addPDF('/path/to/project/vendors/webklex/laravel-pdfmerger/src/PDFMerger/examples/pdf_one.pdf', [2]);
$oMerger->addPDF('/path/to/project/vendors/webklex/laravel-pdfmerger/src/PDFMerger/examples/pdf_two.pdf', 'all');

$oMerger->merge();
$oMerger->save('merged_result.pdf');

...添加原始内容数据

$oMerger->addString(file_get_contents('/path/to/project/vendors/webklex/laravel-pdfmerger/src/PDFMerger/examples/pdf_two.pdf'), [1]);

...从S3添加文件

$oMerger->addPDFFromS3('/path/examples/pdf_two.pdf'), [1]);

...选择要合并的页面

$oMerger->addPDF($file, 'all');  //Add all pages
$oMerger->addPDF($file, [1]);    //Add page one only
$oMerger->addPDF($file, [2]);    //Add page two only
$oMerger->addPDF($file, [1, 3]); //Add page one and three only

...合并文件,但添加空白页以支持双面打印

$oMerger->duplexMerge();

...流式传输合并内容

$oMerger->stream();

...下载合并内容

$oMerger->download();

..获取原始内容数据

echo $oMerger->output();

...设置文件名,如果之后不想这样做

$oMerger->setFileName('example.pdf');

变更日志

有关最近更改的更多信息,请参阅CHANGELOG

测试

$ composer test

安全

如果您发现任何与安全相关的问题,请通过电子邮件github@webklex.com联系,而不是使用问题跟踪器。

致谢

许可协议

MIT许可(MIT)。有关更多信息,请参阅许可文件