HTML2PDF: un formulaire PDF en ligne automatique

La génération dynamique de PDF depuis une page Web étant très demandée j'ai fini par m'y mettre. Pour ce faire j'utilise la bibliothèque HTML2PDF.
Bonne surprise en travaillant sur mon formulaire de contact, cette bibliothèque génère des formulaire PDF tout à fait utilisables.

Pré-requis

HTML2PDF utilise en fait deux bibliothèques : FPDF pour les programmes en PHP 4 et TCPDF pour les programmes en PHP 5. Je ne serais trop vous conseiller d'utiliser la version PHP 5.
Normalement le code HTML doit être écrit en HTML 4 et doit être valide.
Pour l'utiliser quelques connaissances en PHP, HTML et CSS sont obligatoires. Mais le niveau nécessaire n'est pas très élevé et le forum est plutôt bien fait.

Rapide présentation de l'utilisation

La bibliothèque doit être installer sur votre serveur, ça va sans dire.
Vous devrez faire une maquette pour l'affichage de vos pages. Cette maquette doit être écrite avec un langage de balises proche du HTML.
Ensuite vous n'avez plus qu'à fusionner votre maquette et le contenu de votre page via un peu de code PHP.
Vous trouverez toutes les informations utiles sur le forum officiel.
À noter que, pour moi, le plus difficile a été de réaliser la maquette du fait de la gestion, parfois curieuse, du CSS.

Et mon formulaire PDF ?

En pratique vous allez injecter du code HTML dans un gabarit qui sera analysé par la bibliothèque de manière à générer un PDF fonctionnel. Le rendu des balises est donc prédéfini.
Le comportement des balises input, select et textarea est donc prévisible. Une fois le PDF généré ces balises donnent des champs de formulaire tout à fait exploitables.
La seule limite est que les attributs non compatible HTML 4 pour les inputs ne seront pas pris en compte.
De plus les boutons du type « envoyer » ne fonctionnent plus une fois converti en PDF. Je n'ai pas testé l'insertion de code JavaScript, mais j'imagine que cela doit être tout à fait possible.

Vous pouvez voir un exemple de formulaire PDF généré dynamiquement à cette adresse (merci de cliquer sur le petit lien « version pdf ») :
http://www.philippe-poisse.eu/index.php?page=contact&langue=fr
Vous noterez que la page qui est utilisée est écrite en HTML 5.

Au final, en moins d'une heure si votre maquette n'est pas trop complexe, vous pouvez facilement générer un formulaire PDF à partir d'une simple page Web.

Ajouter un commentaire

Le code HTML est affiché comme du texte et les adresses web sont automatiquement transformées.

La discussion continue ailleurs

URL de rétrolien : http://blog.philippe-poisse.eu/index.php?trackback/52

Fil des commentaires de ce billet