使用itext7并在尝试加载XFA表单时,我得到了:
System.InvalidCastException:'无法转换类型的对象 'System.Xml.Linq.XText'键入'System.Xml.Linq.XElement'。'
源代码:
var pdfReader = new PdfReader(package.PdfTemplate);
pdfReader.SetUnethicalReading(true);
using (var document = new PdfDocument(pdfReader, new PdfWriter(writeMS)))
{
var acroForm = PdfAcroForm.GetAcroForm(document, true);
var xfa = acroForm.GetXfaForm();
var dataXml = _dataGenerator.GenerateXfaFormData(package);
xfa.FillXfaForm(dataXml);
xfa.Write(document);
}
异常抛出
var acroForm = PdfAcroForm.GetAcroForm(document,true);
答案 0 :(得分:0)
构建XfaForm
时确实存在一个不包含<xfa:datasets>
条目的问题。
问题已在iText 7.0.5-SNAPSHOT
版本中修复。可以找到包含源和修复的存储库here。