У меня есть заполненный PDF, который использовался для заполнения простого файла XFDF. Используя VS.NET 2010, я читаю документ XFDF, заполняю всю необходимую информацию и заполняю PDF, используя ds.WriteXML (XFDFName). XFDF записывается и запускается через Process.Start (XFDFName). Это все в приложении WinForms. Этот метод работал как чемпион в течение нескольких лет. До сих пор ...
Проблема, с которой я столкнулся, заключается в том, что я не смог экспортировать данные в формат XFDF из-за того, что файл был создан в Adobe LiveCycle. Я заметил, что варианты экспорта были либо (1) XML, либо (2) XDP. В прошлом я был в состоянии экспортировать в XFDF. Ничего страшного, подумал я, просто другой формат. Однако я боролся с обоими этими вариантами. После некоторых размышлений я решил использовать формат XDP.
У меня собран набор данных со всей необходимой мне информацией, я получаю сообщение об ошибке при открытии вновь созданного XDP с использованием Process.Start (XDPName). Откроется Reader, и меня приветствует следующая ошибка: "Adobe Reader не может открыть файл GUID_HERE.xdp, поскольку он не поддерживается типом файла или поврежден (например, он был отправлен как вложение электронной почты и не было правильно декодировано). "
Я попытался использовать прямую ссылку на PDF, но это тоже не сработало. Поэтому я решил вставить сериализованный PDF в XDP в разделе.
Этот XDP-файл выглядит следующим образом ( спасибо Дину J ):
<?xml version='1.0' encoding='UTF-8'?>
<?xfa generator='AdobeDesigner_V7.0' APIVersion='2.2.4333.0'?>
<xdp:xdp xmlns:xdp='http://ns.adobe.com/xdp/'>
<xfa:datasets xmlns:xfa='http://www.xfa.org/schema/xfa-data/1.0/'>
<xfa:data>
XML is here - matching the dynamic fields in the PDF.
</xfa:data>
</xfa:datasets>
<pdf xmlns=\"http://ns.adobe.com/xdp/pdf/\"><document>
<chunk>
Base64 encoded PDF
</chunk>
</document></pdf>
</xdp:xdp>
Я думаю, что генерируемый мной XDP является фиктивным, но для дальнейшего усложнения - если я открою Reader, нажмите Инструменты> Формы> Дополнительные параметры формы> Управление данными формы> Импорт данных и выберите созданный файл XDP все поля заполнены так, как я ожидаю.
Так что, по сути, где-то явно есть разъединение:
У меня есть XDP-файл со всей необходимой мне информацией.
У меня есть PDF-форма, которую мне нужно заполнить XDP-файлом.
Информация в XDP правильно соответствует всем именам элементов управления из PDF.
Но когда я запускаю XDP-файл, Reader сообщает мне, что он поврежден / не поддерживается. Насколько я понимаю, когда вы запускаете XDP-файл, он должен правильно запускаться / заполняться с помощью Reader, правильно?
Любая информация очень мне поможет. Благодаря.