Функции Forms Data Format
XXXI. Функции Forms Data Format
Введение
Forms Data Format (FDF) это формат для обработки форм в PDF-документах. Вам необходимо прочесть документацию http://partners.adobe.com/asn/developer/acrosdk/forms.php, чтобы узнать больше о том, что такое FDF и как его использовать.
Общая идея FDF напоминает HTML-формы. Разница в основном в формате передачи
данных на сервер при нажатии копки submit (это формат Form Data Format) и в
формате самой формы (которая имеет формат Portable Document Format, PDF).
Процессинг FDF-данных является одной из возможностей, предоставляемой fdf-функциями.
Но есть и ещё кое-что.
Можно также взять существующую PDF-форму и заполнить поля ввода (input)
данными без модификации самой формы. Тогда можно будет создать FDF-документ
(fdf_create()), установить значения каждого поля ввода
(fdf_set_value()) и ассоциировать его с PDF-формой
(fdf_set_file()). Наконец, он отправляется браузеру с MimeType application/vnd.fdf. Компонент Acrobat
reader вашего браузера распозн́ает MimeType, прочитает
ассоциированную PDF-форму и заполнит её данными из FDF-документа.
Если вы просмотрите FDF-документ в текстовом редакторе, вы увидите объект catalogue с именем FDF. Такой объект может содержать количество вхождений Fields, F, Status etc. Чаще всего используются вхождения Fields, которое указывает на список input-полей, и F, которое содержитfilename PDF-документа, которому принадлежат эти данные. Эти вхождения называются в FDF-документации как /F-Key или /Status-Key. Модификация этих вхождений выполняется функциями вроде fdf_set_file() и fdf_set_status(). Поля модифицируются функциями вроде fdf_set_value(), fdf_set_opt() etc.
Требования
Вы обязаны загрузить FDF toolkit с http://partners.adobe.com/asn/developer/acrosdk/forms.php
Установка
Вы обязаны скомпилировать PHP с--with-fdftk[=DIR].
Примечание: если у вас появляются проблемы с конфигурированием PHP с поддержкой fdftk, проверьте, находятся ли header-файл FdfTk.h и библиотека libFdfTk.so в соответствующих местах. Они должны быть в каталогах fdftk-dir/include и в fdftk-dir/lib. Этих директорий не будет, если вы просто распакуете дистрибутив FdfTk.
Конфигурация
Это расширение не определяет никаких директив конфигурации.
Типы ресурсов
Предопределённые константы
Эти константы определены данным расширением и будут доступны только в том случае, если либо вкомпилированы в РНР, либо динамически загружены на этапе прогона.
- FDFValue (integer)
- FDFStatus (integer)
- FDFFile (integer)
- FDFID (integer)
- FDFFf (integer)
- FDFSetFf (integer)
- FDFClearFf (integer)
- FDFFlags (integer)
- FDFSetF (integer)
- FDFClrF (integer)
- FDFAP (integer)
- FDFAS (integer)
- FDFAction (integer)
- FDFAA (integer)
- FDFAPRef (integer)
- FDFIF (integer)
- FDFEnter (integer)
- FDFExit (integer)
- FDFDown (integer)
- FDFUp (integer)
- FDFFormat (integer)
- FDFValidate (integer)
- FDFKeystroke (integer)
- FDFCalculate (integer)
Примеры
В следующем примере показано простое вычисление данных формы.
- Содержание
- fdf_add_template - добавляет шаблон в FDF-документ
- fdf_close - закрывает FDF-документ
- fdf_create - создаёт новый FDF-документ
- fdf_get_file - получает значение ключа /F
- fdf_get_status - получает значение ключа /STATUS
- fdf_get_value - получает значение поля
- fdf_next_field_name - получает имя следующего поля
- fdf_open - открывает FDF-документ
- fdf_save - сохраняет FDF-документ
- fdf_set_ap - устанавливает отображение поля
- fdf_set_encoding - устанавливает FDF-кодировку символов FDF
- fdf_set_file - устанавливает значение ключа /F key
- fdf_set_flags - устанавливает флаг поля
- fdf_set_javascript_action - устанавливает акцию javascript для поля
- fdf_set_opt - устанавливает опцию поля
- fdf_set_status - устанавливает значение ключа /STATUS
- fdf_set_submit_form_action - устанавливает акцию submit form поля
- fdf_set_value - устанавливает значение поля