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

184 discussions

  • Bonjour,
    J’ai un problème moi avec ce plugin là. je l’ai installé, j’ai fais comme c’est indiqué d’après l’article, mais je vois l’icone d’impression en pdf!
    ke faire?

    Responder a este mensaje

  • je viens de faire un constat que je pensais être un bug, mais d’après la capture d’écran dans l’article de présentation du plugin, ce ne doit pas être le cas : le logo de l’article n’est pas redimensionné selon le squelette (et si ce n’est pas possible, au moins selon la page —A4— du PDF..!) du coup, le logo trop grand (je suis d’accord qu’il n’est pas raisonnable de les avoir à des tailles inadmissibles) est tronqué et recouvre l’introduction/résumé. je pense qu’il faudrait, dans le cas le plus simple, utiliser le filtre image_reduire{taille-adaptée-pour-A4-peut-être-320px?}

    à part ça, ce plugin est une petit bijou et il n’y a pas de souci apparent avec l’UTF8 sur mon site.

    Responder a este mensaje

  • Bonjour,

    Bravo pour ce plugin ! Juste une question, comment faire pour faire apparaître le ou les auteurs sur la page de garde ? Actuellement sauf erreur de ma part ils n’apparaissent nulle part.

    Merci d’avance !

    Philippe

    Responder a este mensaje

  • 1

    Bonjour,

    Je me permets de reposter ce message, après avoir tenté de régler le problème moi-même, sa,s succès.

    Je tente l’installation du plugin article_pdf sur un site :
    -  SPIP 2.0.8 [13982] ;
    -  plugins : cfg, Crayons, Inscription2, Couteau Suisse, Bonux 2.0 ;
    -  et bien entendu Article_PDF_2_0 Version : 0.2 [28420] — stable.

    Sous SPIP, le jeu de caractère de la base de donnée est : iso-8859-1.

    Le répertoire du plugin : article_pdf.

    J’ai réalisé une petite page de test.

    Mais j’obtiens cette erreur lorsque je clique sur l’icône PDF :

    Parse error : parse error, unexpected ’<’ in /webhome/ipr/html/ecrire/public.php(174) : eval()’d code on line 3

    Je constate que d’autres ont une erreur un peu similaire. Il s’agit peut-être d’une toute petite erreur de ma part (où placer les bons fichiers ?).

    Quelqu’un a-t-il une idée pour corriger ce problème ?

    GS

    Responder a este mensaje

  • 17

    Bonjour,
    je suis sur 2.0.6 ; le plugin ne fonctionne pas car le nouveau spip interprète spip.php?page=article_pdf&id_article=185 comme spip.php?article185&_pdf. Je m’en suis aperçu en utilisant un article_print que me donnait le même soucis.
    Pour que çà fonctionne j’ai tout simplement renommer article_pdf.html en pdfarticle.html

    Cordialement

    • Salut,

      J’ai le même souci mais ta solution ne fonctionne pas chez moi...

      Désolé, je n’ai pas de solution ni d’idée

      ++

    • Effectivement le fait de changer le nom en pdfarticle ne fonctionne que si je recalcule la page. D’où ma question : comment fait on pour appeler une page html qui n’est pas dans le répertoire squelettes et qui se trouve dans un sous répertoire du répertoire plugin.
      Cordialement

    • Merci ca marche.

      Perso j’ai modifié : article_pdf_mes_options.php

      Pour y ajouter une copie de la function balise_ARTICLE_PDF_dist($p) que j’ai appelé function balise_URL_ARTICLE_PDF_dist($p).

      La seule modification de code est :

      $texte->texte='article_pdf';

      qui devient

      $texte->texte='{{url_}}article_pdf';

      Il faut enfin ajouter dans le dossier modeles du plugin le fichier : url_article_pdf.html qui est une simplification de son grand frère article_pdf.html soit :

      [(#ENV{id_article}|?{' ',''})
      #URL_PAGE{pdfarticle,id_article=#ENV{id_article}}
      ]

      sans oublier donc le fichier article_pdf.html de la racine du plugin a renommer pdfarticle.html

    • Ok Merci je test et vous tiens au jus!

    • J’ai modifié les fichiers comme dit et me retrouve avec l’erreur suivante:

      1- Aucun squelette 'modeles/{{url_}}article_pdf.html' n'est disponible...
      
      2- erreur de compilation

      -  spip 2.0.6 [13835]

    • Mea culpa, c’est ma faute.

      J’ai mis le code en texte normal au début :

      $texte->texte=’url_article_pdf’;

      avec url_ en gras puis j’ai voulu le mettre dans un cadre sans enlever les accolades.

      Voici le bon texte :

      $texte->texte='url_article_pdf';
    • Bonjour Taryck,
      je ne suis pas encore arrivé à ce que cela fonctionne.
      Même si j’appelle en dur la page spip.php?page=url_article_pdf?id_article=694 cela me renvoie l’erreur décrite par nico4peace.

      Si j’ai bien compris ta solution :

      -  On modifie «article_pdf_mes_options.php» qui se trouve dans le répertoire du plugin «article_pdf» de la manière suivante :

      • on copie/colle toute la function
        function balise_ARTICLE_PDF_dist($p)
      • on renomme celle collée par
        function balise_URL_ARTICLE_PDF_dist($p)
      • dans cette dernière on change le texte (qui correspond à la ligne 9 de l’ancien)
        $texte->texte='article_pdf';

        par

        $texte->texte='url_article_pdf';

      -  On cree un fichier «url_article_pdf.html» dans le répertoire modèle dans lequel on met le code suivant :

      [(#ENV{id_article}|?{' ',''})
      #URL_PAGE{pdfarticle,id_article=#ENV{id_article}}
      ]

      -  Enfin on renomme article_pdf.html en pdfarticle.html

      Est ce bien cela ?

      Une piste peut être : la balise

      #ARTICLE_PDF{id_article}

      ne fonctionne pas rien ne s’affiche ou plutôt si que

      {id_article}

      Merci d’avance.

    • Voici les modif faites sur le plugin.

      et pour l’appel dans mon squelette SPIP ca donne :

      <a class="texte1" href="#URL_ARTICLE_PDF"><img src="#CHEMIN{FSGT/pdf.gif}" border="0" /> Version PDF</a>

      Mais sinon ta description des taches à faire est exacte.

      Taryck.

    • Yes merci à vous

      j’ai télécharger le dernier zip et tout fonctionne .... sauf oui sauf l’inclusion des images qui se trouve dans le texte de l’article.

      A la place de l’image j’ai :

      <!-- htmlA --»<img src='IMG/png/centre_loisir2.png' width="700" height="477" alt="" /><!-- htmlB --»

      est ce que ça pourrai venir du fait que le site soit sur un sous domaine? Je pense que non vu que le logo de l’article lui s’affiche!

      d’avance Merci

    • Merci Taryck, çà marche, je ne connaissais pas cette balise : #URL_ARTICLE_PDF. Elle n’est pas mentionnée dans l’article.

    • je ne connaissais pas cette balise : #URL_ARTICLE_PDF. Elle n’est pas mentionnée dans l’article.

      MDR ! Normale c’est moi qui l’ai introduite pour ceux comme moi qui voulais maitriser le lien dans leurs squelettes.

      Pour le problème d’image de Nicolas.. désolé mais mes capacité s’arrêtent là. Faut demander au développeur du plug-in.

      Taryck.

    • Bonjour Taryck,

      Comme d’autres, je bute sur l’édition en pdf. J’ai utilisé les fichiers du plugin «article_pdf_2_0» que vous avez modifiés. Pas d’amélioration pour le moment (j’utilise un squelette IENSP 2.0 standard).

      Dans votre message du 24 mars, vous mentionnez une ligne de code pour l’appel dans le squelette. Pourriez-vous me dire dans quel fichier se place cette ligne de code ? Est-ce dans «article.html» du dossier «squelettes» ?

      Merci d’avance pour votre aide.

    • Bonjour,

      Le lien auquel je fais allusion est pour moi dans article.html du dossier «squelettes».
      En fait l’exemple de code fournis est à insérer là ou vous voulez faire des «impressisons en pdf».
      Généralement cela concerne les articles.

      Pouvez vous faire des captures écran et/ou préciser le résultat (erroné) obtenu ?
      Ou préciser sur quoi vous buttez ?

      Car pour moi comme pour les autres cela a résolu le «problème».

      Taryck.

    • Salut

      Voici la génération de fichier que j’obtiens. Les photos sont remplacées par un bout de lien.

    • Ton image est illisible car trop petite

      Peux tu en mettre une plus grosse ?
      Peux tu mettre le code source de ton article.html ?

      Merci.

    • Concernant article.html de mon squelette de site j’intègre comme :

      <div class="interne droite">Enregistrer l'article : <a href="#URL_ARTICLE_PDF" alt="Article en version PDF"><img src="#CHEMIN{plugins/article_pdf/img_pack/article_pdf.png}" border="0" /></a>

    • image trop petite
      et fichier article.html incomplet

      Je ne vois pas ou est afficher :

      <div class="interne droite">Enregistrer l'article : <a href="#URL_ARTICLE_PDF" alt="Article en version PDF"><img src="#CHEMIN{plugins/article_pdf/img_pack/article_pdf.png}" border="0" /></a>

      ou du moins ou cela est censé être affiché

      Donne ton e-mail que l’on ne pollue pas le forum avec ca.

    Responder a este mensaje

  • Nicolas F

    Bonjour,

    Félicitation pour ce plugin.

    Je souhaiterais un renseignement : comment justifier le texte ?

    Merci d’avance

    Responder a este mensaje

  • 1

    Je me suis déja servi de ce plugin de façon satisfaisante mais là j’ai un bug : l’icone PDF désigne un lien de la forme: http://monsite.tld/spip.php?page=article_pdf&id_article=xx mais quand je l’appelle, la même page est affichée et la barre d’adresse m’indique :
    http://monsite.tld/spip.php?articlexx&_pdf.

    De plus j’ai des articles article_PDF_article_yy.pdf stockés dans /IMG, mais aussi des article_yy.pdf dans /IMG/article_PDF . Mais pas pour mes derniers articles.

    Erreur dans la réécriture des url, dans le plugin ou dans mon installation (droits d’accès à vérifier) ?

    • J’ai le même problème que livier, sauf que j’utilise «url propres» :
      l’icone PDF désigne un lien de la forme : http://monsite.tld/spip.php?page=article_pdf&id_article=xx mais quand je l’appelle, la même page est affichée et la barre d’adresse m’indique : http://monsite.tld/(url-propre)&_pdf. (J’utilise Spip 2.0.7.)

    Responder a este mensaje

  • Petite question à la communauté.
    Comment faire pour ajouter l’auteur de l’article dans la page de garde ? Cette information est parfois utile :)
    Merci pour votre aide.

    Responder a este mensaje

  • Bonjour,

    L’affichage des images dans les fichiers PDF semble problématique et malgré mes efforts, je n’arrive pas à localiser dans les scripts les éléments concernés du plugin article-pdf. Aussi, ne voulant plus d’affichage d’images du tout, quelles seraient les lignes de codes à annuler afin de n’avoir plus que le texte mis en page.

    Une idée ?

    Merci de votre aide
    Zboob

    Responder a este mensaje

  • je viens d’installer la modif de Taryk... et mes images n’apparaissent pas non plus dans le PDF, ce qui est très génant vu que mes articles étaient basés la-dessus... Quelqu’un a trouvé une solution pour les faire s’afficher correctement?

    Responder a este mensaje

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én es usted?
[Conectarse]

Para mostrar su avatar con su mensaje, guárdelo en gravatar.com (gratuit et indolore) y no olvide indicar su dirección de correo electrónico aquí.

Añada aquí su comentario

Este formulario acepta los atajos de SPIP, [->url] {{negrita}} {cursiva} <quote> <code> y el código HTML. Para crear párrafos, deje simplemente una línea vacía entre ellos.

Añadir un documento

Seguir los comentarios: RSS 2.0 | Atom