是否有PHP库可用于填充PDF表单,然后将它们保存(展平)为PDF文件?

===============>>#1 票数:47 已采纳

这里提到的库和框架都很好,但是如果您只想填写表格并将其展平,我推荐使用名为pdftk(PDF Toolkit)的命令行工具。

请参阅https://www.pdflabs.com/tools/pdftk-the-pdf-toolkit/

你可以从php调用命令行,命令是

pdftk formfile.pdf fill_form fieldinfo.fdf output outputfile.pdf flatten

您需要找到FDF文件的格式才能生成填写字段的信息。 这是一个很好的链接:

http://www.tgreer.com/fdfServe.html

[编辑:以上链接似乎无法使用。 这是一些更多的信息.​​..]

pdftk命令可以从PDF表单文件生成FDF文件。 然后,您可以使用生成的FDF文件作为样本。 表单字段是FDF文件的一部分

...
<< /T(f1-1) /V(text of field) >>
<< /T(f1-2) /V(text of another field) >>
...

您也可以查看php-pdftk ,这是一个特定于PHP的库。 我没有使用它,但评论者Álvaro(下面)推荐它。

===============>>#2 票数:5

接受答案的大+1,如果你遇到fdf文件的编码问题,还有一点提示。 如果生成fields.fdf并在运行时生成

file -bi fields.fdf

你得到

application/octet-stream; charset=binary

那么你很可能会遇到UTF-16字符集问题。 尝试通过转换ftf

cat fields.fdf | sed -e's/\x00//g' | sed -e's/\xFE\xFF//g' > better.fdf

然后我就可以编辑并将better.fdf文件导入我的PDF表单。

希望这可以节省一些谷歌的人

===============>>#3 票数:3

对于:

  • 输入格式比XFDF更简单
  • 真正的UTF-8(俄语)支持
  • 完整的PHP使用示例

随意检查我的PdfFormFillerUTF-8

===============>>#4 票数:3

使用php生成fdf文件:请参阅http://www.php.net/manual/en/book.fdf.php

然后用pdftk将其填入pdf(见上文)

===============>>#5 票数:3

使用提交到使用fpdf的php脚本的表单并将表单字段作为get变量传递(可能不是一个很好的最佳实践,但它可以工作),我已经取得了很大的成功。

 <?php
require('fpdf.php');
$pdf=new PDF();
$pdf->AddPage();
$pdf->SetY(30);
$pdf->SetX(100);
$pdf->MultiCell(10,4,$_POST['content'],0,'J');
$pdf->Output();
?>

而你可以有这样的东西。

  <form action="fooPDF.php" method="post">
     <p>PDF CONTENT: <textarea name="content" ></textarea></p>
     <p><input type="submit" /></p>
    </form>

这个骨架的例子应该有助于你开始。

===============>>#6 票数:1

我写了一个Perl库, CAM :: PDF ,带有一个可以解决这个问题的命令行界面 我多年前尝试过使用FDF解决方案,但发现它太复杂了,这就是我首先编写CAM :: PDF的原因。 我的库使用一些启发式方法将表单替换为所需的文本,因此它并不完美。 但它大部分时间都可以工作,并且使用起来快速,免费且非常简单。

===============>>#7 票数:1

看起来这已经被覆盖过了 使用Zend Framework PDF库点击查看相关代码。

===============>>#8 票数:1

我们在工作中使用PDFLib 付费版本并不是非常昂贵,如果你无法支付付费版本,那么开源版本就会更加有限。

  ask by mno translate from so

未解决问题?本站智能推荐:

1回复

使用PHP填写PDF表单[关闭]

我希望用PHP创建一个新的PDF,给出一个PDF表单模板和一些PHP变量输入到PDF模板。 什么是最好的或推荐的解决方法? 基本上最终目标是用户将填写此pdf表单,并将输入保存到数据库。 然后,以后能够从数据库中检索输入并将其输出到PDF。 对此有任何帮助都很棒,谢谢。
1回复

使用PHP填写PDF

我需要使用PHP即时填充PDF-不知道从哪里开始。 我目前正在使用PHP在线进行测验-通过一系列测验后,客户端希望让用户下载“完成证书” 证书的PDF在用户名和研究领域有空白行。 我的想法是-在PDF中添加2个表单元素,并在我提取证书时让PHP将它们加入其中。 但是如何?
3回复

通过PHP填写PDF表单-PDFtk无法正常工作

我有在SAP中生成的PDF表格。 该表格大约有30个字段。 有些已经装满了。 而其他人将由员工填补。 这是该表格的示例。 现在,我将创建一个php应用程序,该应用程序可以接受来自用户的数据并填写以上表格并生成该PDF文件。 我阅读了PDFtk Server Utility填
5回复

如何在php中填写PDF表单

我有很多PDF表单,我需要在php中填写我已有的数据。 这里只是一个示例PDF表单 ,我想用php填写此表单。 我在DB中已有的数据。 我只想填写此表并保存。 我正在使用PHP Zend Framework。 我想要的只是当我从我的网站下载这些表格时,它会预先填写pdf表格
1回复

PHP:使用FPDM在PDF中填写表单:未命名的文本注释

我正在尝试使用FPDM填写pdf表单,并收到以下错误消息: FPDF-合并错误:Annot小部件(obj id = 257)是没有名称的文本注释,不能这样。 我做了一些网络上的研究,试图修复的pdftk使用的文件“PDFTK file1.pdf输出file2.pdf”(如在文档
1回复

php中的pdf合并后缺少可填写的表单值

我正在使用FPDI扩展类合并两个pdf。 当我输出合并的文件时,带有可填充字段元素的pdf格式的所有元素都消失了,如文本和条形码等。 但是,其他形式也可以。 当我回显可填写的pdf表单时,它的效果很好,但是在合并之后,我从中删除了所有数据。 我希望您能对此问题提出任何建议。
1回复

填写PDF表单并通过PHP提交到服务器

我有一个在Livecycle Designer ES3中创建的PDF表单。 我的工作是让“提交”按钮将整个pdf文件保存在服务器上的某个文件夹中。 该按钮指向我的Web服务器上的php文件。 该按钮的类型为“提交”,并以“ URL编码的日期(HTTP)”提交。 我努力了:
2回复

使用Breezing Forms表单数据填写PDF表单

我已经在Joomla网站上成功创建了3个Breezing Forms表单,并且想知道使用保存到数据库中的表单数据来填充PDF表单的最佳方法,然后在表单被发送时通过电子邮件发送到特定地址作为最后一步由用户完成。 我知道,可以使用Breezing Forms将表单数据导出为PDF,但是对于这种类型
3回复

FPDF-合并错误:现场不使用fpdm.php填写表单数据在PDF模板中

我正在使用来自http://www.fpdf.org/en/script/script93.php的 FPDF脚本将html表单数据填充为模板中的pdf字段。 这个: 当我使用zip中提供的示例template.pdf时,效果很好。 但是,当我使用自己的pdf模板(template3
1回复

PHP:填写PDF表格

我有一个PDF文档,其中包含带有几个表单域的表单。 我需要执行以下操作: 加载该PDF文档 遍历该文档的所有表单字段,并用数据填充它 下载已填写的拼合文档 我见过很少的库,但是大多数库都依赖于PDFtk。 但是这种情况是我无法在服务器上安装PDFtk。