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

EDI, CMS, Outils, Scripts et API PHP Discussion :

page blanche lors de création de PDF avec outil HTML2PDF


Sujet :

EDI, CMS, Outils, Scripts et API PHP

  1. #1
    Candidat au Club
    Femme Profil pro
    Développeur informatique
    Inscrit en
    Septembre 2014
    Messages
    5
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 33
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Septembre 2014
    Messages : 5
    Points : 2
    Points
    2
    Par défaut page blanche lors de création de PDF avec outil HTML2PDF
    Bonjour,

    Je travaille avec l'outil HTML2PDF en générant un compte-rendu qui récupère toutes les informations dont j'ai besoin.
    Je gère la mise en page avec du CSS.

    Mais le problème que je rencontre est lorsque le contenu du CR tient sur au moins 2 pages : une page supplémentaire vierge est générée.

    Quelqu'un aurait-il déjà travaillé avec cet outil et pourrait m'aider ?

    Merci d'avance pour votre aide.

  2. #2
    Invité
    Invité(e)
    Par défaut
    Bonjour,

    si tu ne montres pas ton code, on ne peut pas faire grand chose...

  3. #3
    Candidat au Club
    Femme Profil pro
    Développeur informatique
    Inscrit en
    Septembre 2014
    Messages
    5
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 33
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Septembre 2014
    Messages : 5
    Points : 2
    Points
    2
    Par défaut avec le code, c'est mieux...
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    <?php 
    ob_end_clean();
    //je récupère mes variables
    ob_start();
    ?>
     
    <style type='text/css'>
    	#bandeau {
    	    height: 100px;
    	    padding: 5px;
    	}
     
    	#conteneurPrint{
    	    margin:0px auto;
    	    width:600px;
    	}
     
    	#menu {
    	    width: 180px;
    	    float: left;
    	    position: absolute;
    	    margin-top: 0px;
    	    font-size: 10px;
    	    font-family: Arial, Helvetica, sans-serif;
    	}
     
    	#contenu {
    	    margin-left: 180px;
    	    margin-right: 10px;
    	    font-size: 12px;
    	}
     
    	.tablePrint{
    	    font-size: 10px;
    	}
     
     
    </style>
     
    <page backtop="30mm" backbottom = "0mm" backleft="10mm" backright="1mm">
            <page_header> 
                 <div id='bandeau'>
    				<div align="left">
    					<img src='images/image1.jpg' />
    					<img src='images/image2.jpg' />
    				</div>
    			</div>
            </page_header> 
            <page_footer> 
                 [[page_cu]]/[[page_nb]]
            </page_footer> 
     
    	<?php 
    		include_once 'pageDoc.php'; //contient le contenu avec mise en page html et css
    	?>
    </page>
     
    <?php
    $content = ob_get_clean();
     
    $html2pdf = new HTML2PDF('P','A4','fr', false, 'ISO-8859-1');
    $html2pdf->WriteHTML($html2pdf->getHtmlFromPage($content));
     
    $html2pdf->Output('compteRendu.pdf');

  4. #4
    Candidat au Club
    Femme Profil pro
    Développeur informatique
    Inscrit en
    Septembre 2014
    Messages
    5
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 33
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Septembre 2014
    Messages : 5
    Points : 2
    Points
    2
    Par défaut
    J'ai pas l'impression que le code aide plus que ça, j'utilise l'outil html2pdf comme indiqué dans la documentation mais mon problème se trouve au niveau de la gestion des pages...

  5. #5
    Invité
    Invité(e)
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    		include_once 'pageDoc.php'; //contient le contenu avec mise en page html et css
    Mais encore ?

    Montre un exemple de code HTML (simplifié, avec du faux texte,...) qui génère le problème, et qu'on puisse tester.
    Un exemple de fichier PDF généré est un plus...

    Citation Envoyé par Cynthia19 Voir le message
    ...lorsque le contenu du CR tient sur au moins 2 pages : une page supplémentaire vierge est générée...
    Et sur la 1ère page générée ?
    • le code est complet ?
    • tronqué ?
    • il manque ce qui devrait passer sur la 2ème page ?


    Une (possible) explication :
    TOUT le code HTML est contenu dans un seul et même <div> ou <section> : auquel cas, HTML2PDF ne sait pas où "couper" ce contenu.

    PERSO, j'ai déjà eu ce souci :
    • j'ai "découpé" le contenu HTML en plusieurs "sections"
    • le changement de page s'effectuant ENTRE 2 sections
    Dernière modification par Invité ; 27/06/2017 à 17h39.

  6. #6
    Candidat au Club
    Femme Profil pro
    Développeur informatique
    Inscrit en
    Septembre 2014
    Messages
    5
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 33
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Septembre 2014
    Messages : 5
    Points : 2
    Points
    2
    Par défaut
    Merci jreaux62 pour tes suggestions ! J'ai essayé de mettre mes différentes parties dans différentes div et ça a l'air de plutôt bien fonctionné.

  7. #7
    Membre du Club Avatar de Elianora la blanche
    Femme Profil pro
    Développeur Web
    Inscrit en
    Avril 2005
    Messages
    102
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 38
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Avril 2005
    Messages : 102
    Points : 59
    Points
    59
    Par défaut
    bonjour,

    je sais que le sujet date un peu mais j'ai un souci similaire

    mon PDF est composé d'un grand tableau (un vrai tableau, pour présenter des données tabulaires) dont le contenu est dynamique et qui dépasse largement la page unique dans la plupart des cas (avec quelques bricoles autour)
    du coup, des pages blanches sont ajoutées, proportionnellement au nombre de sauts de pages que la lib n'a pas su faire visiblement car plus il y de pages "légitimes" (avec du contenu) plus il y a de pages blanches

    impossible de couper le tableau proprement (j'ai essayé de forcer un saut de page toutes les x lignes => ça générait encore plus de pages blanches) car je ne sais pas à l'avance quel contenu il y aura ni sa longueur

    pas grave me dis-je !
    j'ai essayé de remplacer le <table> et ses cellules par des <div style="display:table;"> et autres <div style="display: table-cell;"> => ah certes il n'y a plus de pages blanches mais ça ne ressemble plus du tout à un tableau ^^ les divs sont les unes en dessous des autres
    j'en déduis que html2pdf ne reconnait pas ces propriétés css

    du coup, là, je ne sais plus que faire (enfin si, j'ai bien une idée mais pas sûre qu'elle convienne aux utilisateurs ^^)

    y a-t-il une solution ? une astuce ?

    merci !

  8. #8
    Membre du Club Avatar de Elianora la blanche
    Femme Profil pro
    Développeur Web
    Inscrit en
    Avril 2005
    Messages
    102
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 38
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Avril 2005
    Messages : 102
    Points : 59
    Points
    59
    Par défaut
    up

    n'y a-t-il vraiment aucun contournement possible ?

    merci,

  9. #9
    Membre émérite
    Avatar de Seb33300
    Homme Profil pro
    Développeur Web
    Inscrit en
    Janvier 2007
    Messages
    1 563
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : Thaïlande

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Janvier 2007
    Messages : 1 563
    Points : 2 390
    Points
    2 390
    Par défaut
    Je ne suis pas sur d'avoir bien compris ton problème, mais as tu essayer de découper ton tableau en plusieurs tablaeux plus petit ? (sans utiliser de saut de page, en refermant le </table> puis en le réouvrant)
    Zend Certified PHP Engineer

    « Crois-tu comprendre le monde juste en matant le 20H Ou connaître l'histoire en ayant lu que l'angle des vainqueurs ? » Keny Arkana

  10. #10
    Membre du Club Avatar de Elianora la blanche
    Femme Profil pro
    Développeur Web
    Inscrit en
    Avril 2005
    Messages
    102
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 38
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Avril 2005
    Messages : 102
    Points : 59
    Points
    59
    Par défaut
    oui, j'ai essayé et le résultat était encore pire (encore plus de pages blanches), sauf avec 3 ou 4 lignes mais dans la plupart des cas, ça faisait très très vide

    le souci c'est que le contenu est dynamique donc le nombre de lignes de tableau qui peuvent "rentrer" dans une page A4 est difficile (voire impossible) à prédire

    c'est pour ça que j'ai pensé à remplacer le tableau par des divs car ce n'est pas un seul gros bloc

Discussions similaires

  1. Réponses: 3
    Dernier message: 19/08/2009, 23h57
  2. [AC-2007] Création de PDF avec acrobat 8 Pro
    Par TanKer dans le forum VBA Access
    Réponses: 1
    Dernier message: 30/04/2009, 14h37
  3. Création de PDF avec CFDocument
    Par cchevalier72 dans le forum Coldfusion
    Réponses: 3
    Dernier message: 22/06/2007, 13h10
  4. [C#] Page blanche lors avec Response (NFop)
    Par SoaB dans le forum ASP.NET
    Réponses: 2
    Dernier message: 16/06/2005, 16h26

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