免责声明:我一直在试图用iText来做到这一点。我已阅读,研究,询问,询问,试验,并尽我所能去做这项工作。我很气愤。请不要以为我没有尝试,只是来到这里,以便我可以让别人为我做这件事;事实并非如此。我想学习,我想弄清楚这一点。我正在寻找有经验的人的一个好方向。
简单的阅读PDF文件,读取文本和写入新的PDF文件。 (Java)
我有一个包含可编辑文本字段的PDF。我想要做的是以编程方式从该PDF中读取并从已存在的文本字段中提取文本,从我的应用中的其他位置获取文本,然后将以前的信息+新的文本信息写回原始PDF。
我曾尝试:
- 阅读PDF文件使用PdfReader
- 使用PdfStamper(PdfReader,FileOutputStream中)写入PDF
- 使用reader.getAcroFields()获取文本字段。
我已经搜索了好几天了,我无法解决这个问题。当我这样做:
String in = "C:/Users/me/Desktop/file.pdf";
String out = "C:/Users/me/Desktop/file.pdf";
PdfReader reader = new PdfReader(in);
PdfStamper stamper = new PdfStamper(reader, new FileOutputStream(out));
AcroFields form = stamper.getAcroFields();
form.setField("dateDisc1", "5/21");
它最终创建一个损坏的PDF(file.pdf)。
如果有更简单的方法可以做到这一点,请帮助我对此发表一些看法。
谢谢!
您是否尝试过使用不同的输入/输出文件名称,对吧? –
@StefanoSanfilippo是的,我试过了。那是当它给我一个腐败的PDF不会打开。 – Rincewind
我没有看到你关闭压模。你是否简单地忘记将最后的'stamper.close()'复制到你的问题中,还是真的丢失了?在后一种情况下添加它,但使用不同的文件名。 – mkl