IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Bibliothèques et frameworks PHP Discussion :

[PDF] Mpdf et pdf.js


Sujet :

Bibliothèques et frameworks PHP

  1. #1
    Membre du Club
    Homme Profil pro
    Analyste d'exploitation
    Inscrit en
    Décembre 2013
    Messages
    35
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Loire (Rhône Alpes)

    Informations professionnelles :
    Activité : Analyste d'exploitation
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Décembre 2013
    Messages : 35
    Points : 42
    Points
    42
    Par défaut [PDF] Mpdf et pdf.js
    Bonjour,

    Comme le suggère le titre j'utilise la librairie PHP mPDF et la librairie js pdf.js.

    Je me sert de mpdf pour créer des PDF.
    Je ne souhaite pas afficher ces PDF dans le viewer classique d'adode reader.
    J'utilise donc pdf.js pour afficher mes PDF.

    J'ai un cas qui me pose soucis.

    Je voudrais créer un PDF avec mPDF et dans la foulé l'afficher dans mon viewer pdf.js.

    voilà du code :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
     
    $html = '<p>Lorem Ipsum</p>';
    $mpdf->WriteHTML($html);
     
    $string_de_mon_pdf = $mpdf->Output('','S');
     
     
    $viewerJsPath ='MonSite/js/pdfjs/web/viewer.html';
     
    //Arrivé à ce stade je ne sais pas comment faire pour donner le pdf
    //que je viens de générer à iframe
    echo '<iframe width="100%" height="600px;" src="'.$viewerJsPath.'"></iframe>';
    Une solution serait de sauvegarder le PDF puis de le charger dans mon iframe:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    $mpdf->Output('path/monPdf.pdf', 'F');
    echo '<iframe width="100%" height="600px;" src="'.$viewerJsPath.'?file='path/monPdf.pdf"></iframe>';
    Mais je trouve ça affreux de sauvegarder un PDF juste pour l'afficher.

    Est ce que quelqu'un de plus clairvoyant que moi peut m'aider ?
    merci à l'avance.

  2. #2
    Modérateur
    Avatar de grunk
    Homme Profil pro
    Lead dév - Architecte
    Inscrit en
    Août 2003
    Messages
    6 691
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 39
    Localisation : France, Côte d'Or (Bourgogne)

    Informations professionnelles :
    Activité : Lead dév - Architecte
    Secteur : Industrie

    Informations forums :
    Inscription : Août 2003
    Messages : 6 691
    Points : 20 222
    Points
    20 222
    Par défaut
    Il faut que l'url de ton iframe soit le script qui génère le pdf.
    Et au lieu de le sauvegarder dans un fichier tu l'envoi au navigateur :

    GenererPDF.php
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    $html = '<p>Lorem Ipsum</p>';
    $mpdf->WriteHTML($html); 
    $mpdf->Output();
    Iframe:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    echo '<iframe width="100%" height="600px;" src="GenererPDF.php"></iframe>';
    Pry Framework php5 | N'oubliez pas de consulter les FAQ Java et les cours et tutoriels Java

  3. #3
    Membre du Club
    Homme Profil pro
    Analyste d'exploitation
    Inscrit en
    Décembre 2013
    Messages
    35
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Loire (Rhône Alpes)

    Informations professionnelles :
    Activité : Analyste d'exploitation
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Décembre 2013
    Messages : 35
    Points : 42
    Points
    42
    Par défaut
    Effectivement !

    Je travail avec Zend.
    J'ai créé une action qui génère mon pdf.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     
    //dans mon controller
    function getpdfAction() {
       //Je génére mon html
       $mpdf->WriteHTML($html);		
       $mpdf->Output();
    }
    et j'ai appelé cette action dans le src de mon iframe

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    //Dans ma vue
    $viewerJsPath ='MonSite/js/pdfjs/web/viewer.html';
    $urlAction = $this->url(array('controller'=>'mycontroller'','action'=>'getpdf',));
    echo '<iframe width="100%" height="800px" src="'.$viewerJsPath.'?file='.$urlAction.'"></iframe>';
    Ça fonctionne !
    merci grunk.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. XML to PDF
    Par joebarteam88 dans le forum XML/XSL et SOAP
    Réponses: 2
    Dernier message: 16/01/2003, 17h30
  2. [XMLRAD] Fichier PDF
    Par Sylvain Leray dans le forum XMLRAD
    Réponses: 2
    Dernier message: 09/01/2003, 10h19
  3. [] Convertir un fichier word en pdf
    Par SpaceFrog dans le forum VBA Word
    Réponses: 7
    Dernier message: 06/12/2002, 15h27
  4. Affichage de documents PDF
    Par Dajon dans le forum C++Builder
    Réponses: 5
    Dernier message: 10/10/2002, 11h36
  5. [CR] exporter en PDF
    Par Nathy dans le forum SAP Crystal Reports
    Réponses: 3
    Dernier message: 16/05/2002, 09h27

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo