如何创建基于 Web 的 PDF 提交表单?
Posted
技术标签:
【中文标题】如何创建基于 Web 的 PDF 提交表单?【英文标题】:How to Create a Web-Based PDF Submission Form? 【发布时间】:2017-04-10 17:37:15 【问题描述】:我有一个带有几个错误框的 PDF 表单。
目前,填写 PDF 表格的人员必须打印、填写、扫描,然后通过电子邮件/传真回复给我。
我希望有一个解决方案,人们可以通过网络浏览器填写和提交表单。通过我的研究,我发现主要是第三方解决方案。但是,出于安全原因,我希望将解决方案包含在我的站点/服务器中。
非常感谢所有想法和想法。
【问题讨论】:
【参考方案1】:新版本的 Adobe Readers 允许用户直接填写 pdf。如果您可以制作这种类型的表格,他们只需以电子方式填写并上传到您的服务器。
【讨论】:
【参考方案2】:在过去一周对 PDF 生成进行研究时,我发现了 3 种可能的解决方案,每种解决方案各有利弊。
1) JSPDF 客户端 PDF 生成器,可轻松集成到任何应用程序中。
优点:
可用于生成报告,单击按钮不会在控制台窗口上回复。 在多个浏览器上进行了测试,在 Chrome、Firefox 和 IE 上呈现相同的结果。缺点:
中等分辨率。 JSPDF 的工作原理是它使用一个名为 rasterize.js 的库,该库获取 html 内容并基本上对其进行光栅化,从而使质量受到一点影响,但你几乎不知道我认为的区别。 (关于这个主题的支持很少。我一直在研究它几个小时,只有我能找到提高质量的解决方案是调整大小,并引入提高质量的抗锯齿功能。 ) 由于是光栅化的,下载后无法用于编辑 PDF。这是一个平面 PDF,这意味着 PDF 中的文本或任何内容都无法编辑。但是,如果您希望用户能够填写表单,然后单击按钮到提交 PDF 的位置,JSPDF 可以做到这一点。2) PhantomJS 是 PDF 生成的另一种选择。
优点:
质量很好,支持多个浏览器生成相同的 PDF。 PDF 在创建后即可编辑。缺点:
对如何使用它启用第三方 API 渲染(例如 Google 地图)的支持不足。如果您不熟悉 Google 地图 API,可能但很难解决。 主要支持从控制台窗口生成PDF。此外,PDF 是即时生成的。这意味着当控制台执行时,会创建一个 PDF 文件并将其发送到安装程序中指定的文件目录。未在浏览器中下载。3) Wkhtmltopdf 是 PDF 生成的另一种选择,与 PhantomJS 基本上具有相同的优缺点。
优点:
质量很好,支持多个浏览器生成相同的 PDF。 PDF 在创建后即可编辑。缺点:
依靠控制台窗口生成 PDF。 对实施客户端脚本以创建 PDF 的支持不足。他们在服务器端有文档。)【讨论】:
以上是关于如何创建基于 Web 的 PDF 提交表单?的主要内容,如果未能解决你的问题,请参考以下文章