将 XFA 转换为 AcroForms

AcroForms 与 XFA 表单

AcroForms 是用于在 PDF 文档中集成表单域的可填写表单。它是 Adobe 从 PDF 1.2 规范开始为 PDF 文档采用的初始表单技术。 AcroForms 允许添加表单字段作为覆盖,以从最终用户或使用文档的任何人那里收集数据。

后来,Adobe 在收购了 Accelio(一家服务提供商)后,采用了基于 XML 的 XFA 表单(XML Forms Architecture)作为 PDF 1.5 规范的一部分。 XFA 使用 XML 的功能来开发 PDF 文档中的电子表单。然而,尽管与 AcroForms 相比,XFA 是一种更新的电子表单技术,但 XFA 有一些限制,包括:

  • 缺乏对各种 PDF 对象的 JavaScript 支持,
  • XFA 表单只能使用 Adobe LiveCycle Forms Designer 创建,
  • AcroForms 的兼容性问题,
  • 缺乏从 AcroForms 到 XFA 的自动转换,
  • 与 AcroForms 相比,可访问性有限,
  • 需要开发人员技能来构建表单,
  • 等等。

由于 AcroForms 技术被认为更易于访问和使用,接下来的部分将展示如何使用 C# 和 Java 以编程方式在 PDF 中执行 XFA 到 AcroForms 的转换。

将 XFA 转换为 AcroForms

各种 XFA 到 AcroForms 的转换工具可供您执行转换。但是,为了在您的 .NET 或 Java 应用程序中集成此功能以进行自动转换,您可以使用 Aspose.PDF

在 C# 中将 XFA 转换为 AcroForms

以下是使用 Aspose.PDF for .NET 将 XFA 表单转换为 AcroForm 的步骤。

以下代码示例使用 C# 将 PDF 中的 XFA 表单转换为 AcroForms。

// 使用 XFA 表单加载 PDF
Document document = new Document("XFAFormPDF.pdf");

// 将表单字段类型设置为标准 AcroForms
document.Form.Type = FormType.Standard;

// 使用 AcroForms 保存生成的 PDF
document.Save("XFA-to-AcroForms.pdf");

在 Java 中将 XFA 转换为 AcroForms

以下是使用 Aspose.PDF for Java 将 XFA 转换为 AcroForms 的步骤。

以下代码示例展示了如何使用 Java 将 XFA 转换为 AcroForms。

// 使用 XFA 表单加载 PDF
Document doc = new Document("XFAFormsPDF.pdf");

// 将表单字段类型设置为标准 AcroForms
doc.getForm().setType(FormType.Standard);

// 使用 AcroForms 保存生成的 PDF
doc.save("XFA-to-AcroForms.PDF");

了解更多关于 Aspose.PDF

您可以使用 文档 了解有关 Aspose.PDF API 的更多信息。如果您有任何问题或疑问,请通过我们的 论坛 联系我们。

也可以看看