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

L’installation se déroule ensuite comme pour tous les autres plugins, cf. http://www.spip.net/fr_article3396.html.

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 PDF

La 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

Vous pouvez aussi adapter la page PDF générée, en modifiant des copies des squelettes d’origine article_pdf.html et rubrique_pdf.html dans votre propre dossier ./squelettes/.

Auteurs du plugin:


-  Paul Sanches
-  Aquinatus
-  Cédric Morin

Ajouts

Cette documentation est sommaire et pourrait être enrichie.

Discussion

179 discussions

  • 1

    Bonsoir
    Avec Spip 4.0.8, PHP 7.4, et Article_PDF 1.0.14 ou 1.0.16
    Depuis longtemps, j’observe un comportement “erratique” du plugin Article PDF.
    Sur certains articles, ça fonctionne parfaitement, sur d’autres :
    - si je suis logué je vois une page d’erreur ;
    - pour le visiteur lambda, c’est une page blanche.

    Aujourd’hui, je pense avoir compris (?) que les pages d’erreur que je rencontre sont dues au logo de l’article.
    La première ligne de la page d’erreur indique :
    “L271: FPDF error: Interlacing not supported: IMG/logo/arton1460.png”

    Merci d’avance pour une piste de réponse.

    Par ailleurs, la page d’erreur qui s’affiche est illisible (voir l’image jointe), il faut que j’abaisse le zoom du navigateur à 30% pour pouvoir sélectionner, copier le contenu et le coller dans un traitement de texte pour le lire... Mais c’est un autre pb.

    • Quelques précisions :
      L’erreur “interlacing not supported” concerne les logos png “entrelacés” et les images png “entrelacées” affichées dans l’article.

      • Par ailleurs, pour les images .svg affichées dans l’article avec la balise <emb> l’export pdf réalisé par Article_PDF affiche le code du fichier svg.
        Exemple :
        <rdf:RDF><cc:Work rdf:about=""><dc:format>image/svg+xml</dc:format><dc:type
        rdf:resource="http://purl.org/dc/dcmitype/StillImage" /><dc:title></dc:title></cc:Work></rdf:RDF><sodipodi:namedview
        pagecolor="#ffffff" bordercolor="#666666" borderopacity="1" objecttolerance="10" gridtolerance="10"
        guidetolerance="10" inkscape:pageopacity="0" inkscape:pageshadow="2" inkscape:window-width="1920"
        inkscape:window-height="1051" id="namedview1762" showgrid="false" units="px"...
      • Les images .svg affichées avec la balise <doc> ne s’affichent pas dans le fichier pdf.

    Reply to this message

  • 1
    Benoît Labourdette

    Avez-vous réussi à le faire fonctionner avec SPIP 4.1 et PHP 8.1 ? Chez moi, cela renvoie une erreur : Erreur d’exécution plugins/auto/article_pdf/v1.0.14/article_pdf.html

    • Benoît Labourdette

      Pour préciser, voici le message d’erreur :

      1         Filtre ipt non défini        plugins/auto/article_pdf/v1.0.14/article_pdf.html        _principale        13
      
      
      2         Erreur d’exécution plugins/auto/article_pdf/v1.0.14/article_pdf.html | File […]/plugins/auto/article_pdf/v1.0.14/article_pdf_fonctions.php Line 117 : Undefined constant "_URLS_PROPRES_MAX"           /             / 

    Reply to this message

  • Bonjour,
    Suite aux mises à jour, les pdf générés n’incluent plus les images de l’article mais un lien vers celles-ci. Comment revenir au fonctionnement incluant les images?
    Ma config:
    PHP 7.0.33-0ubuntu0.16.04.15
    MySQL : 5.7.31-0ubuntu0.16.04.1
    SPIP 3.2.11 + écran de sécurité 1.4.1
    Article PDF 1.0.14
    FPDF 2.0.2
    Par avance merci de votre aide,
    Cordialement.

    Visible ici: https://www.geneacaux.fr/spip/

    Reply to this message

  • 4

    Bonjour,
    Avec Spip 4.0.4, Article PDF 1.0.13, et PHP 7.4.25
    La librairie “h5c1accba-fpdf181” est bien installée dans “lib”.

    Le clic sur l’icône de génération de PDF envoie une page vide dont le warning est :

    Fatal error: Uncaught Error: Call to undefined function lire_meta() in /Mon site/plugins/auto/article_pdf-c0647-v1.0.13/pdf/lib_pdf_global.php:199 Stack trace: #0 /Mon site/plugins/auto/article_pdf-c0647-v1.0.13/pdf/lib_pdf_spip.php(180): PDF->WriteHTML('<p><div class="...', 5) #1 /Mon site/plugins/auto/article_pdf-c0647-v1.0.13/pdf/lib_pdf_spip.php(203): PDF_SPIP->GenerateText() #2 /Mon site/plugins/auto/article_pdf-c0647-v1.0.13/pdf/lib_pdf_global.php(49): PDF_SPIP->BuildDocument() #3 /Mon site/ecrire/public/evaluer_page.php(51) : eval()'d code(304): PDF->Build('IMG/article_PDF...') #4 /Mon site/ecrire/public/evaluer_page.php(51): eval() #5 /Mon site/ecrire/public.php(157): include('/home/helem/www...') #6 /Mon site/spip.php(20): include('/home/Mon site/www...') #7 {main} thrown in /Mon site/plugins/auto/article_pdf-c0647-v1.0.13/pdf/lib_pdf_global.php on line 199 

    Une idée de ce qui cloche ?

    • un passage trop rapide en compatible spip 4 avant que spip 4 soit sortie... et des fonctions supprimés depuis.

      Je vais voir à proposer un bugfix prochaine,ent.

    • la v1.0.14 devrait corriger cela.

    • Tout à fait, pb résolu. Merci !
      Pour aller plus loin :
      Je m’aperçois (dossier IMG\articles_PDF) qu’un grand nombre de créations ne sont pas crédibles par des “humains” : articles très anciens qui ne sont plus visités par personne, heures de création improbables.
      De fait, le simple clic sur le lien “article_pdf” crée le fichier. Si un formulaire intermédiaire contenant une saisie “méchant robot” demandait la confirmation, ce serait pas mal...

    • bof, ca ralentirait le processus pour l’user legitime pour un besoin pas franchement fou fou...

      en plus on peut très bien vouloir que les moteurs de recherche et co indexe les pdf

    Reply to this message

  • 1

    bonjour,
    j’ai une erreur lors de la génération du pdf avec les images au format png

    1 L271: FPDF error: Unsupported image type: png?1624492804

    y aurait-il une solution comme par exemple de transformer les images png en jpeg ?

    • re,
      après analyse le probleme de génération provient des images au format webp.
      hors je dispose bien de l’image au format jpg dans le cache, aussi il suffirait de pouvoir indiquer à FDPF le lien de l’image
      ...imagexxx.jpeg au lieu de ...imagexxx.jpeg.webp
      si vous pouviez m’indiquer une piste

      Merci

    Reply to this message

  • Je n’arrive pas à créer un pdf.
    Ce qui est curieux c’est que l’on voit, au début de la page en partie un affichage de menus de la partie côté privé !
    J’ai bien la version adaptée, avec remise à jour, au cas où, v1.0.12,
    En survolant le lien j’ai bien le lien

    http://domaine.tld/spip.php?page=article_pdf&id_article=65

    Merci de votre aide.

    Reply to this message

  • 9

    Pour info, les dernières versions de ce plugin ont disparu de la zone de téléchargement, reste juste la version pour Spip 1.9
    (il en est de même pour d’autres plugins)

    • heu, moi je les vois bien :)

    • toutes versions de spip

    • spip version 3

    • heu, c’est une capture d’écran de quel site ca ?

    • ???
      https://plugins.spip.net/spip.php?page=telechargements

      l’adresse ou je vais depuis des années et qui était, avant, directement accessible de spip contrib
      L’adresse sur laquelle on va également avec le lien indiqué dans cet article...
      Bref le truc tout à fait officiel que vous utilisez tous :-)

    • heu.. oui alors c’est une page qui a été utilisé par quelques personnes, mais qui n’est pas vraiment officielle, et qui a priori va disparaitre.

      On a plugins.spip.net tout court pour avoir les telechargeemnts (et un jour nous esperons fusionner cela dans contrib).

      je modifie l’article pour ne plus pointer dessus (vu que l’article liste aussi deja les zips, et que l’installe en mode auto fonctionne aussi)

    • pour revenir à la page : c’est depuis le passage à git.spip.net. le tri alpha n’est plsu correct. Mais si vous allez sous S vous verrez ensuite les versions du plugin.

      C’est un peu chelou, j’ai ouvert un ticket ailleurs, car je ne sais pas comment résoudre

    • C’est plus que chelou, il y a un stock de plugins en vrac et en plus, ils sont sur 3 lignes, bonjour le scroll.
      Après, ne ne comprend pas votre histoire de page non officielle.
      Je vais bien sur “plugins.spip.net tout court pour avoir les telechargeemnts” et, n’étant ni geek, ni informaticien, je vous avoue que je me contente de cliquer sur téléchargement ce qui me semble logique. Je tombe donc sur la page que je vous ait indiquée et que vous dite non officielle et inutilisée...
      Je pense que vous avez un peu compris le problème. J’arrête donc de polluer la page de ce plugin avec du HS :-)
      Bonne soirée

    • Ah bah moi je cherche le nom du plugin qui m’intéresse, et je tombe sur sa page.

      Et puis de toute facon les zip sont aussi dispo ici alors...

    Reply to this message

  • 14
    Philippe Robin

    bonjour

    pour info, l’activation de ce plugin nuit au bon fonctionnement du plugin de squelette html5_editorial.

    il empeche le squelette de récupérér les icones géres par https://fontawesome.com/v4.7.0/icons/

    à la place il y a des petits carrés.
    voili voilou ...

    • hum, je vois pas trop comment ce plugin pourrait generer ca. tu es sur qu’il y a pas d’autres plugins qui bloquent?

      si c’est le cas, ’essaierai de regarder plus en détails.

    • Philippe Robin

      bonsoir

      quand je le désactive, j’ai bien les icones susmentionées, quand je l’active et que je rafraichis le cache, je n’ai plus d’icones ...
      d’ou ma conclusion. mais je ne suis pas un expert. Et j’ai quelques autres plugins, mais c’est celui ci qui donne ce dysfonctionnement.

    • je viens de mettre le squelle en local. Juste pour savoir où cela serait censé être les icones ?

    • Philippe Robin

      sur le squel d’origine, voir la pièce jointe. on ne peut mettre qu’un pièce par message, je fais donc 3 messages de réponses

    • Philippe Robin

      en haut à droite

    • Philippe Robin

      haut milieu de la page d’accueil

    • peux tu me mettre le lien vers quel squelette lui même ? je suis pas sur d’avoir installé le bon

    • Philippe Robin
    • hum, même sans le plugin je vois pas ces icones. Il y a un truc à régler?

    • Philippe Robin

      En utilisant le plugin “Liens vers les réseaux sociaux” (sociaux), vous aurez les icônes des réseaux que vous aurez choisis.

    • hum je reproduit pas ce bug avec “article pdf”.

      Il me faudrait du coup un exemple en ligne.

    • Philippe Robin
    • hum. La depuis l’extérieur je peux difficlement reproduire. On diraitque c’est la requete des polices qui est incomplète, mais du diable si je comprend le lien avec article_pdf

      La seule solution que je vois pour aller plus loin est que vous m’envoyiez en privé un export de la base - en supprimant les données personnels.

    • Philippe Robin

      bonjour

      pour info, une mise à jour de SPIP de 3.2.2 vers 3.2.4 semble avoir corriger le problème.

      merci à vous.

    Reply to this message

  • 12

    Bonjour
    Existe-t-il un tuto (pas à pas) pour un béotien qui voudrait utiliser le plugin PDF ?
    A part charger le plugin je ne vois pas comment et où mettre les ajouts codes nécessaires.
    Merci d’avance
    Cordialement

    • il y a deux solutions
      -  modifciation des squelettes, ce qui permet de placer le lien précisement au bon endroit sur l’interface publique du site
      -  depuis peu, et sous peu qu’on soit sous SPIP 3++, possible d’ajouter automatiquement le pdf comme document joint à l’article.

      Laquelle voulez vous?

    • Bonjour Maïeul
      L’option automatique (donc sans aller modifier le squelette bien trop obscur pour moi !) consiste-t-elle à avoir une icône pdf et clic si besoin d’’éditer l’article en pdf ? Si oui je préfère simple....
      Je suis en SPIP 3.1.8 Sarka-SPIP 3.4.8 SVN [109550]
      Merci

    • dans aucun cas le PDF n’est éditable. L’option automatique = permet de joindre automatiquement le pdf comme document joint, qui donc pourra être automatiquement téléchargeable.

    • Ok le pdf est généré (ouvert ou téléchargé). Cette option m’irait bien
      Merci

    • Jamais testé ce mode, donc pas sûr qu’il marche.

      Mais donc: sur la page de gestion des plugins, pour chaque plugin activé (ou presque) tu as une petite image de clef à molette (enfin je suis pas sur que ce soit une clef à molette). Si tu clique dessus ca t’envoie vers le formulaire de config du plugin.

      Et pour le plugin article_pdf, tu as une option unique à cocher, puis valider le formulaire.

      Après je ne sais pas exactement à quel moment le pdf sera généré

    • sur le plugin je n’ai pas de “clef” pour configurer ???
      Ci-joint capture écran

    • on dirait une veille version de SPIP.

      Quelle version utilisez vous ? C’est indiqué en bas de page, normalement.

    • ah! mais SPIP pdf ce n’est pas article_pdf. Ce sont deux plugins distincts.

    • et désolé, j’avais oublié l’intefface de SPIP 3.1. Donc le problème est que vous n’avez pas installé ce plugin mais spiPDF : générer des contenus sur mesure en PDF qui pour le coup est complexe à mettre en œuvre.

    • Ok j’y vois plus clair
      Je suis hébergé chez Nursit qui ne m’a pas mis le plugin article_pdf en choix (probablement qu’il est en cours de test chez eux ?)
      Je vais de suite leur demander de me le proposer au téléchargement.
      Je suis en SPIP 3.1.8 Sarka-SPIP 3.4.8 SVN [109550]
      Je vous tiens au courant sur ce fil
      Merci beaucoup

    • je me demande aussi si ce n’est pas parce que chez nursit ils sont en php 7 et que pour le moment le plugin n’est pas compatible php 7 (mais en cours).

    • Si c’est le cas je risque d’attendre pour avoir le plugin.
      Je vous dirais
      Merci

    Reply to this message

  • 17

    Bonjour,
    depuis quelques temps, j’avais des soucis avec ce plugin (Le texte n’apparaissait plus etc etc...)
    Je viens de percuter que ce moment correspond au passage de mon hébergement en php 7.0.22

    J’ai fais le test de revenir en php 5.6 et tout refonctionne comme avant. (J’ai bien quelques soucis au niveau des images mais le texte est à nouveau généré.)
    Par contre, ne connaissant rien en PHP, je ne peux donner d’autres indication.

    Bonne journée

    • J’ai oublié de préciser que je suis chez OVH mutualisé

    • J’ai eu le temps de tester pour adapter à PHP7.

      Une version prototype est disponible ici

      https://files.spip.net/spip-zone/article_pdf_v1.zip

      je ne garanti pas que tout fonctionne parfiatement n’ayant pas testé sur des vrais cas, mais les retours sont bienvenus.

    • Attention!
      Aucun texte, ni image ... en dehors des liens présents dans l’article.
      Exemple sur http://laccreteil.fr/spip.php?article400
      Bonne journée.
      Michel

    • bizarre, “chez moi ca marche”.

      Je vais regarder plus en détail ce soir.

    • effectivement il y avait des problèmes en cas d’image. La nouvelle version du plugin pour php 7 (1.0.5) devrait résoudre cela.

    • Bonsoir,
      Je n’ai pas vu de mise à jour dans la liste des plugins “auto”, doit-elle être effectuée manuellement?

    • Bonsoir,
      Dans la liste “auto” des plugins de mon site, la mise à jour n’est pas visible et celui installé est Article PDF 1.0.2 - stable :
      Documentation
      par
      chag, Paul Sanches, Aquinatus, Cédric Morin
      Version :
      1.0.2 SVN [112763]
      Préfixe
      article_pdf
      Répertoire :
      plugins/auto/article_pdf/v1.0.2/

    • oui alors j’ai basculé en “test” le temps d’être sur que cela fonctionne, pour éviter que les gens fassent une emise à jour alors qu’on est pas sur. Donc oui, installation manuelle (pour l’instant).

    • Impossible de télécharger la version pour SPIP3.2 :


      Version 0.4.17
      (ZIP – 158 ko)
      SPIP 2.0, SPIP 2.1, SPIP 3.0, SPIP 3.1, SPIP 3.2


      Message reçu :
      Objet non trouvé
      L’URL demandée n’a pas pu être trouvée sur ce serveur. Si vous avez tapé l’URL à la main, veuillez vérifier l’orthographe et réessayer.
      Si vous pensez qu’il s’agit d’une erreur du serveur, veuillez contacter le webmestre.
      Error 404
      files.spip.net
      Apache/2.4.25 (Debian)


    • Avec la nouvelle version 1.0.5, toujours pas de texte (uniquement des liens)... et pour les image c’est variable :
      1) http://laccreteil.fr/spip.php?article400
      2) http://laccreteil.fr/spip.php?article406
      Sans parler d’un formulaire intégré...
      Bon week-end.
      Michel

    • as tu vidé IMG/articles_pdf avant? parce que je suis pas sur qu’il regenere

    • J’ai également essayé avec des articles qui n’avaient pas été testés et qui n’avaient jamais fait l’objet de traitement en PDF, sans plus de résultat.

    • bizarre.

      pourrais tu m’envoyer par mail
      -  le contenu de la page
      -  les images associés.

    • Quel article, et sur quel email?
      vous pouvez tester par vous-même sur http:laccreteil.fr => hébergement OVH

    • j’ai besoin du code SPIP de l’article + des images.

      A m’envoyer sur monprenom@monprenom.net

    • Bonsoir,
      je viens d’installer la version test et j’ai passé mon hébergement en PHP7.
      Le plugin fonctionne bien, je n’ai pas testé de fond en comble mais sur des articles dont le PDF n’avait jamais été généré, le résultat est conforme.

      Et un site en PHP7, ça va tout de même plus vite :)

      Bonne soirée.

    Reply to this message

Add a comment

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 / PostgreSQL
  • 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 apparait.

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.

Who are you?
[Log in]

To show your avatar with your message, register it first on gravatar.com (free et painless) and don’t forget to indicate your Email addresse here.

Enter your comment here

This form accepts SPIP shortcuts {{bold}} {italic} -*list [text->url] <quote> <code> and HTML code <q> <del> <ins>. To create paragraphs, just leave empty lines.

Add a document

Follow the comments: RSS 2.0 | Atom