PHPackages                             cideale/libmergepdf - PHPackages - PHPackages  [Skip to content](#main-content)[PHPackages](/)[Directory](/)[Categories](/categories)[Trending](/trending)[Leaderboard](/leaderboard)[Changelog](/changelog)[Analyze](/analyze)[Collections](/collections)[Log in](/login)[Sign up](/register)

1. [Directory](/)
2. /
3. [PDF &amp; Document Generation](/categories/documents)
4. /
5. cideale/libmergepdf

ActiveLibrary[PDF &amp; Document Generation](/categories/documents)

cideale/libmergepdf
===================

Library for merging multiple PDFs

1.0.10(10mo ago)08.1k↓34.2%WTFPLPHPPHP ^7.4||^8.2

Since Mar 8Pushed 10mo agoCompare

[ Source](https://github.com/CuisineIdeale/Libmergepdf)[ Packagist](https://packagist.org/packages/cideale/libmergepdf)[ Docs](https://github.com/CuisineIdeale/Libmergepdff)[ RSS](/packages/cideale-libmergepdf/feed)WikiDiscussions master Synced 1mo ago

READMEChangelogDependencies (4)Versions (12)Used By (0)

Libmergepdf
===========

[](#libmergepdf)

[![Packagist Version](https://camo.githubusercontent.com/2c1179ad0356c15025b20cfd12e6a129cbd70036c443b7b6942cbe16e97addb7/68747470733a2f2f696d672e736869656c64732e696f2f7061636b61676973742f762f43696465616c652f4c69626d657267657064662e7376673f7374796c653d666c61742d737175617265)](https://packagist.org/packages/Cideale/Libmergepdf)

PHP library for merging multiple PDFs.

Installation
------------

[](#installation)

```
composer require Cideale/Libmergepdf
```

Usage
-----

[](#usage)

Append the first ten pages of **bar.pdf** to **foo.pdf**:

```
use Cideale\Libmergepdf\Merger;
use Cideale\Libmergepdf\Pages;

$merger = new Merger;
$merger->addFile('foo.pdf');
$merger->addFile('bar.pdf', new Pages('1-10'));
$createdPdf = $merger->merge();
```

Bulk add files from an iterator:

```
use Cideale\Libmergepdf\Merger;

$merger = new Merger;
$merger->addIterator(['A.pdf', 'B.pdf']);
$createdPdf = $merger->merge();
```

### Merging pdfs of version 1.5 and later

[](#merging-pdfs-of-version-15-and-later)

The default `FPDI` driver is not able handle compressed pdfs of version 1.5 or later. Circumvent this limitation by using the slightly more experimental `TCPDI` driver.

```
use Cideale\Libmergepdf\Merger;
use Cideale\Libmergepdf\Driver\TcpdiDriver;

$merger = new Merger(new TcpdiDriver);
```

### Using an immutable merger

[](#using-an-immutable-merger)

Immutability may be achieved by using a `driver` directly.

```
use Cideale\Libmergepdf\Driver\Fpdi2Driver;
use Cideale\Libmergepdf\Source\FileSource;
use Cideale\Libmergepdf\Pages;

$merger = new Fpdi2Driver;

$createdPdf = $merger->merge(
    new FileSource('foo.pdf'),
    new FileSource('bar.pdf', new Pages('1-10'))
);
```

###  Health Score

42

—

FairBetter than 90% of packages

Maintenance54

Moderate activity, may be stable

Popularity24

Limited adoption so far

Community12

Small or concentrated contributor base

Maturity64

Established project with proven stability

 Bus Factor1

Top contributor holds 78.9% of commits — single point of failure

How is this calculated?**Maintenance (25%)** — Last commit recency, latest release date, and issue-to-star ratio. Uses a 2-year decay window.

**Popularity (30%)** — Total and monthly downloads, GitHub stars, and forks. Logarithmic scaling prevents top-heavy scores.

**Community (15%)** — Contributors, dependents, forks, watchers, and maintainers. Measures real ecosystem engagement.

**Maturity (30%)** — Project age, version count, PHP version support, and release stability.

###  Release Activity

Cadence

Every ~84 days

Recently: every ~110 days

Total

11

Last Release

320d ago

PHP version history (3 changes)1.0.0PHP ^7.1||^8.0

1.0.7PHP ^7.1||^8.2

1.0.10PHP ^7.4||^8.2

### Community

Maintainers

![](https://www.gravatar.com/avatar/ebdab13764db6225c38b747dab09073a7da7bb0277a9d29250ab5f5108bbfca3?d=identicon)[CuisineIdeale](/maintainers/CuisineIdeale)

---

Top Contributors

[![hanneskod](https://avatars.githubusercontent.com/u/1369274?v=4)](https://github.com/hanneskod "hanneskod (75 commits)")[![Philippe1904](https://avatars.githubusercontent.com/u/36713330?v=4)](https://github.com/Philippe1904 "Philippe1904 (15 commits)")[![md2perpe](https://avatars.githubusercontent.com/u/543239?v=4)](https://github.com/md2perpe "md2perpe (2 commits)")[![proxyconcept](https://avatars.githubusercontent.com/u/620151?v=4)](https://github.com/proxyconcept "proxyconcept (1 commits)")[![svenluijten](https://avatars.githubusercontent.com/u/11269635?v=4)](https://github.com/svenluijten "svenluijten (1 commits)")[![willoller](https://avatars.githubusercontent.com/u/127107?v=4)](https://github.com/willoller "willoller (1 commits)")

---

Tags

pdfmerge

###  Code Quality

TestsPHPUnit

### Embed Badge

![Health badge](/badges/cideale-libmergepdf/health.svg)

```
[![Health](https://phpackages.com/badges/cideale-libmergepdf/health.svg)](https://phpackages.com/packages/cideale-libmergepdf)
```

###  Alternatives

[mpdf/mpdf

PHP library generating PDF files from UTF-8 encoded HTML

4.7k77.1M493](/packages/mpdf-mpdf)[iio/libmergepdf

Library for merging multiple PDFs

40813.6M13](/packages/iio-libmergepdf)[jurosh/pdf-merge

PHP PDF Merger

1522.2M5](/packages/jurosh-pdf-merge)[elibyy/tcpdf-laravel

tcpdf support for Laravel 6, 7, 8, 9, 10, 11

3542.7M5](/packages/elibyy-tcpdf-laravel)[karriere/pdf-merge

A wrapper for the TCPDF class that provides an elegant API for merging PDFs

27566.8k1](/packages/karriere-pdf-merge)[imal-h/pdf-box

The most advanced, driver-based PDF manipulation library for PHP v3.0. Supports Ghostscript, Chrome Headless (HTML to PDF), OpenSSL/FPDI (Signing), and PDFtk (Forms).

60403.9k](/packages/imal-h-pdf-box)

PHPackages © 2026

[Directory](/)[Categories](/categories)[Trending](/trending)[Changelog](/changelog)[Analyze](/analyze)
