猿问
下载APP

用PHP合并PDF文件

我的概念是-网站中有10个pdf文件。用户可以选择一些pdf文件,然后选择合并以创建一个包含所选页面的pdf文件。我该如何用PHP做到这一点?



MYYA
浏览 462回答 3
3回答

慕斯709654

我以前做过 我有一个用fpdf生成的pdf,我需要在其中添加可变数量的PDF。因此,我已经设置了fpdf对象和页面(http://www.fpdf.org/),并使用fpdi导入了文件(http://www.setasign.de/products/pdf-php-solutions/ fpdi /)通过扩展PDF类来添加FDPI:class PDF extends FPDI{}&nbsp;&nbsp; &nbsp; $pdffile = "Filename.pdf";&nbsp; &nbsp; $pagecount = $pdf->setSourceFile($pdffile);&nbsp;&nbsp;&nbsp; &nbsp; for($i=0; $i<$pagecount; $i++){&nbsp; &nbsp; &nbsp; &nbsp; $pdf->AddPage();&nbsp;&nbsp;&nbsp; &nbsp; &nbsp; &nbsp; $tplidx = $pdf->importPage($i+1, '/MediaBox');&nbsp; &nbsp; &nbsp; &nbsp; $pdf->useTemplate($tplidx, 10, 10, 200);&nbsp;&nbsp; &nbsp; }基本上,这会将每个pdf转换为图像以放入您的其他pdf。对于我需要的它,它的工作非常出色。

阿波罗的战车

以下是php PDF合并命令。$fileArray= array("name1.pdf","name2.pdf","name3.pdf","name4.pdf");$datadir = "save_path/";$outputName = $datadir."merged.pdf";$cmd = "gs -q -dNOPAUSE -dBATCH -sDEVICE=pdfwrite -sOutputFile=$outputName ";//Add each pdf file to the end of the commandforeach($fileArray as $file) {&nbsp; &nbsp; $cmd .= $file." ";}$result = shell_exec($cmd);我忘记了找到它的链接,但是它工作正常。注意:您应该安装gs(在Linux上,可能在Mac上),或Ghostscript(在Windows上),以使其正常工作。

青春有我

我建议PDFMerger从github.com,所以容易像::include 'PDFMerger.php';$pdf = new PDFMerger;$pdf->addPDF('samplepdfs/one.pdf', '1, 3, 4')&nbsp; &nbsp; ->addPDF('samplepdfs/two.pdf', '1-2')&nbsp; &nbsp; ->addPDF('samplepdfs/three.pdf', 'all')&nbsp; &nbsp; ->merge('file', 'samplepdfs/TEST2.pdf'); // REPLACE 'file' WITH 'browser', 'download', 'string', or 'file' for output options
打开App,查看更多内容
随时随地看视频慕课网APP
我要回答