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

发布于 2024-08-08 14:34:23 字数 109 浏览 7 评论 0原文

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

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

我不想使用其他库。

How can I create a new document using other PDFs that I'm generating?

I have methods to create some documents, and I want to merge them all in a big PDF, how can I do that with TCPDF?

I do not want to use other libs.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(6

-黛色若梦 2024-08-15 14:34:23

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 和 FPDI 具有多个页面

TCPDF has a tcpdf_import class, added in 2011, but it is still "under development". If you don't want to use anything outside of TCPDF, you're out of luck!

But FPDI is an excellent addition to TCPDF: it's like an addon. It's as simple as this:

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)); 

Done!

See also this question:
TCPDF and FPDI with multiple pages

一个人的旅程 2024-08-15 14:34:23

为什么不使用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');
?>

Why don't you use Zend_PDF, it 's really a very good way to merge file.

<?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');
?>
稳稳的幸福 2024-08-15 14:34:23

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

您可以使用 shell 命令和

PDFTK Toolkit

来尝试,这样您就不必使用其他 pdf 库。

Hi i think TCPDF is not able to merge pdf files.

You can try it with an shell command and

PDFTK Toolkit

So you dont have to use an other pdf library.

妄想挽回 2024-08-15 14:34:23

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

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

This thread is from 2009, but using existing PDFs in PHP is still an issue in 2020.

After Zend_PDF has been abandoned and TCPDI does not support PHP 7, FPDI currently seems one of the few working solutions left in 2020. It can be used with TCPDF and FPDF, so existing code keeps working. And it currently seems well maintained.

不语却知心 2024-08-15 14:34:23

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

Check out FPDI and FPDF_TPL. This isn't a perfect solution, but you can basically use FPDF_TPL to create a template of your PDF file and the insert it into your PDF file.

七月上 2024-08-15 14:34:23

FPDI 工作正常,但与 pdf 1.7 存在一些问题,如果您无法控制要合并的 pdf 文件,则不适合,因此最终解决方案正在等待中。

FPDI works fine but has some issues with pdf 1.7 then is not suitable if you don't have the control over pdf files to merge, so a final solution is pending.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文