我正在使用C#。 我一直在寻找并寻找一种方法来做到这一点。 我在使用PDF格式字段的ADDING操作中找到了plenty of examples iTextSharp,但没有关于回读现有行动的信息。
我已经存在PDF格式的表单验证(alpha,字母数字等) 我正在创建一个填写这些表单的程序,我需要以编程方式 检查哪些字符有效(通常使用我所见过的JavaScript和REGEX。)
有没有办法获取此JavaScript,以便我的程序可以验证输入?
答案 0 :(得分:1)
原来我需要阅读完整的XFA流来获取有关表单字段的所有详细信息。
来自this answer this user的代码将获得完整的XFA流:
public string ReadXfa(PdfReader reader) {
XfaForm xfa = new XfaForm(reader);
XmlDocument doc = xfa.DomDocument;
reader.Close();
if (!string.IsNullOrEmpty(doc.DocumentElement.NamespaceURI)) {
doc.DocumentElement.SetAttribute("xmlns", "");
XmlDocument new_doc = new XmlDocument();
new_doc.LoadXml(doc.OuterXml);
doc = new_doc;
}
var sb = new StringBuilder(4000);
var Xsettings = new XmlWriterSettings() {Indent = true};
using (var writer = XmlWriter.Create(sb, Xsettings)) {
doc.WriteTo(writer);
}
return sb.ToString();
}