This package is a wrapper for the TCPDF
class that provides an elegant API for merging PDF files.
You can install the package via composer:
composer require karriere/pdf-merge
use Karriere\PdfMerge\PdfMerge;
$pdfMerge = new PdfMerge();
$pdfMerge->add('/path/to/file1.pdf');
$pdfMerge->add('/path/to/file2.pdf');
$pdfMerge->merge('/path/to/output.pdf');
Please note, that the merge()
-method will throw a NoFilesDefinedException
if no files where added.
You can check if a file was already added for merging by calling:
$pdfMerge->contains('/path/to/file.pdf');
You can also configure the header of footer of all pages like this:
use Karriere\PdfMerge\PdfMerge;
$pdfMerge = new PdfMerge(
new HeaderConfig(
imagePath: 'header_logo.png',
logoWidthMM: 20,
title: 'Header',
text: 'This is a header text',
textColor: new RGB(200, 200, 200),
lineColor: new RGB(0, 0, 255),
),
new FooterConfig(
textColor: new RGB(100, 100, 100),
lineColor: new RGB(255, 0, 0),
margin: 20,
),
);
All config properties have default values, so you don't have to pass them all.
Apache License 2.0 Please see LICENSE for more information.