通过使用TCPDF合并PDF文档来创建新PDF

时间:2009-10-27 10:49:50

标签: php pdf tcpdf

如何使用我正在生成的其他PDF创建新文档?

我有创建一些文档的方法,我想将它们全部合并到一个大PDF中,我该如何使用TCPDF呢?

我不想使用其他库。

5 个答案:

答案 0 :(得分:8)

TCPDF有一个tcpdf_import类,在2011年添加,但它仍处于开发状态"。如果你不想在TCPDF之外使用任何东西,那你就不走运了!

FPDI对TCPDF来说是一个很好的添加:它就像一个插件。它很简单:

require_once('tcpdf/tcpdf.php');
require_once('fpdi/fpdi.php'); // the addon

// FPDI extends the TCPDF class, so you keep all TCPDF functionality
$pdf = new FPDI(); 

$pdf->setSourceFile("document.pdf"); // must be pdf version 1.4 or below
// FPDI's importPage returns an object that you can insert with TCPDF's useTemplate
$pdf->useTemplate($pdf->importPage(1)); 

完成!

另见这个问题: TCPDF and FPDI with multiple pages

答案 1 :(得分:3)

为什么不使用Zend_PDF,这是合并文件的一种非常好的方式。

<?php
require_once 'Zend/Pdf.php';

$pdf1 = Zend_Pdf::load("1.pdf");
$pdf2 = Zend_Pdf::load("2.pdf");

foreach ($pdf2->pages as $page){
$pdf1->pages[] = $page;
}

$pdf1->save('3.pdf');
?>

答案 2 :(得分:2)

您好我认为TCPDF无法合并pdf文件。

您可以使用shell命令和

进行尝试

PDFTK Toolkit

所以你不必使用其他pdf库。

答案 3 :(得分:1)

结帐FPDI and FPDF_TPL。这不是一个完美的解决方案,但您基本上可以使用FPDF_TPL创建PDF文件的模板并将其插入PDF文件。

答案 4 :(得分:1)

该线程来自2009年,但是在2020年使用PHP中的现有PDF仍然是一个问题。

在放弃Zend_PDF并且TCPDI不支持PHP 7之后,FPDI目前似乎是2020年剩下的少数可行解决方案之一。它可以与TCPDF和FPDF一起使用,因此现有代码可以正常工作。而且目前看来维护得很好。