Article PDF

Présentation d’un plugin fournissant une version PDF de l’article en cours

Présentation

Le plugin article PDF est encore développé sur la zone. Il est parfaitement fonctionnel mais possède peut être encore quelques bugs. Il permet de convertir votre article sous forme de fichier PDF. Vous pouvez alors à loisir l’enregistrer ou l’imprimer.

Le fichier pdf généré gère les liens html ainsi que les images de l’article.

Installation

Récupérer le zip du plugin sur l’espace de téléchargement de la Zone : http://files.spip.org/spip-zone/.
L’installation se déroule ensuite comme pour tous les autres plugins, cf. http://www.spip.net/fr_article3396.html.

Vous devez juste renommer le dossier article_pdf_1_9 en article_pdf

Une fois le plugin activé vous disposez d’une balise #ARTICLE_PDF à placer dans votre squelette sous la forme #ARTICLE_PDF{id_article}, et d’une balise #RUBRIQUE_PDF à placer sous la forme #RUBRIQUE_PDF{id_rubrique}. Format PDFLa balise génère alors un bouton qui vous permet d’afficher la version au format pdf de l’article

Il est aussi possible d’ajouter, dans la partie head du squelette html d’article, <link rel="alternate" type="application/pdf" href="#URL_PAGE{article_pdf}|parametre_url{id_article,#ID_ARTICLE}" /> et/ou <link rel="alternate" type="application/pdf" href="#URL_PAGE{rubrique_pdf}|parametre_url{id_rubrique,#ID_RUBRIQUE}" />, afin de lier sémantiquement la version pdf à l’article en cours.

Nota : ce plugin nécessite d’avoir la bibliothèque image GD2 sur votre serveur (ce qui est souvent le cas).

installation SPIP 3

Sous SPIP 3, il est nécessaire d’installer la librairie FPDF dans le répertoire /lib/h5c1accba-fpdf17 (le créer au besoin si l’installation automatique échoue)

Limites

Le plugin a quelques limites, notamment le générateur de pdf, qui n’accepte pas de texte en utf-8 en entrée, ce qui nécessite une conversion préalable.

Personnalisation

Vous pouvez remplacer l’icône du bouton article pdf en remplaçant le fichier plugins/article_pdf/img_pack/article_pdf.png par le votre

Quelques icônes alternatives

Auteurs du plugin :


-  Paul Sanches
-  Aquinatus
-  Cédric Morin

Ajouts

Cette documentation est sommaire et pourrait être enrichie.

Dernière modification de cette page le 20 février 2019

Discussion

172 discussions

  • 5

    Bonjour.

    Au sujet de la lib FPDF, elle est utilisée par de plus en plus de plugins... et donc qu’elle est finalement encapsuler dans un plugin de même nom : http://plugins.spip.net/fpdf.html Il serait intéressant que Article-PDF le nécessite afin qu’on n’it pas plusieurs versions de la lib installées sur son site et que l’évolution de la lib ainsi centralisée soit commune. Qu’en pensez-vous ?

    • Bonjour

      Eectivement, ce plugin fpdf est sorti car Amap et Associaspip avait les même dossier pour le même boulot, donc il serait intéréssant que cette lib soit un plugins central.

      J’ai pas rédiger d’article au sujet de ce plugins mais si il faut en faire un je le ferais.

    • Effectivement, ça peut être une bonne idée de rédiger un article de présentation et d’utilisation du plugin FPDF.

      Pour ma proposition, on attend toujours l’avis (et ou l’accord) de cvallois : je me suis rendu compte sur un site utilisant Associaspip avec FPDF activé qu’en voulant utiliser Article-PDF il faille installer la librairie h5c1accba-fpdf17 :-$

    • @Pierre : Finalement il faut faire un article pour FPDF ; afin qu’il soit dans les flux RSS de la gestion des plugins de SPIP 2 ;)

    • OK, je vais essayez de rédiger cela.

    • gilco, je l’ai commencer mais si tu pouvais me relire et me dire ou j’ai un trou ça serais bien.

    Répondre à ce message

  • Bonjour

    Petite question, je suis chez free je viens de mettre en ligne un site sous Spip 3.02 et je met le plugin ..

    mais voila il va chercher une bibliothèque et j’obtiens ce message

    Chargement impossible de la source http://www.fpdf.org/fr/download/fpdf17.zip

    Puisque free bloque toutes les mises à jour directes

    Ou dois je installer cette bibliothèque dans le répertoire

    /spip/plugins/auto/article_pdf_2_0/img_pack/fpdf17/

    ou dans

    /spip/lib/fpdf17

    Merci d’avance de votre aide éclairée

    Répondre à ce message

  • MBrice

    Bonjour,
    Ce plugin me paraît excellent... Seulement je suis confronté à un souci. Lorsque je clique sur l’icone PDF, un message d’erreur apparaît : 3 erreurs dans le squelette.
    Premier message : Erreur : filtre « texte » non défini
    Squelette en question : plugins/auto/article_pdf_2_0/article_pdf.html
    Boucle principale.

    J’ai tenté de "bidouiller" un peu dans ce squelette, en vain. Je ne suis pas assez calé. J’utilise le plugin BoutonsTexte et j’ai modifié dans les articles #EDITtexte texte en #EDITtxt txt. Je pense que l’erreur est liée à cela.
    Avez-vous une idée de ce que je devrais modifier pour que ce plugin (article PDF) fonctionne sur mon squelette ?
    Merci par avance de votre aide.
    BM

    Répondre à ce message

  • 2

    Je n’avais pas de problème ni de manipulation particulière pour faire apparaître le bouton « pdf » sur toutes les pages d’articles en spip 2 et sarka.

    En Spip 3, rien n’apparaît. Que fautil faire exactement...
    Merci.

    • J’ai la même question. Sous SPIP 2.0, il suffisait de modifier le squelette article.html. Ici, apparemment, ça n’est pas le cas. Merci d’avance pour la réponse.

    • En fait, c’est un problème de compatibilité avec zpip.

    Répondre à ce message

  • 1

    Après avoir installé la librairie h5c1accba-fpdf17 dans le bon répertoire, l’icône du pdf apparaît dans les articles mais quand on clique dessus, on obtient ce message d’erreur :
    FPDF error : Could not include font definition file
    Quelqu’un a une idée ?

    • Olivier

      Bonjour,
      j’avais ce message aussi car j’avais mis la librairie dans le dossier ecrire/lib, en le mettant dans un nouveau dossier lib, à la racine, ça fonctionne.

    Répondre à ce message

  • Bonjour ! Un document inséré dans le texte sous la forme <docxx|left> est bien transmis au pdf, mais sans l’alignement et avec une mauvaise url (monsite.com//IMG/article_PDF/IMG/jpg/monimage.jpg), peut on remédier à ces deux problèmes, dans quels fichiers agir ? Merci pour le boulot,, bonne journée, pi r

    Répondre à ce message

  • Bonjour,
    j’utilise le plugin Article_PDF_1_9 avec SPIP 1.9.2 .d
    Ca marche pas mal du tout, merci !!
    J’ai cependant un souci que je ne parviens pas à résoudre : quand j’ai dans mon article en ligne une image avec légende centrées de type <docxxx|center> , dans le PDF l’image se retrouve bien centrée mais pas le titre qui lui est cadré à gauche
    (voir exemple dans cet article : http://osi.bouake.free.fr/?Act-de-Denis-Darzacq )

    Je ne trouve pas de solution ? Quelqu’un a t’il déjà eu le problème ?

    Merci

    Didier

    Répondre à ce message

  • 4

    Bonjour,

    J’utilise un squelette evaweb et cherche à utiliser ce plugin.

    Cependant le message suivant ne me le permet pas :
    « Impossible d’activer le plugin ../plugins/auto/article_pdf_2_0
    Ce plugin nécessite la librairie h5c1accba-fpdf17
    à télécharger depuis http://www.fpdf.org/fr/download/fpdf17.zip et à installer dans lib/ »

    Bien que tout soit à jour (pluging & spip 2.12), le téléchargement automatique ne fonctionne pas.
    ... et il en est de même lorsque je télécharge ledit fichier et l’incorpore via le ftp.

    Qu’en pensez-vous ?
    Merci bcp,
    N

    • Même souci de mon côté, du coup j’ai changé la ligne 29 de plugin.xml <necessite id="lib:h5c1accba-fpdf17" ...> en <necessite id="lib:fpdf17" ...>
      Plus de message d’erreur lié à l’installation de cette libraire, par contre le plugin n’a pas l’air de fonctionner (avec spip 3 beta)

    • Le Corbeau

      pour l’instant, il suffit de descendre un peu la page pour avoir la solution

      Récupérer la lib manuellement, la mettre dans le dossier lib/ et renommer la lib en « h5c1accba-fpdf17 »
      Ce qui est bien moins fatigant que de fouiller dans un plugin pour le modifier alors qu’il sera écrasé lors de la prochaine mise à jour....

    • Bonjour,

      Où se trouve le répertoire /lib ?
      Et s’il n’existe pas où est ce qu’il faut l’installer ?
      Parce que chez moi ça ne marche pas : www.oulala.net

      Merci

    • Le Corbeau

      Le répertoire est à créer au premier niveau de spip
      le dossier de la lib est mis à l’intérieur après avoir été renommé
      De toute manière, depuis la mise à jour, j’obtiens une page blanche alors que la version précédente fonctionnait...
      Ce serait bien que les auteurs revoient de fond en comble leur notice qui ne correspond plus à rien.

    Répondre à ce message

  • Le Corbeau

    Bonjour,
    ayant mis à jour la version de mon spip suite à alerte sécurité, j’ai eu l’idée saugrenue de mettre également à jour ce plugin
    Résultat, il est clair qu’il a été profondément modifié car il renvoie le « Ce plugin nécessite la librairie h5c1accba-fpdf17 »
    De plus, il exige ce nom exact au niveau du dossier alors que le dossier de la librairie récupérée a un autre nom.
    Ce serait sympa que ces informations apparaissent dans la partie installation de l’article
    Clt

    Répondre à ce message

  • 4

    Bonjour,

    j’ai utilisé ce plugin pour produire un pdf avec les textes de tous les articles d’une rubrique, je me suis débrouillé pour que ça fonctionne mais j’ai pas mal galéré parce que je suis un peu neu-neu... mais bon, une question me reste : comment ajouter une $variable dans le fichier rubrique_pdf.html pour qu’elle soit utilisable dans /pdf/lib_pdf_spip.php

    (si j’arrivais à le faire j’agrémenterais cette page de doc...)

    merci,

     ;o)

    • Pourrais tu préciser ta demande, je ne vois pas ce que tu cherches à faire

    • oui : en utilisant le squelettes rubrique_pdf.html tel qu’il est, on a toutes les infos de la rubrique, c’est super et parfait, et on gratte dans pdf/lib_pdf_spip.php pour affiner la présentation...

      mais si on veut modifier ces infos pour avoir en plus, par exemple, tous les titres des articles, comment puis-je ajouter une variable dont la valeur sera affichée dans le document pdf...

      en faisant dans rubrique_pdf.html

      $titres_articles = '
      <BOUCLE_articles(ARTICLES){id_rubrique}{par titre}{' - '}>
              #TITRE
      </BOUCLE_articles>
      ';

      je ne récupère rien dans pdf/lib_pdf_spip.php qui aurait pu être la variable
      $titres_articles

      Mes essais sont pas convaincants, mais je m’y prend peut-être mal...?

      merci !

    • n’utilisant pas rubrique_pdf, il a fallut que je me plonge un peu dans le code,
      Il suffit que tu déclares ta nouvelle variable (en plus des modifs que tu as déjà faites) dans la fonction function GenerateTitlePage() ligne 66 pour la page de garde ou la fonction function GenerateText() ligne 170 pour la 2e page.
      modif à effectuer :

      function GenerateText()
      {
       	global $texte, $chapo, $ps, $notes, $titres_articles ;

      j’ai fait un test rapide de mon côté et sa fonctionne sans problème.
      c’est vrai que c’est un manque, la page rubrique_pdf mériterait d’être retravailler, si le coeur t’en dit n’hésite pas à commiter ou à m’envoyer tes fichiers modifiés

    • oui, super, ça marche... je pense que c’était un problème de cache... ?

      on peut tout aussi bien ajouter une fonction à côté de GenerateText() qui sera utilisée pour notre variable perso...

      en fait l’idéal serait d’avoir le choix de plusieurs modèles, je ne veux pas refaire ce qui a été fait et qui correspond à une utilité... on pourrait envisager plusiquers modèles à inclure qui appelleraient chacun un fichier différent pour une mise en page et squelettes différents ?

      on peut aussi faire une petite explication pour les modèles à inclure par les rédacteurs :

      <rubrique_pdf|id_rubrique=9>

      par exemple...

    Répondre à ce message

Ajouter un commentaire

Qui êtes-vous ?

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