Package

Webklex Laravel Pdfmerger

Generic PDF merger for Laravel

Package

webklex/laravel-pdfmerger

View on GitHub →

Laravel PDFMerger

Install

Via Composer

$ composer require webklex/laravel-pdfmerger

Setup

Add the service provider to the providers array in config/app.php.

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

Usage

A basic usage example:

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');

...add raw content data:

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

...select the pages you want to merge:

$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

...merge files together but add blank pages to support duplex printing:

$oMerger->duplexMerge();

...stream the merged content:

$oMerger->stream();

...download the merged content:

$oMerger->download();

..get the raw content data:

echo $oMerger->output();

...set the filename if you don't want to do it later:

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

Change log

Please see CHANGELOG for more information what has changed recently.

Testing

$ composer test

Security

If you discover any security related issues, please email github@webklex.com instead of using the issue tracker.

Credits

License

The MIT License (MIT). Please see License File for more information.

Pushsilver logo

Pushsilver

Pushsilver is simple invoicing for freelancers and small studios — send polished invoices, automate reminders, and get paid on time without the bloat.

Pushsilver
No Compromises logo

No Compromises

Joel and Aaron, the two seasoned devs from the No Compromises podcast, are now available to hire for your Laravel project. ⬧ Flat rate of $9500/mo. ⬧ No lengthy sales process. ⬧ No contracts. ⬧ 100% money back guarantee.

No Compromises
PhpStorm logo

PhpStorm

The go-to PHP IDE with extensive out-of-the-box support for Laravel and its ecosystem.

PhpStorm
Acquaint Softtech logo

Acquaint Softtech

Acquaint Softtech offers AI-ready Laravel developers who onboard in 48 hours at $3000/Month with no lengthy sales process and a 100 percent money-back guarantee.

Acquaint Softtech
Shift logo

Shift

Running an old Laravel version? Instant, automated Laravel upgrades and code modernization to keep your applications fresh.

Shift
Harpoon: Next generation time tracking and invoicing logo

Harpoon: Next generation time tracking and invoicing

The next generation time-tracking and billing software that helps your agency plan and forecast a profitable future.

Harpoon: Next generation time tracking and invoicing