How to fill out a pdf file programatically? [close

2019-01-08 01:41发布

What techniques available to fill a pdf form automatically using external data and save them. I have to use data from a database to fill a template pdf and save a copy of it on disk with that data. Language and platform is not issue but it would be good if it can run on windows and Linux.

Any one can guide me through it or point to any article that might help.

2条回答
我欲成王,谁敢阻挡
2楼-- · 2019-01-08 02:09

To elaborate on the answer by duffymo you've approved, allow me to share a chapter of my book with you: manning.com/lowagie2/samplechapter6.pdf

In section 6.3.5, you'll find out how to create a PDF template using Open Office, and listing 6.19 will show you how to fill it out programmatically:

PdfReader reader = new PdfReader(src);
PdfStamper stamper = new PdfStamper(reader, new FileOutputStream(dest));
AcroFields form = stamper.getAcroFields();
form.setField(key, value);
stamper.setFormFlattening(true);
stamper.close();
reader.close();

Just like Frank Rem, I need to add that I'm the original developer of iText, the author of the books about iText, and the current CEO of the iText Group, answering this mail straight from the ISO committee that is discussing ISO-32000-2 (aka PDF 2.0) ;-)

查看更多
一夜七次
3楼-- · 2019-01-08 02:23

You can use either xsl-fo (if you like xml and xsl-t) or Lowagie's iText (Java) / iTextSharp (C#).

查看更多
登录 后发表回答