请告诉我iTextSharp中是否有任何函数替换(pdx文件中的“xx”,“yy”)函数而不更改文件的其余部分。
答案 0 :(得分:2)
简短回答:否你不能用iText做到这一点。
更长的答案:PDF是一种显示格式,因此在呈现PDF时,会做出很多关于页面和字符布局和定位的决定。 iText in Action的第6章在介绍为什么它不是一项微不足道的任务时有一个很好的描述。您可以从Chapter 6免费阅读publisher's website。
答案 1 :(得分:1)
我通过PDF表单字段找到了一种方法。
String formFile = Server.MapPath("~/") + "source.pdf";
String newFile = Server.MapPath("~/") + "sink.pdf";
PdfReader reader = new PdfReader(formFile);
PdfStamper stamper = new PdfStamper(reader, new FileStream(newFile, FileMode.Create));
AcroFields fields = stamper.AcroFields;
// set form fields
fields.SetField("{TO}", "John Doe");
fields.SetField("{FROM}", "2 Milky Way, London");
stamper.FormFlattening = true;
stamper.Close();