манипулировать PDF-формой с заполняемыми полями формы и сохранять их доступными для заполнения пользователем?

У меня есть форма с заполняемыми полями формы, сделанная Acrobat, она довольно сложная. Через PHP я хочу «просто» прикрепить другую страницу, добавить штрих-код на страницу формы и добавить метаинформацию.

В настоящее время мне не удается сохранить заполняемые поля, или tcpdf/fpdi просто не может прочитать сжатие pdf. Я пробовал пару разных версий PDF, но пока не удалось.

Я попробовал pdflib, но теперь работаю с tcpdf и fpdi, однако, похоже, нет никакого способа заставить это произойти. Я могу прикреплять pdf-файлы и использовать шаблоны, но не в любом формате, который имеет или сохраняет заполняемые поля.

  1. Способен ли tcpdf/fpdi на это вообще?
  2. Знаете ли вы какое-либо другое решение для достижения этой цели? (на базе PHP/Linux)

person user1015139    schedule 26.10.2011    source источник
comment
Та же проблема, к сожалению, все еще сохраняется, pdftk, похоже, тоже не помогает. После обработки конечный пользователь больше не может использовать такие поля формы   -  person user1015139    schedule 02.03.2012


Ответы (1)


То, что вы хотите сделать, невозможно.

Adobe использует собственный запатентованный способ создания и заполнения PDF-форм. Adobe Reader поддерживает только заполнение PDF-форм...

  • ...которые были созданы продуктом Adobe и
  • ... которым были назначены «расширенные права», поэтому Reader действительно может сохранять данные формы вместе с документом.

Тем не менее, существует ряд методов, утилит, инструментов и программ для создания и заполнения форм PDF: Scribus, iText, pdflib, tcpdf, pdftk, Foxit, XSL FO, OpenOffice.org или LibreOffice и другие... Однако, Adobe Readers откажется заполнять и сохранять данные форм с документами, созданными с помощью этих средств.

Технический механизм, стоящий за этим, таков: Adobe подписывает свои документы цифровой подписью с помощью собственного ключа. Этот ключ известен программе Adobe Reader и всем продуктам Adobe. И вы согласились не перепроектировать этот ключ, когда приняли лицензионное соглашение Adobe Reader... --

Это означает:

  • Большинство программ для чтения PDF, отличных от Adobe, не смогут «заполнять и сохранять» формы, созданные с помощью продуктов Adobe (однако, они могут «заполнять и печатать» их), если они не имеют лицензии на указанный ключ подписи Adobe.
  • Программа чтения Adobe PDF не будет заполнять и сохранять формы, созданные с помощью продуктов сторонних производителей (однако они будут заполнять и печатать их).
person Kurt Pfeifle    schedule 19.05.2012
comment
это очень объясняет это, спасибо и извините за поздний ответ, это был один из моих первых постов здесь, и я ожидал уведомления по электронной почте. - person user1015139; 09.08.2012