FPDF

Ce plugin sert à générer des pdfs via la librairie fpdf

Ce tout petit plugin a été créé pour permettre une utilisation de la bibliothèque (library) FPDF par tout autre plugin. En effet, plusieurs plugins, dont Associaspip et AMAP, utilisent déjà cette librairie. Or si deux plugins intègrent séparément le zip, elle serait présente deux fois, peut-être en des versions différentes et incompatibles ; tandis que là on a une seule installation et une mise à jour commune pour tous les plugins utilisant FPDF.

La bibliothèque objet FPDF permet de fabriquer des PDF sur mesure, contrairement aux autres plugins qui ne génèrent que le PDF d’un objet éditorial (l’article) dans un formatage prédéfini. Cette bibliothèque de méthodes s’adresse aux développeurs de plugins : elle permet d’utiliser toutes les tables et filtres de SPIP mais ne fournit pas les pages PHP qu’il faut écrire soit-même !

Contrairement à PDFlib et ClibPDF, qui sont gratuits pour un usage non-commercial, FPDF est vraiment un logiciel libre d’où son choix préférentiel

La version 0.0.3 inclut aussi la libraire complémentaire FPDI permettant l’éditer, de fusionner des pdfs existants. Par exemple, on peut ainsi créer des pdfs personnalisés en partant d’un pdf patron.

Voir Réaliser un PDF personnalisé avec FPDF

Installation

De préférence, utiliser la fonction d’installation automatique des
plugins (pour SPIP 2 & 3).

Pour les versions 1.9 de SPIP, télécharger le zip, dézippez-le, puis suivez la procédure normale d’installation.

Utilisation

-  Déclaration dans le plugin
Pour utiliser cette bibliothèque dans vos plugins, il faut le déclarer dans votre plugin.xml :
<necessite id="fpdf" version="[1.0.0;]" />
ou
<utilise id="fpdf" version="[1.0.0;]" />

Utilisation dans les fichiers : niveau 1
Pour charger la librairie, dans vos plugins, utliser le code :

define('FPDF_FONTPATH','font/'); 
include_spip('fpdf');
// include_spip('fpdi');  // pour charger FPDI

À partir de là, vous pouvez utiliser les méthodes de FPDF conjointement à l’API de SPIP.

Pour instancier un objet à tout moment :

$mon_pdf = new FPDF();
// ....

Utilisation dans les fichiers : niveau 2
Vous pouvez étendre la classe FPDP par une classe PDF et y redéfinir certaines méthodes, par exemple dans pdf/extends.php à la racine du plugin.

Ensuite il faudra appeler cette classe via

include_spip('pdf/extends');

.

Pour instancier un objet avec la classe étendue :

$mon_pdf = new PDF();

Discussion

Une discussion

  • 1

    Bonjour les écureuils. C’est une bonne idée que de mutualiser cette librairie par l’usage de ce plugin de développement.

    Mais, le plugin a une librairie très ancienne. La nouvelle (pas si nouvelle, 2015 je crois) apporte quelques nouvelles options. Notamment il devient inutile de préciser le chemin des fontes s’il est bien dans le repertoire de la librairie (define(’FPDF_FONTPATH’,’font/’) ; est inutile).

    J’ai mis à jour pour moi-même le plugin mais comment vérifier que les plugins qui utiliseront le plugin fpdf ont une librairie à jour ? En effet, on ne peut pas se baser sur la version du plugin fpdf pour connaitre la version de la librairie...

    Des suggestions ?

    Répondre à ce message

Ajouter un commentaire

Avant de faire part d’un problème sur un plugin X, merci de lire ce qui suit :

  • Désactiver tous les plugins que vous ne voulez pas tester afin de vous assurer que le bug vient bien du plugin X. Cela vous évitera d’écrire sur le forum d’une contribution qui n’est finalement pas en cause.
  • Cherchez et notez les numéros de version de tout ce qui est en place au moment du test :
    • version de SPIP, en bas de la partie privée
    • version du plugin testé et des éventuels plugins nécessités
    • version de PHP (exec=info en partie privée)
    • version de MySQL / SQLite
  • Si votre problème concerne la partie publique de votre site, donnez une URL où le bug est visible, pour que les gens puissent voir par eux-mêmes.
  • En cas de page blanche, merci d’activer l’affichage des erreurs, et d’indiquer ensuite l’erreur qui apparaît.

Merci d’avance pour les personnes qui vous aideront !

Par ailleurs, n’oubliez pas que les contributeurs et contributrices ont une vie en dehors de SPIP.

Qui êtes-vous ?
[Se connecter]

Pour afficher votre trombine avec votre message, enregistrez-la d’abord sur gravatar.com (gratuit et indolore) et n’oubliez pas d’indiquer votre adresse e-mail ici.

Ajoutez votre commentaire ici

Ce champ accepte les raccourcis SPIP {{gras}} {italique} -*liste [texte->url] <quote> <code> et le code HTML <q> <del> <ins>. Pour créer des paragraphes, laissez simplement des lignes vides.

Ajouter un document

Suivre les commentaires : RSS 2.0 | Atom