首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在Php中按页面范围将PDF拆分成块

在Php中按页面范围将PDF拆分成块
EN

Stack Overflow用户
提问于 2015-04-13 23:49:10
回答 3查看 5.4K关注 0票数 0

所以在浏览了TCPDF、FPDP、DOM2PDF和许多其他优秀的php pdf包之后,我在任何允许按页面范围拆分pdf文件的包中都找不到这个功能。例如,我想拆分20-100页或30-50页的pdf。或者从20-100页的pdf创建一个pdf。那么有没有什么库有这个特性呢?

EN

回答 3

Stack Overflow用户

发布于 2015-04-13 23:54:47

PDFMerger具有此功能,我个人喜欢它的简单性。

代码语言:javascript
复制
$pdf = new PDFMerger;
$pdf->addPDF('pdf1.pdf','20-100');
$pdf->addPDF('pdf2.pdf','30-50');
$pdf->merge(); // output PDF, you can specify additional parameters here
票数 2
EN

Stack Overflow用户

发布于 2020-07-08 20:19:12

您可以结合使用FPDIFPDF来实现这一点。

代码语言:javascript
复制
$new_pdf = new setasign\Fpdi\FPDI();
        
for($i = 20; $i <= 200; $i++){
    $new_pdf->AddPage();
    $new_pdf->setSourceFile("source.pdf");
    $new_pdf->useTemplate($new_pdf->importPage($i));
}

$new_pdf->Output("output.pdf", "F");
票数 0
EN

Stack Overflow用户

发布于 2021-05-12 21:33:11

如果其他人在pdf版本大于1.4的情况下有问题,并且你想拆分pdf,避免使用FPDI或任何其他php库,你可以使用以下完美的选项:

https://www.ubuntubuzz.com/2016/01/how-to-split-pdf-with-pdfseparate.html

这是一个非常简单的命令行

拆分所有页面

代码语言:javascript
复制
pdfseparate <source_pdf_file> <name>-%d.pdf

仅拆分所选页面

代码语言:javascript
复制
pdfseparate -f 1 -l 3 <source_pdf_file> <name>-%d.pdf

仅拆分第一页

代码语言:javascript
复制
pdfseparate -f 1 -l 1 <source_pdf_file> <name>-%d.pdf

仅拆分最后一页

代码语言:javascript
复制
pdfseparate -f 8 -l 8 <source_pdf_file> <name>-%d.pdf

我已经在我的本地环境中使用homestead vagrant测试了这个命令,并使用ubuntu 18,16在prouction环境中测试了这个命令。运行良好,而且比gs (ghost script)更好。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/29609647

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档