Afficher un contenu en pdf

Réduire
Ce sujet est fermé.
X
X
 
  • Filtrer
  • Heure
  • Afficher
Tout effacer
nouveaux messages

  • #16
    Re : Afficher un contenu en pdf

    Bonjour,
    Problème résolu ? Merci de passer le sujet en "réglé"
    Cordialement,
    Chabi01 - http://www.xlformation.com

    Commentaire


    • #17
      Re : Afficher un contenu en pdf

      La solution ne fonctionne pas en localhost : affichage d'un tableau
      Array
      (
      [0] => LibXMLError Object
      (
      [level] => 3
      [code] => 42
      [column] => 480
      [message] => Attribute style redefined

      [file] =>
      [line] => 239
      )

      [1] => LibXMLError Object
      Yann

      Commentaire


      • #18
        Re : Afficher un contenu en pdf

        Bizarre, je l'ai testée en localhost avec uwamp sur PC, je viens même de vérifier en php 7.0.4, au cas où....

        Quelle est votre config ?

        Pascal
        If anything can go wrong, it will...If I can help, I will ..https://conseilgouz.com

        Commentaire


        • #19
          Re : Afficher un contenu en pdf

          Je viens d'installer une nouvelle version de xampp, avec php 5.6.21
          Même résultat.
          Yann

          Commentaire


          • #20
            Re : Afficher un contenu en pdf

            Bonjour,
            Je suis en train de créer un composant dans lequel je dois générer des édition au format PDF.

            Je génère un PDF à partir de données déposées dans un formulaire.
            Dans ce formulaire j'ai un bouton qui poste (Méthode POST) les informations saisies dans le formulaire vers la page PHP qui est ensuite transformée en PDF.

            Pour cela j'utilise JSPDF.

            Je donc créé un PHP qui contient tout ce que le PDF devra contenir.
            Dans ce PHP j'ai une section MAIN (MAIN ... /MAIN) où je dépose tout ce que doit contenir le PDF (Formaté avec des CSS)

            Puis j'ai un script qui génère un PDF de tout ce qui est entre MAIN et /MAIN
            Je précise que dans mon exemple, tout est déposé dans un unique dossier. (Le fichier PHP, les fichiers .JS et la feuille de style)
            Le pdf s'affiche à l'écran et est enregistré grâce au bouton "Créer PDF"
            Le bouton "Modifier" me permet de revenir à la page précédente, car dans mon cas c'est sur cette page (le formulaire) que j'ai un bouton qui envoie mes variables (qui enrichissent mon PDF) et qui génère la page PHP qui est ensuite transformée en PDF.

            Code:

            <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//FR" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
            <html xmlns="http://www.w3.org/1999/xhtml">
            <head>
            <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
            <title>Titre du document</title>
            <link rel="stylesheet" type="text/css" href="votre_fichier.css">
            </head>

            <body>
            <div id="boutons">
            <div class="btn-form">
            <a href="javascript:createpdf()">Créer PDF</a>
            </div>
            <div class="btn-form">
            <INPUT TYPE="button" VALUE="Modifier" onClick=" history.back();">
            </div>
            </div>
            <main>
            Ici, tout ce qui doit être transformé en PDF
            </main>
            <!-- scripts -->
            <script src="jquery.min.js"></script>
            <script type="text/javascript" src="jspdf.min.js"></script>
            <script type="text/javascript" src="html2canvas.min.js"></script>

            <script type="text/javascript" src="Nom_du_fichier.js"></script>
            </body>
            </html>


            Cordialement.

            Eric
            Dernière édition par Agrepe à 04/06/2016, 16h01

            Commentaire


            • #21
              Re : Afficher un contenu en pdf

              Bonjour Eric et Pascal,

              Rappel de mon besoin : j'ai un composant qui affiche certaines informations (photos et texte). Un bouton permet l'export dans un pdf des données affichées. Pour cela, j'utilise Joomla 2.5 et la librairie Dompdf en version 0.6.0

              Je dois migrer sous Joomla 3.5.

              Ce que je constate
              - librairie Dompdf
              Cette librairie est intéressante car bien intégrée à Joomla. Très très peu de code à développer : un simple ajout sur l'url de "&tmpl=component&format=pdf"
              La version 0.7.0 de cette librairie ne fonctionne pas correctement avec ma page html (pas d'images jpg, une partie du texte absente). La version 0.6.2 me donne plus satisfaction.
              Le fonctionnement reste correct en Joomla 2.5. Par contre, plantage en Joomla 3.5 et en localhost.
              Je constate aussi une différence dans le rendu pdf entre les deux versions de Joomla : en J3.5 je ne bénéficie pas des caractères ISO 8859-2

              - librairie jspdf.
              Il existe bien une fonction "fromHtml" qui devrait me permettre d'obtenir le même résultat qu'avec la librairie Dompdf... mais la librairie fonctionne très mal. Avec une page html très simple, tout va bien. Mais avec des images... le résultat est un pdf vide.

              Conclusion : merci à Eric et à Pascal.
              Pour le moment, je n'ai pas de solution optimum et la migration de mon site vers Joomla 3.5 est une régression pour l'affichage pdf.
              Yann

              Commentaire


              • #22
                Re : Afficher un contenu en pdf

                Bonjour Yann,

                J'allais justement posé la question des jpg, car, effectivement, je ne les ai pas non plus avec cette nouvelle version.

                Je cherche un peu et je reviens si je trouve quelque chose d'intéressant.

                Pascal
                If anything can go wrong, it will...If I can help, I will ..https://conseilgouz.com

                Commentaire


                • #23
                  Re : Afficher un contenu en pdf

                  Pour l'iso, il faut ajouter une ligne dans le <head> de votre template, comme définie dans la doc: https://github.com/dompdf/dompdf/wiki/UnicodeHowTo

                  <meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>

                  Pascal
                  If anything can go wrong, it will...If I can help, I will ..https://conseilgouz.com

                  Commentaire


                  • #24
                    Re : Afficher un contenu en pdf

                    Bonjour,

                    J'ai trouvé un petit truc qui devrait aider à voir les images: ajouter enable_remote dans la fonction iniDomPdf

                    Code:
                    	protected function iniDomPdf()
                    	{
                    		$file = JPATH_LIBRARIES .'/dompdf/autoload.inc.php';
                    		if (!file_exists($file))
                    		{
                    			return false;
                    		}
                    		if (!defined('DOMPDF_ENABLE_REMOTE'))
                    		{
                    			define('DOMPDF_ENABLE_REMOTE', true);
                    		}
                    		//set the font cache directory to Joomla's tmp directory
                    		$config = JFactory::getConfig();
                    		if (!defined('DOMPDF_FONT_CACHE'))
                    		{
                    			define('DOMPDF_FONT_CACHE', $config->get('tmp_path'));
                    		}
                    		require_once($file);
                    		// Default settings are a portrait layout with an A4 configuration using millimeters as units
                    		$this->engine =new Dompdf();
                    		$this->engine->set_option('enable_remote', TRUE);
                    		return true;
                    	}
                    Avec ça, j'ai eu quand même des messages "Image not found or type unknown", car je les avais mises dans le répertoire images et DomPdf les attend dans /images. Donc, j'ai modifié mes liens vers mes images et, maintenant, c'est bien affiché.

                    En espérant que cela aide,

                    Pascal

                    PS : les lignes define en début sont inefficaces.
                    If anything can go wrong, it will...If I can help, I will ..https://conseilgouz.com

                    Commentaire


                    • #25
                      Re : Afficher un contenu en pdf

                      Bonjour Yann,

                      J'espère que les vacances ont été bonnes.

                      Je relance ce sujet car j'ai vu hier passé une mise à jour de tcpdf (qui est contenu dans le package virtuemart, mais qui est aussi chargeable à l'adresse https://github.com/tecnickcom/tc-lib-pdf).

                      En installant le package fourni avec VirtueMart (http://www.virtuemart.net/download), (j'ai cru voir que c'est la version 1.0.4), cela installe la librairie dans le bon répertoire et cela crée le répertoire /librairies/joomla/document/pdf avec son fichier pdf.php.

                      Il suffit alors récupérer le renderer du répertoire html pour le mettre au bon endroit et de "jouer" avec les components\com_content\views d'article/categories/categorie/featured en copiant view.html.php en view.pdf.php et le tour est joué.

                      J'ai fait quelques tests, dont ceux avec des images, le résultat me semble correct.

                      En espérant que cela aide,

                      Pascal
                      If anything can go wrong, it will...If I can help, I will ..https://conseilgouz.com

                      Commentaire


                      • #26
                        Je déterre ce post en mars 2018, joomla 3.8 n'a plus le dossier libraries/joomla/document/html/renderer
                        Quelqu'un sait-il où il est passé ou comment adapter la méthode "Dompdf" à cette nouvelle version de Joomla
                        Dernière édition par kmchen à 16/03/2018, 12h35
                        Thierry CHEN
                        http://www.webologix.com

                        Commentaire


                        • #27
                          Bonjour Thierry,

                          Effectivement un vieux sujet.....

                          En 3.8, les libraires ont "migré" dans librairies/src/Document.

                          Je dois avouer n'avoir pas testé récemment.

                          Pascal
                          If anything can go wrong, it will...If I can help, I will ..https://conseilgouz.com

                          Commentaire


                          • #28
                            Bonjour,

                            Après plusieurs tests, finalement, je me suis tourné vers PhocaPdf qui est composé de plusieurs parties:
                            - le composant PhocaPdf : https://github.com/PhocaCz/PhocaPDF/...pdf_v3.0.4.zip
                            - le plugin Phoca pdf Content : https://github.com/PhocaCz/PhocaPDFC...ent_v3.0.4.zip

                            La version 3.0.4 est compatible Joomla 3.8.

                            Dans le répertoire librairies/src/Document, cela installe un fichier PdfDocument.php qui prend en charge le ?format=pdf.

                            N'oubliez pas d'activer le plugin......

                            Petite remarque: cela fonctionne avec TCPDF et non DomPdf.

                            Pascal
                            If anything can go wrong, it will...If I can help, I will ..https://conseilgouz.com

                            Commentaire


                            • #29
                              Bonjour,
                              je déterre ce vieux sujet car j’aimerai beaucoup utiliser DomPDF pour générer des PDF sur chaque article Joomla.
                              Aujourd'hui, je m'aide de cette page https://www.it-swarm.dev/fr/php/joom...df/l958106323/
                              Mais le tutoriel est incomplet et impossible de faire marcher quoi que ce soit
                              je voulais savoir si quelqu'un d’entre vous aurait la gentillesse de m'accompagner dans ce chantier ?
                              je vous remercie d'avance
                              cordialement,
                              Benjamin

                              Commentaire

                              Annonce

                              Réduire
                              Aucune annonce pour le moment.

                              Partenaire de l'association

                              Réduire

                              Hébergeur Web PlanetHoster
                              Travaille ...
                              X