java - Spring ,Java : Filling out a form and converting to PDF

标签 java forms pdf

我正在开发一个 Spring-MVC 项目,其中有用户为我们注册。现在,每当用户注册时,我们都希望填写用户的姓名、地址等信息,同时保持其中的某些部分不变,例如我们的姓名、地址等。填写完毕后,将其转换为 PDF 并将其附加到电子邮件中。我有 doc、pdf、html 格式的表格。我已经有了在电子邮件中附加文件的代码。

解决这个问题的最佳策略是什么?谢谢。

最佳答案

最好的解决方案是以 PDF 形式提供表单(AcroForm 技术)。然后,您可以使用 PDF 库使用从 HTML 表单检索到的数据填写该表单。

例如:How to fill out a pdf file programatically?

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();

如果删除行 stamper.setFormFlattening(true); 表单仍将是交互式的。通过添加该行,您可以删除所有表单字段(以及交互性)。

您甚至可以要求人们填写 PDF 表单,如下所示:Edit pdf embedded in the browser and save the pdf directly to server

我认为 Spring 附带了(一个强大的旧版本)iText。您可能想使用最新版本。请访问官方网站,了解有关 iText 5 和 iText 7 之间差异的更多信息。

关于java - Spring ,Java : Filling out a form and converting to PDF,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40420158/

相关文章:

android - 在 Android 中查看 PDF 文件

java - 显示文件夹中的歌曲到 jlist

java - 来自不同类的同步语句

java - WebSphere 和 StaleConnectionException

php - 让 CakePHP HtmlHelper 生成 "date"输入

javascript - 带有复杂选择器的 JQuery 序列化

pdf - 如何修复 PDF 文件并嵌入丢失的字体

java - Android项目出现问题

forms - 如何在表单提交时打开新窗口

pdf - Ghostscript 不会将 PDF 转换为 PDF/A。注释问题