填充PDF文件 - Python

时间:2011-01-20 17:28:12

标签: python pdf

我有一个现成的PDF文档,其中包含某些区域的占位符值。

e.g。 {{first_name}},{{postcode}},...

我需要使用python替换这些值。


有什么建议吗?

3 个答案:

答案 0 :(得分:4)

这是一种有点奇怪的事情,因为PDF并不是真正的设计可以修改。根据您生成的PDF的方式,可能很难进行任何替换。你不能轻易地改变任何格式,包括换行符,所以唯一的例子就是如果你有某种形式,那么你就知道这些字段是合适的。

pyPdf可能允许您提取文本,但在编写第二个PDF时我没有看到改变它的功能。 PDFedit肯定会允许你进行更改,并且是可编写脚本的,但我不知道将它连接到Python。如果我正在阅读Joe Kington链接的页面,ReportLab只会读取加号版本的PDF文件。

我建议审核为什么你有PDF格式的模板,如果你确实需要对它进行更改,请看一下PDFedit - 这个描述没有说明什么文档的结构是,并且可能很难找到关键字。

答案 1 :(得分:3)

您可以使用Mako

from mako.template import Template

template = Template(filename='template.pdf')
output = Template.render(first_name='Simon', postcode='12345')

我忘了提及,在这种情况下,Mako模板的默认值将使用$ {first_name}和$ {postcode}。我不确定这是否可以改变。

答案 2 :(得分:0)

我使用reportlab动态创建包含页眉,页脚,图表,表格,项目符号和几种不同段落样式的10万个PDF。等。

http://www.reportlab.com/software/opensource/