C#读取XFA表单数据

本文关键字:数据 表单 XFA 读取 | 更新日期: 2023-09-27 18:21:21

我正在尝试以编程方式从Livecycle创建的表单中读取字段值。我尝试使用AcrobatCOM组件打开文档,它似乎可以工作,经过一些反思,我设法获得了实际的字段名称,但每个字段的值似乎都是困难的部分。

此外,我知道我相信我实际上需要使用不同的方法来提取值,因为它是XFA形式的PDF。

(请不要告诉我查看Adobe PDF SDK中提供的示例,因为它们非常糟糕,对我的问题毫无用处——我已经阅读了Adobe文档中的所有内容)。

谢谢大家。

C#读取XFA表单数据

我在使用Acrobat和LiveCycle(XFA)表单时使用iText/iTextSharp。您需要访问LiveCycleXMLDOM作为起点:

iTextSharp示例:

string sourcePdf = @"c:'livecycle.pdf";<br>
PdfReader reader = new PdfReader(sourcePdf);<br>
XmlDocument xmlDoc = reader.AcroFields.Xfa.DomDocument;

您需要熟悉XFA规范才能使用DOM。

也许,您可以使用第三方库,如ABCPdf来提取字段值(这不是广告,我在类似的情况下使用了这个库,尽管不久前)。

另一个机会是,如果有问题的PDF在您的控制之下,您可以使用LifeCycle生成的PDF文件的HTTP发布功能(AFAIK,一旦用户按下"发送"按钮,它们可以将字段的值发送到预先配置的Web地址)。