У меня есть файл PDF (не созданный мной - я не контролирую дизайн и т. Д.), Который позволяет пользователям заполнять некоторые поля формы в Adobe Reader и сохранять результат. Я хочу автоматизировать процесс заполнения полей, используя следующие шаги:
- Извлечение данных из базы данных.
- Открыть шаблон PDF.
- Заполнить поля формы данными.
- Сохранить измененный файл в отдельном месте на диске.
- Блокировка измененного файла, чтобы поля формы больше не могли редактироваться.
- Отправить файл пользователю.
Я рад использовать PHP, Perl, Python или Java для выполнения шагов 2-5 (в порядке убывания предпочтений), но все, что я использую, должно работать в Linux (то есть не должно полагаться на библиотеки, которые например, доступно только в Windows).
Конечным результатом должен быть файл PDF, который средний пользователь может открывать и распечатывать, но не изменять (я уверен, что опытные пользователи могли бы найти способ сделать это, но я согласен, что не могу гарантировать полную защиту от изменений ). Я не хочу менять структуру PDF, просто заполняю поля формы.
Существует ли стандартное программное обеспечение для этого? Я видел упоминания о FDF Toolkit, но я не совсем уверен, что это именно то, что я хочу, и позволит ли мне впоследствии заблокировать файл, и соответствует ли то, что я хочу сделать, EULA.
Редактировать: Окончательный ответ - использовать iText (как это было предложено Марком Сторером), но реализовать его как веб-сервис, который позволяет передавать массив имен и значений полей формы и файл PDF «шаблона». Веб-сервис будет с открытым исходным кодом (и будет доступен на GitHub после того, как я его напишу), согласно AGPL, но все, что с ним связано, не должно быть.