Accueil du site > Outils de publication > FreepapeR > Le plugin SPIP 3 FreepapeR 2 v1.0.0

Le plugin SPIP 3 FreepapeR 2 v1.0.0

Visualiser les fichiers PDF dans les pages WEB

jeudi 25 octobre 2012, par Franck Ruzzin

Le plugin SPIP FreepapeR permet la visualisation en ligne de fichiers PDF. Il s’installe sur un serveur web sous forme de plugin pour le CMS SPIP.



 



La documentation complète de FreepapeR 2 version 1.0.0 se situe en téléchargement au pied de l’article, dans le document nommé "Utilisation du plugin SPIP 3 FreepapeR 2 version 1.0.0".

 

Les nouveautés de la version 1.0.0

  • Support du mode multi fichier (le document pdf est converti en un fichier par page). Cela permet :
    • un chargement plus rapide du document (seules les pages visualisées sont chargées). Cela est très notable dans le cas de documents importants (par leur nombre de page ou leur poids)
    • une amélioration des performances d’affichages
    • un diminution de la mémoire utilisée sur le poste client
  • Ajout du modèle permettant la saisie de l’URL du document à afficher (et plus de son identifiant SPIP)


Pour un bon fonctionnement de la roulette de la souris et des touches de déplacement du clavier, il est nécessaire d’installer la version 2.2 de swfobject.


pdf2swf 0.9.1 pour les serveurs 1&1

Ce binaire fonctionne pour les hébergements du fournisseur d’accès 1&1
Zip - 1.3 Mo
pdf2swf v 0.9.1 pour les serveurs 1&1


pdf2swf 0.9.0 pour les serveurs OVH

Ce binaire fonctionne pour les hébergements du fournisseur d’accès OVH
Zip - 1.2 Mo
pdf2swf v 0.9.0 pour les serveurs OVH


pdf2swf 0.9.1 pour les serveurs Windows

Ce binaire fonctionne pour les hébergements sous Windows
Zip - 1.7 Mo
pdf2swf v 0.9.1 pour les serveurs Windows



Si vous produisez un fichier binaire pdf2swf pour une autre distribution Linux, n’hésitez pas à me le communiquer. Je le mettrais à disposition des utilisateurs de FreepapeR sur ce site.

 

 

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

9 Messages de forum

  • Le plugin SPIP 3 FreepapeR 2 v1.0.0 Le 1er novembre 2013 à 19:24 , par spipfactory

    Bonjour Franck
    Je me présente fondateur de la plateforme SpipFactory.com
    Je me permet de vous contacter car suite au questionnement de certain de nos utilisateurs

    « Existe t’il un plugin qui permet de lire un PDF comme un livre »

    Je me suis donc tourner vers « Le plugin SPIP 3 FreepapeR 2 v1.0.0 »
    de http://lededansdubocal.net/
    je rencontre un pb a l’installation, âpres avoir lu et essayer de suivre la Documentation plugin FreepapeR 2 , du jeudi 25 octobre 2012

    Plantons le décor :
    Nous sommes donc sous Spip SPIP 3.0.11 [20757] et en mutualisations, les mutualisés sont donc dans le repertoire /sites,Nous somme heberger par OVH

    Intallation de : freepaper2swf-1-0-0 le plugin FreepapeR 2 avec une version spécifique de swfobject, qui n’écrase pas les éventuelles

    le lecteur s’affiche mais pas le document, et aucune erreur

    Exemple

    Donne :

    http://spipfactory.com/Les-PDF?var_...

    une idée , un coup de pouce merci

    Répondre à ce message

    • Le plugin SPIP 3 FreepapeR 2 v1.0.0 Le 2 novembre 2013 à 10:05 , par Franck Ruzzin

      Bonjour,

      En étudiant la page avec firebug, voilà la réponse ajax lors de l’appel au script php freepaper2_spip.php (permet la conversion du fichier .pdf en .swf pour être lu par freepaper) :

      input URL : http://spipfactory.com/sites/spipfa...
      - >Input File :
      - >/home/www/spipfactory/public_html/sites/spipfactory.com/IMG/pdf/framab­ook3_spip-1-9_v1_art-libre.pdf
      - >Output File :
      - >/home/www/spipfactory/public_html/sites/spipfactory.com/IMG/swf/framab­ook3_spip-1-9_v1_art-libre.pdf.swf
      - >
      - >EXEC RETURN VALUE : 127

      RES:totalFiles=0

      Il y a une erreur de retour de 127 (Documentation freepaper, page 15 -> EXEC RETURN VALUE : 127 le fichier pdf2swf n’a pas été trouvé), ce qui signifie que le fichier exécutable pdf2swf n’a pas été trouvé à la racine du plugin (Documentation freepaper, page 11 -> 9 - Installer la boîte à outils swftools).

      Cela est certainement dû à la mutualisation, qui induit une de faire recherche différente (de la recherche normale) pour retrouver et les scripts à utiliser et les documents à afficher. J’ai pas mal galéré par le passé pour que cela fonctionne et je dois bien avouer que je n’ai plus ni le temps ni l’envie de me pencher sur ce problème.

      Cordialement,
      Franck

      Répondre à ce message

  • Le plugin SPIP 3 FreepapeR 2 v1.0.0 Le 28 octobre 2014 à 21:51 , par François

    Bonsoir Franck,

    Merci et bravo pour votre plugin qui me permet d’afficher de beaux documents en mode livre.
    Je viens de passer mon site de spip 2 à spip 3, le plugin fonctionne toujours mais le mode livre n’est plus activé par défaut. Pouvez-vous me redire comment paramétrer modelefppII pour que le mode "livre feuilletable" soit affiché d’office au chargement de la page ?

    Je me posais aussi une autre question : est-il possible, toujours dans le paramétrage de modelefppII, d’adapter automatiquement la largeur du cadre à la résolution d’écran de l’utilisateur, au lieu de mettre un nombre fixe de pixels ?

    Merci pour votre aide, et bonne soirée.

    Cordialement,
    François

    Répondre à ce message

    • Le plugin SPIP 3 FreepapeR 2 v1.0.0 Le 1er novembre 2014 à 18:16 , par Franck Ruzzin

      Bonjour François,

      Dans le répertoire du plugin FreepapeR,il existe un sous-répertoire « xml » dans lequel se situe un fichier nommé « freepaper.xml » (s’il n’est pas présent, le créer). Ce fichier de configuration est lu et les valeurs qu’il défini viennent surcharger les valeurs par défaut de comportement (images, boutons à afficher, ...).
      Il est aussi possible de spécifier un fichier de configuration ayant un nom différent. Il suffit pour cela de passer l’information (variable xmlData des balises ou paramètre xmlData du modèle) lors de l’implantation.

      Ainsi, pour fixer la mise en page initiale du document fixer la valeur de l’attribut initialLayout.
      mise en page initiale : "mono", "verticalList", "stack", "book" (Valeur par défaut : "mono").

      Exemple (début du fichier de configuration xml) :

      freepaper backgroundColor="0xcde5fa" borderColor="0x204890" borderWidth="4" initialDisplay="F" initialLayout="book"

      ......

      ......

      ......

      /freepaper

      (cf. documentation page 20)

      Oui, il est possible d’indiquer lors de l’insertion du modèle ses dimensions, eventuellemnt en % par rapport à son conteneur

      La syntaxe complète est :
      modelefppIIxxx ou xxx est l’id du document à visualiser
      |xmlData=nomFichierXml -> par défaut freepaper.xml
      |xmlLang=nomFichierXmlLocalisation -> par défaut .xml
      |hauteur=nbPixels ou xx% -> par défaut 600
      |largeur=nbPixels ou xx% -> par défaut 800
      |multi=true ou false -> par défaut true
      |trace=true ou false ou auto -> par défaut auto
      |wmode=window ou opaque ou transparent -> par défaut window

      (cf. documentation page 5)

      Cordialement,
      franck

      Répondre à ce message

      • Le plugin SPIP 3 FreepapeR 2 v1.0.0 Le 4 novembre 2014 à 22:27 , par François

        Bonsoir Franck,

        Merci pour toutes ces précisions, j’ai créé le dossier freepaper.xml et ça fonctionne parfaitement pour activer le mode livre par défaut et afficher les boutons que l’on souhaite.

        Lors de l’implantation du modelefppII, le réglage de la largeur en % du conteneur fonctionne très bien aussi, mais curieusement pour la hauteur, quel que soit le pourcentage choisi, la fenêtre reste très mince verticalement. Je me demande donc comment est calculée la hauteur du conteneur ?
        ça n’a pas une grande importance, j’ai pu mettre une hauteur en pixels, c’est surtout la largeur qui est importante pour ne pas afficher un "livre" trop grand ou trop petit par rapport à la résolution de l’écran du visiteur, mais bon c’est rageant d’essayer une modification et de ne pas comprendre pourquoi elle ne fonctionne pas...

        Merci encore pour votre aide précieuse et bonne soirée.

        François

        Répondre à ce message

        • Le plugin SPIP 3 FreepapeR 2 v1.0.0 Le 5 novembre 2014 à 21:58 , par Franck Ruzzin

          Bonsoir François,

          La mise en forme de la hauteur est toujours un peu compliquée en html.

          On peut par exemple gérer une hauteur pour les conteneurs de plus haut niveau, html et body (extrait de la feuille de style :

          html, body {
             height: 100%;
          }

          Dans la page html, si on place un div avec un réglage css pour une hauteur de 100%, il prendra toute la place disponible.
          Ce div peut par exemple être le conteneur freepaper.

          Cordialement,
          Franck.

          Répondre à ce message

  • Le plugin SPIP 3 FreepapeR 2 v1.0.0 Le 19 février 2015 à 14:19 , par Samuel

    Bonjour,

    Je viens de trouver cet excellent plugin pour mettre en forme les pdf mais je rencontre une difficulté pour l’utilisation sur notre serveur intranet sous Debian dont je dispose tous les droits. Le lecteur m’indique que le fichier est introuvable.

    - J’ai installé et activé le plugin freepaper sans aucune difficulté dans Spip via la gestion des plugins
    - J’ai renommé en freepapersample.xml en freepaper.xml dans le dossier xml du plugin
    - J’ai pu compiler pdf2swf et je l’ai copié à la racine du plugin freepaper
    - J’ai bien la balise #INSERT_HEAD dans les balises de mon squelette
    - J’ai bien vérifié les droits, tout appartient à www-data avec les droits 755
    - J’appelle bien swfobject.js dans l’en-tête de mon squelette
    - J’ai téléchargé un fichier pdf que j’ai inclus dans un article et appelé par la commande

    Ci-dessous, le code généré lors de l’appel du document (entre les 2 balises script) :
    //cacher l’image getFlashPlayer
    fpdomutil.addNewRule(0,"#freepaper1438 a img","display : none",0) ;
    //insérer la mire
    fpdomutil.addNewRule(0,"#freepaper1438","background-image : url(http://intranet/spip/plugins/freepaper2/images/ajax-loader.gif)",1) ;
    fpdomutil.addNewRule(0,"#freepaper1438","background-position : center center",2) ;
    fpdomutil.addNewRule(0,"#freepaper1438","background-repeat : no-repeat",3) ;

    $(function()
    //Options pour l’insertion du lecteur FreepapeR
    var flashvars=
    xmlDataPath : "plugins/freepaper2/xml/freepaper.xml",
    multi : "true",
    docURL : "http://intranet/spip/IMG/pdf/journal_janvier_2015.pdf"
     ;
    var params=
    width : "600",
    height :"800",
    wmode : "window",
    scale : "noScale",
    allowFullScreen :"true"
     ;
    var attributes=
    trace : "auto",
    altContentId : "freepaper1438"
     ;
    //Insertion du lecteur FreepapeR 2
    if (typeof freepaper2Obj !="undefined")
    freepaper2Obj.embedDoc(flashvars,params,attributes) ;

    ) ;

    Le lecteur s’affiche correctement mais avec le message en rouge "Fichier Introuvable". Pourtant, le fichier PDF est accessible avec son url.

    Dans le doute, j’ai créé un dossier SWF avec les droits 777 dans IMG mais pas plus de réussite.

    Si quelqu’un a une piste, je suis preneur.

    Merci d’avance,

    Répondre à ce message

    • Le plugin SPIP 3 FreepapeR 2 v1.0.0 Le 25 février 2015 à 14:29 , par Franck Ruzzin

      Bonjour Samuel,

      En positionant l’attribut "trace" à true, quel est le message d’erreur affiché ?

      modelexxx|trace=true
      ou
      #FPP2STD{trace=true}

      Franck

      Répondre à ce message

      • Le plugin SPIP 3 FreepapeR 2 v1.0.0 Le 26 février 2015 à 12:08 , par Samuel

        Bonjour Franck,

        Merci pour ton aide et ton retour rapide. Grâce aux traces, je me suis aperçu qu’il pointait par défaut vers /var/www, j’ai modifié la configuration du plugins et tout est rentré dans l’ordre.

        Enfin presque ;)

        Sur un serveur 2003 sous citrix sur lequel j’ai Internet Explorer 8 et Firefox dernière version, le plugin ne fonctionne que sur Firefox.

        Internet Explorer me retourne les 2 erreurs ci-dessous :
        Détails de l’erreur de la page Web

        Agent utilisateur : Mozilla/4.0 (compatible ; MSIE 8.0 ; Windows NT 5.2 ; Trident/4.0 ; .NET CLR 1.1.4322 ; .NET CLR 3.0.4506.2152 ; .NET CLR 3.5.30729 ; .NET CLR 2.0.50727 ; .NET4.0C ; .NET4.0E)
        Horodateur : Thu, 26 Feb 2015 11:03:58 UTC

        Message : Identificateur, chaîne ou nombre attendu
        Ligne : 10
        Caractère : 9182
        Code : 0
        URI : http://intranet/spip/plugins/freepaper2/javascript/freepaper2_spip-min.js

        Message : ’fpdomutil’ est indéfini.
        Ligne : 213
        Caractère : 3
        Code : 0
        URI : http://intranet/spip/spip.php?article595&var_mode=calcul

        A mon avis, l’erreur sur fpdomutil est liée directement à la première erreur car je suppose que le script freepaper2_spip-min.js n’est pas chargé vu que IE considère qu’il traine une erreur.

        Javascript est bien activé car la page appelle déjà d’autres scripts sans difficultés. Je suppose qu’au caractère 9182 une fonction inconnue pour IE8 est appelée et qu’il retourne donc l’erreur indiquée.

        Le résultat est que la page me présente le lien vers le téléchargement d’adobe player alors que celui-ci fonctionne déjà très bien (YouTube me l’a prouvé).

        Merci

        Répondre à ce message

Répondre à cet article