jmleroux / pdf-merger
PHP 7 的 PDF 文件合并工具
v2.0.0
2020-04-30 07:28 UTC
Requires
- php: >=7.2
- setasign/fpdf: ^1.8
- setasign/fpdi: ^2.3
- setasign/tfpdf: ^1.31
- tecnickcom/tcpdf: ^6.3
Requires (Dev)
- friendsofphp/php-cs-fixer: ^2.16
- phpunit/phpunit: ^8.5|^9.1
This package is auto-updated.
Last update: 2024-09-06 19:46:38 UTC
README
最初由 http://pdfmerger.codeplex.com/team/view 编写
从 https://github.com/clegginabox/pdf-merger 分支
安装
composer require jmleroux/pdf-merger
示例用法
<?php use Jmleroux\PDFMerger\PDFMerger; $pdf = new PDFMerger(); $pdf->addPDF('samplepdfs/one.pdf', '1, 3, 4'); $pdf->addPDF('samplepdfs/two.pdf', '1-2'); $pdf->addPDF('samplepdfs/three.pdf', 'all'); //You can optionally specify a different orientation for each PDF $pdf->addPDF('samplepdfs/one.pdf', '1, 3, 4', 'L'); $pdf->addPDF('samplepdfs/two.pdf', '1-2', 'P'); $pdf->merge('file', 'samplepdfs/TEST2.pdf', 'P');
PDF 库
您可以通过向构造函数提供正确的参数来使用 FPDF、TCPDF 或 tFPDF 作为内部 PDF 库
<?php use Jmleroux\PDFMerger\PDFMerger; $pdf = new PDFMerger(); // use FPDF $pdf = new PDFMerger('fpdf'); // use FPDF $pdf = new PDFMerger('tcpdf'); // use TCPDF $pdf = new PDFMerger('tfpdf'); // use tFPDF
输出模式
此合并器使用详细参数名来表示三个库常见的各种 PDF 输出模式
browser
(默认):将 PDF 二进制文件发送到浏览器。如果可用,将使用浏览器 PDF 插件。download
:将 PDF 发送到浏览器并强制以给定名称进行文件下载。string
:输出原始二进制字符串。file
:将文件保存到本地服务器上的给定名称的文件中。
开发
此仓库包含一个 docker-compose 文件,因此您无需本地 PHP 版本。
使用 make 命令安装和运行测试
要安装依赖项
make vendor
要运行测试
make tests
WTF?
是的,为什么进行分支?
我首先创建了一个 PR 来修复“切片功能”,但后来我意识到我需要一个带有测试和标签的库。此外,我想添加 docker-compose,因为我不再安装任何本地的 PHP,所以我决定分支并从 PHP 7 开始。