Working with PDFs in PHP usually means collecting libraries. One writes documents but can’t read them. Another reads but can’t write. A third renders HTML. A fourth merges.
Pop PDF does all of it — through one object model, one API, one dependency.
A one-page PDF is eight lines. The same objects scale to a 400-page catalog.
$page = $doc->createPage(Page::LETTER); $page->addText( new Text('Hello', 12), Font::ARIAL, 50, 742 );
An imported PDF comes back as the same objects you would have built yourself.
$doc = Pdf::importFromFile( 'contract.pdf', [2, 4, 6] ); Pdf::writeToFile($doc, 'out.pdf');
Native text extraction, embedded fonts included — and a way to spot a scan before you read it.
$text = Pdf::extractTextFromFile( 'report.pdf', [1, 2, 3] ); Pdf::isImageOnlyDocument('scan.pdf');
PHP 8.4+. Optional extensions: gd, imagick, zlib, mbstring.