SPIP - Contrib

SPIP - Contrib

[ar] [en] [es] [fr] [it]

77 visiteurs en ce moment

fontsizeup fontsizedown
[3 commentaires]

Le plugin FreepapeR v0.7.0

Visualiser les fichiers PDF dans les pages WEB

dimanche 30 novembre 2008, par franckGre

1 vote

Le plugin SPIP FreepapeR permet la visualisation dans le CMS SPIP de fichiers PDF. Il est utilisable très simplement par le biais d’une balise ou d’un modèle. Cette nouvelle version permet de paramétrer l’interface du lecteur...

L'interface paramétrable du plugin FreepapeR 0.8.0

L’interface paramétrable du plugin FreepapeR 0.7.0

 

Si un plugin d’une version antérieure est déjà installé, alors supprimer tout d’abord entièrement le répertoire plugins/freepaper avant d’installer la nouvelle version


I- Installation

Se référer au document PDF en pièce jointe, ou au site Le dedans du bocal
Une fois le plugin installé, on dispose d’un Modele contentfreepaper et d’une balise #FREEPAPER pour afficher dans la page les fichiers PDF.


II- Les nouveautés de la version 0.7.0

  • Ouverture du document selon un des 4 modes suivants :
    - ajusté à la page, ajusté à la hauteur du lecteur, ajusté à la largeur du lecteur, valeur de zoom (%)
  • Ajout d’une fenêtre d’informations sur le document
  • Lors d’un changement de page, le haut de la page est re-positionné juste sous la barre de commande
  • Personnalisation possible par fichier XML :
    • de la couleur du fond du lecteur
    • de la couleur du contour du lecteur
    • de l’épaisseur du contour du lecteur
    • des 3 images qui composent la barre de commande
    • de la position de l’axe d’alignement vertical des éléments de la barre de commande
    • des 5 boutons (3 images possibles pour chaque) de la barre de commande
    • du mode d’ouverture document


III- Les nouveautés de la version 0.6.0

  • La fonction Zoom a été améliorée : le zoom est maintenant effectué par rapport au point situé au centre de la visionneuse
  • Ajout de la fonctionnalité de visualisation « pleine page » (la visionneuse occupe tout l ’espace disponible dans le navigateur)


IV- pdf2swf pour les serveurs 1&1

Ce binaire fonctionne pour les hébergements du fournisseur d’accès 1&1 :
PNG - 2.6 ko
pdf2swf pour les serveurs 1&1

 

 

Creative Commons License Le plugin SPIP FreepapeR est mis à disposition selon les termes de la licence Creative Commons Paternité-Partage des Conditions Initiales à l’Identique 2.0 France.

Voir en ligne : Le dedans du bocal

Retour en haut de la page

3 Messages de forum

Voir toute la discussion

  • Répondre à ce message

    4 janvier 18:31 , par franckGre

    Bonjour,

    La description que tu donnes indique que le lecteur FreepapeR s’installe convenablement (dans la partie administration, il y a le logo "Get Adobe Flash Player", dans la partie publique il y a le lecteur).
    Par contre, le message "Fichier Introuvable" indique que la conversion ne s’est pas effectué convenablement.

    Pour mieux appréhender le processus d’affichage d’un document PDF, voici une rapide explication du fonctionnement du plugin :
    - Le fichier PDF joint à l’article est converti en fichier SWF grace à la boîte à outils pdf2swf (voir le chapitre "5 Installer la boîte à outils swftools")
    - Si on ne peut pas installer pdf2swf sur le serveur qui héberge le site, il demeure possible d’effectuer la conversion en local, puis de joindre le fichier converti (donc le swf) à l’article, ou mieux encore, d’uploader ce fichier par FTP dans le dossier IMG/pdf (voir le chapitre "6 Je ne peux pas installer swftools sur mon serveur").

    Tu peux commencer par activer le mode verbeux, qui donne des informations plus précises sur le déroulement de la conversion :
    - <contentfreepaper659|xmlData=freepaperSample.xml|trace=true>

    Une fenêtre sera affichée juste avant l’affichage du document à visualiser, avec un message indiquant le problème (s’il y en a un). Très souvent, le problème est que le binaire pdf2swf n’as pas pu être trouvé (penser à fixer le chemin), ou qu’il n’est pas exécutable (fixer les droits d’exécution sous Linux) (voir les chapitres "5 Installer la boîte à outils swftools" et "7 Erreur rencontrées lors de la conversion").


    Remarque : La documentation est ambigüe sur la syntaxe de l’implantation du modèle : il ne faut pas écrire de parenthèses :

    <contentfreepaperxxx                 ou xxx est l'id du document PDF à visualiser
    |xmlData=nomFichierXml              -> par défaut freepaper.xml
    |hauteur=nbPixels                 -> par défaut 600
    |largeur=nbPixels                 -> par défaut 800
    |trace=true ou false                -> par défaut false
    >
  • Répondre à ce message

    3 janvier 12:57 , par rcaron

    SPIP 1.9.2e [13170]
    Freepaper 7.0

    Lorsque j’insère <contentfreepaper659|xmlData=(freepaperSample.xml)> dans mon article, l’interface Freepaper apparaît dans la vue publique de l’article mais avec le message au centre d’un logo Freepaper en rouge "fichier introuvable".

    Que faire ?

    Merci

  • Répondre à ce message

    9 décembre 2008 02:51 , par franckGre

    Notes à propos de la version FreepapeR v 0.7.0 du 07 décembre 2008.

    Dans l’entête du fichier "javascript/freepaper_spip-min.js", il est possible de modifier les valeurs des variables suivantes :


    - m_freepaper_swfUrl="plugins/freepaper/swf/freepaper.0.7.0.swf" ; (URL du fichier swf "freepaper.x.x.x.swf")
    - m_freepaper_phpURL="plugins/freepaper/php/freepaper_spip.php" ; (URL du script PHP freepaper_spip.php)
    - m_freepaper_ExtractFromDOM=false ;(Boolean : Si vrai, alors le noeud FreepapeR est isolé du DOM pour être affiché en pleine page, puis les noeuds de la page sont restaurés dans leurs configurations initiales pour l’affichage en mode normal)
    - m_freepaper_OpenInNewWindow=false ; (Boolean : Si vrai, le lecteur Freepaper est ouvert dans une nouvelle fenêtre lors de la visualisation pleine page)


    On indique dans la documentation du lecteur FreepapeR le rôle des variables "m_freepaper_swfUrl" et "m_freepaper_phpURL", on ne reviendra donc pas dessus.

    Les 2 variables restantes ("m_freepaper_ExtractFromDOM" et "m_freepaper_OpenInNewWindow") ont une incidence sur le comportement du lecteur lorsque l’on choisi de visualiser un document en mode plein écran.



    • METHODE 1 : "m_freepaper_ExtractFromDOM=false" et "m_freepaper_OpenInNewWindow=false"

      C’est le comportement par défaut, le plus élégant et le plus rapide : pour le passage en mode plein écran, les éléments constituant la page HTML sont retravaillés. Pour cela, on intervient sur les styles (marges, dimensions,...).
      Tout se passe coté client, il n’y a pas rechargement d’actif externes. Si de multiples lecteurs FreepapeR sont présents dans la page HTML, chacun d’eux conserve son zoom, sa page affichée,..., lorsque qu’un des document est affiché en plein écran puis minimisé.

      Cependant, dans certains cas (par exemple si le lecteur FreepapeR est imbriqué dans une cascade de
      ) et pour certains navigateurs (si ce n’est pour dire tous sauf Firefox), ce calcul résulte en un affichage "au bon emplacement, mais invisible". En effet, le lecteur FreepapeR est positionné au bon endroit (donc plein écran) mais les
      englobant laissent eux une fenêtre de vision située en dehors de l’écran. On a donc comme résultat un écran vide.



    • METHODE 2 : "m_freepaper_ExtractFromDOM=true" et "m_freepaper_OpenInNewWindow=false"

      Avec cette méthode, le noeud DOM correspondant au lecteur à afficher en mode plein écran est cloné, la page entièrement vidée de son contenu, puis le noeud précédemment cloné est inséré seul dans la page et maximisé.
      Lorsque l’on revient en mode d’affichage normal, la page est reconstruite dans son état initial.
      On intervient ici sur le DOM en supprimant, clonant, insérant des noeuds.
      Cette manière de procéder permet de totalement s’affranchir des problèmes rencontrés par la méthode 1, mais a un inconvénient : à chaque fois qu’un noeud FreepapeR est inséré (au passage en mode plein écran mais aussi au retour en affichage normal), le document à afficher est rechargé et donc on perd tous les réglages qui avaient été choisis avant/après le changement de dimension (zoom, n° page, ...). En ce qui concerne la bande passante, il n’y a pas d’accroissement de trafic les documents étant rechargés depuis le cache. Si de multiples lecteurs sont présents dans la page, lors du retour en affichage normal tous les réglages de tous les lecteurs sont perdus car tous se rechargent.

      Rem : c’est le comportement par défaut attribué au navigateur Opera (pour qui le cas 1 n’existe donc jamais).



    • METHODE 3 : "m_freepaper_ExtractFromDOM=" et "m_freepaper_OpenInNewWindow=true"

      Cette méthode est une alternative à la méthode 2. Le lecteur choisi pour le plein écran est affiché dans une nouvelle fenêtre. On peut ainsi visualiser simultanément plusieurs documents de la page. Il n’y a pas de manipulation de la page originale et en conséquence aucune information n’est perdue lors du retour en affichage normal sur les lecteurs présents dans la page.
      Le seul inconvénient de cette méthode est qu’elle ouvre le document dans une nouvelle fenêtre, ce que l’on peut ne pas souhaiter.

      Lors de l’utilisation de la méthode 3 avec un fichier de configuration XML (personnalisation de l’interface) il faut bien s’assurer d’indiquer dans le fichier XML des chemins absolus (et non relatifs) pour les images. Dans le cas contraire, les images ne seraient pas retrouvées lors de l’affichage plein écran.


      Les tests ont été effectués avec :
      Firefox 2, Firefox 3, IE6, IE7, Safari 3.1.1, Opéra 9.27, Google chrome 0.4.154.29 (sous windows)
      Firefox 2, Firefox 3 (sous ubuntu)

Répondre à cet article

Retour en haut de la page

Ça discute par ici