我正在研究在PHP中构建发票和ordervoucher生成器的选项。我之前使用FPDF和TCPDF为其他场合创建了几个PDF,并且两者都工作正常,但是太麻烦了,我厌倦了它。
我觉得用任何编程语言生成PDF是非常冗长的。
有没有办法用Adobe Acrobat生成PDF蓝图,并将其用作具有可变字段/区域的模板?这样我就可以让设计师在那里创建一个信头和整体发票主题,我只会将可变部分的内容(订单行,总计,截止日期,买家详细信息)写入pdf。
简单来说,一个准系统模板系统,它读取pdf并在变量替换后再次输出。
答案 0 :(得分:6)
您可以使用表单字段创建PDF并替换源中这些字段的内容。您必须替换确切的字符数,否则PDF可能会损坏。在您的情况下,您想要添加整个表格,这可能是不可行的。
我们做了非常相似的事情但使用了不同的方法。使用http://www.setasign.de/products/pdf-php-solutions/fpdi/我们加载了PDF,并将我们想要的内容放在首位(FPDI扩展了TCPDF或FPDF)。
答案 1 :(得分:1)
您可以使用免费的Zend PDF模块:http://framework.zend.com/manual/en/zend.pdf.html
请参阅此问题以编辑现有文件或创建使用PHP换出的占位符:PDF Editing in PHP?
你可以使用FPDF来创建新的PDF文件,虽然它有它的缺陷(但很快就可以创建一些东西:http://www.fpdf.org/
答案 2 :(得分:1)
以某种元语言(如FPDF)保存模板并生成文档以便在PDF中使用二进制流和单独的字形更简单。 由于/ dev / null存在,详细程度应该不是问题。
答案 3 :(得分:1)
听起来你想要表格字段。 PDF中有两种形式:
AcroForms:使用最初内置于Acrobat 4.x&它一直延续了很长一段时间。很多软件都可以读写基于AcroForm的PDF。
XFA:新的热情。 Adobe LiveCycle Designer(随Acrobat Pro一起提供)可以为您构建一些非常漂亮的表单,这些表单只能用少量库来处理...大多数是Adobe自己的。 Adobe的服务器产品不便宜。
您的PDF库du jur也可以让您从现有PDF导入页面。您可以在任何您喜欢的应用程序中构建PDF“样板”,导出为PDF,然后使用PDF库在其上绘制。这使您可以绘制任何想要的内容,而不仅仅是可以显示的字段(艺术线条,图像,和文本,而不仅仅是文本)。
还有相当多的HTML-> PDF库。您可以使用HTML构建报表,然后将其转换为PDF,如果您觉得更顺畅的话。有些人比其他人更擅长,只有我认识的人会考虑HTML脚本(wkhtmltopdf)。