如何使用PHP替换PDF表单字段中的文本

时间:2012-05-27 16:45:30

标签: php pdf

我正在搜索大约3个小时来找到问题的解决方案。我已经浏览了有关我的问题的stackoverflow问题,但找不到解决方案。

我目前要做的是使用PHP替换PDF表单字段中的文本。 PDF文件的文本字段包含占位符文本,如[占位符]。

我试图做的是:

$pdf_content = file_get_contents(source_pdf.pdf);
$put = str_replace('[placeholder]', 'NEW VALUE', $pdf_content);
file_put_contents('temp_pdf/test.pdf', $put);

当我打开PDF时,似乎没有替换占位符。但如果我进入文本字段,我的“新值”就出现了。如果我再次弹出“[占位符]”再次分配。

由于这个原因,我认为这不适合我的目的。

我现在的问题是:有没有一种简单有效的方法来实现它? 我不想使用FDF,而是替换源PDF中的文本。

1 个答案:

答案 0 :(得分:2)

只要我知道这不会很简单。最好的解决方案是将PDF文档作为HTML模板提供给您,您可以使用TCPDF(http://www.tcpdf.org/)等库轻松转换为PDF。

我搜索了一下,发现了两个类似的问题,并且有一些回复你可能想要过去。他们确实提供了一些工具,但肯定不是PHP。

Programatically find and replace text in pdf

Programmatically replace text in PDF

如果您有固定的模板集,并且每次使用新值更新模板时,

HTML模板到PDF转换将是最佳选择。但是如果您有不同的模板(表单),您必须在值中替换,您应该要求供应商提供某种格式,如果可能的话,您可以轻松地以编程方式处理。