У меня есть форма Adobe LiveCycle, которая создается динамически. Нам нужно загрузить XML данных в эту форму. Я пробовал это с IText, и это сработало. Но после заполнения формы она потеряла интерактивность. Как мне заполнить форму, чтобы она по-прежнему генерировала поля при открытии и выполняла JavaScript позади нее? Для заливки я использовал следующий фрагмент кода (шаблон Itext):
public class FillXFA
{
public static readonly String DEST = "dest/path";
public static readonly String SRC = "src/path";
public static readonly String XML = "xml/path";
public static void Main(String[] args)
{
FileInfo file = new FileInfo(DEST);
file.Directory.Create();
new FillXFA().ManipulatePdf(DEST);
}
protected void ManipulatePdf(string dest)
{
PdfDocument pdfdoc = new PdfDocument(new PdfReader(SRC), new PdfWriter(dest));
PdfAcroForm form = PdfAcroForm.GetAcroForm(pdfdoc, true);
XfaForm xfa = form.GetXfaForm();
// Method fills this object with XFA data under datasets/data.
xfa.FillXfaForm(new FileStream(XML, FileMode.Open, FileAccess.Read));
xfa.Write(pdfdoc);
pdfdoc.Close();
}
}