tomsgu/pdf-merger

v0.5.0 2023-12-02 14:52 UTC

This package is auto-updated.

Last update: 2024-08-31 00:32:09 UTC


README

这是一个基于setasign/fpdi和fpdf库的PHP >= 7.2版本pdf合并的简单包装器,灵感来源于clegginabox/pdf-merger。

当使用symfony框架时,您可以使用tomsgu/pdf-merger-bundle包。

安装

composer require tomsgu/pdf-merger

使用

$pdfCollection = new PdfCollection();
$pdfCollection->addPdf('filename.pdf', PdfFile::ALL_PAGES, PdfFile::ORIENTATION_PORTRAIT);
$pdfCollection->addPdf('filename2.pdf', '1-4,9', PdfFile::ORIENTATION_LANDSCAPE);
$pdfCollection->addPdf('filename3.pdf', '1-4,9', PdfFile::ORIENTATION_AUTO_DETECT);
$pdfCollection->addPdf('filename4.pdf');

// You can also pass a resource
$resource = fopen('filename4.pdf', 'r');
$pdfCollection->addPdf($resource);

$fpdi = new Fpdi();
$merger = new PdfMerger($fpdi);
/**
 * Available modes: MODE_FILE, MODE_DOWNLOAD, MODE_STRING, MODE_BROWSER
 * Orientation: This is a fallback if the orientation wasn't specified when adding pdf.
 */
$merger->merge($pdfCollection, 'output.pdf', PdfMerger::MODE_FILE, PdfFile::ORIENTATION_LANDSCAPE);