# Format de formulaire

# Introduction

`Forms Data Format` (FDF) est un format de formulaire pour les documents PDF. Il est possible de lire la documentation (en anglais) à » http://www.adobe.com/devnet/acrobat/fdftoolkit.html pour plus de détails sur les tenants et les aboutissants.

L'esprit de FDF est similaire à celui des formulaires HTML. Les différences résident dans les moyens de transmission des données au serveur, lorsque le bouton `"submit"` (soumettre) est pressé (ce qui est du ressort de Form Data Format) et le format de formulaire lui-même (qui est plutôt du ressort de Portable Document Format, PDF). Gérer des données FDF est un des objectifs des fonctions FDF. Mais il y en a d'autres. Il est aussi possible de prendre un formulaire PDF, et préremplir les champs, sans modifier le formulaire lui-même. Dans ce cas, on va créer un document FDF (fdf_create()), remplir les champs (fdf_set_value()) et l'associer à un fichier PDF (fdf_set_file()). Finalement, le tout sera envoyé au client, avec le type MIME `application/vnd.fdf`. Le module `"Acrobat reader"` du navigateur va reconnaître ce type MIME, et lire le fichier PDF, puis le remplir avec FDF.

En éditant un fichier FDF avec un éditeur de texte, se trouve un catalogue d'objets avec le nom de `FDF`. Cet objet peut contenir des entrées telles que `Fields`, `F`, `Status` etc. Les entrées les plus couramment utilisées sont `Fields`, qui indique une liste de champs de contrôle, et `F` qui contient le nom du fichier PDF auquel appartiennent ces données. Ces entrées sont désignées dans la documentation PDF sous le nom de /F-Key ou /Status-Key. La modification de ces entrées est possible avec les fonctions fdf_set_file() et fdf_set_status(). Les champs sont modifiables avec les fonctions fdf_set_value(), fdf_set_opt() etc.

- Installation/Configuration
  - Pré-requis
  - Installation
  - Types de ressources
- Constantes pré-définies
- Exemples
- Fonctions FDF
  - fdf_add_doc_javascript — Ajoute du code javascript dans un document FDF
  - fdf_add_template — Ajoute un template dans le document FDF
  - fdf_close — Ferme un document FDF
  - fdf_create — Crée un nouveau document FDF
  - fdf_enum_values — Appelle une fonction utilisateur à chaque valeur FDF
  - fdf_errno — Retourne le code d'erreur de la dernière opération FDF
  - fdf_error — Retourne le message d'erreur FDF
  - fdf_get_ap — Lit l'apparence d'un champ
  - fdf_get_attachment — Extrait un fichier téléversé intégré dans un document FDF
  - fdf_get_encoding — Lit la valeur de la clé /Encoding
  - fdf_get_file — Lit la valeur de la clé /F
  - fdf_get_flags — Lit les attributs d'un champ FDF
  - fdf_get_opt — Lit une valeur dans un tableau de valeurs d'un champ FDF
  - fdf_get_status — Lit la valeur de la clé /STATUS
  - fdf_get_value — Retourne la valeur d'un champ FDF
  - fdf_get_version — Lit le numéro de version de l'API ou du fichier FDF
  - fdf_header — Émet les en-têtes HTTP spécifiques à FDF
  - fdf_next_field_name — Lit le nom du champ FDF suivant
  - fdf_open — Ouvre un document FDF
  - fdf_open_string — Lit un document FDF à partir d'une chaîne de caractères
  - fdf_remove_item — Configure le cadre FDF de destination pour le formulaire
  - fdf_save — Sauvegarde un document FDF
  - fdf_save_string — Retourne un document FDF sous forme d'une chaîne de caractères
  - fdf_set_ap — Fixe l'apparence d'un champ FDF
  - fdf_set_encoding — Modifie l'encodage des caractères
  - fdf_set_file — Définit le document PDF dans lequel afficher les données FDF
  - fdf_set_flags — Modifie une option d'un champ
  - fdf_set_javascript_action — Modifie l'action javascript d'un champ
  - fdf_set_on_import_javascript — Ajoute du code Javascript à être exécuté lorsque Acrobat ouvre un FDF
  - fdf_set_opt — Modifie une option d'un champ
  - fdf_set_status — Fixe la valeur de la clé /STATUS
  - fdf_set_submit_form_action — Définit une action de soumission de formulaire pour un champ
  - fdf_set_target_frame — Configure le cadre de destination pour l'affichage du formulaire
  - fdf_set_value — Modifie la valeur d'un champ FDF
  - fdf_set_version — Modifie le numéro de version du fichier FDF

`↑` and `↓` to navigate • `Enter` to select • `Esc` to close • `/` to open