Есть ли собственный класс / библиотека PHP, который поддерживает fill_form с xfdf? - PullRequest
2 голосов
/ 22 января 2010

Во-первых, я уже исследовал это на SO и Google. На самом деле, исходя из этого, я довольно скептически отношусь к тому, что мне нужно, существует. Я почти на том этапе, когда я мог бы отказаться от следующих 6 месяцев своей жизни, чтобы написать что-то с нуля, поскольку кажется очевидным, что всем нужен серверный заполнитель форм, родной для PHP.

Хорошо, простите за напыщенную речь ...

Вот моя ситуация:

1. Мне нужно доставлять предварительно заполненные формы PDF моим пользователям.

Поскольку форма находится за аутентификацией на основе файлов cookie, Adobe Reader не будет открывать файл xfdf, а вместо этого передает задачу браузеру. Это проблема для пользователей Linux и других пользователей, которые не используют Adobe Reader в качестве программы чтения PDF.

О, и Adobe еще не написала 64-битный плагин для Snow Leopard, поэтому треть моих пользователей вынуждена менять Safari для работы в 32-битном режиме каждый раз, когда они печатают эту форму.

Учитывая вышесказанное, доставка PDF-файла, уже заполненного таким образом, чтобы его можно было распечатать в Preview, Foxit и т. Д., Постепенно становится наиболее очевидным решением.

2. Я не могу использовать pdftk

Это немного глупо, но поскольку pdftk является древним и требует gcj для компиляции устаревшей версии itext, которую он использует, я не могу установить pdftk на моем хост-компьютере. На сервере нет gcj, и я бы предпочел не запрашивать его установку для этого одного случая.

Кроме того, даже если бы я мог установить pdftk, я могу выполнять только passthru() и другие операции командной строки через CGI, чего я также хотел бы избежать.

3. На моем хосте в настоящее время не установлен PDFLib,

, поэтому я не могу использовать расширение PDF в php. Не то чтобы он предлагал эту функцию, но я подумал, что, возможно, ее можно использовать для добавления словаря fdf в общую форму, так же, как это делает itext / pdftk.

Я думал, что все потеряно, пока не узнал о TCPDF и FPDF. Похоже, что у TCPDF более сильный послужной список и больше возможностей, но я не могу найти что-либо в Google или их документации по заполнению серверной формы.

Если это еще не очевидно, мне не нужна библиотека для генерации FDF или XFDF. У меня уже есть это вниз. Но этого оказывается недостаточно для моих пользователей, которые просто хотят комбинированный продукт.

Итак, я думаю, мои вопросы:

  1. Существует ли предварительно созданный метод для вывода нового PDF-файла, который является общей формой с заполненными данными из XFDF?

  2. Если нет, то есть ли обходной путь, который не влечет за собой просто запись значений в верхней части полей формы (в отличие от полей)? Запись значений поверх полей означает, что javascript не будет проверять значения и что мне потребуется каждый раз вручную изменять значения потока.

  3. Если нет для обоих, есть порт pdftk, который я еще не нашел, который работает с PHP и не просто вызывает двоичный файл через командную строку?

Любая помощь с этим очень ценится. Если кто-то захочет помочь мне создать такую ​​библиотеку, дайте мне знать, я уже усердно работаю, пытаясь изучить синтаксис PDF, на всякий случай.

1 Ответ

0 голосов
/ 01 октября 2012

TCPDF позволяет доставлять предварительно заполненные формы. Пожалуйста, проверьте их пример на - http://www.tcpdf.org/examples/example_014.phps, особенно поле даты и переключатели в нем.

...