1

Bonjour,

Je tente d'utiliser votre librairie (version 4) et je bute sur un probleme, j'ai un fichier html en entrée ou je recupere uniquement le contenu du <body></body>, dans celui ci il n'y a que du texte comme ci dessous auquel je rajoute les balises <page></page> tout autour pour rajouter une image de fond sur chaque pages :

<page>
<p class="MsoBodyText"><font face="Verdana"><b><font size="2">c)</font></b><font size="2">
Manifestement, <b>Rousseau</b> dans <i>l’Emile ou de l’éducation</i> nous rend
simplement compte du fait ou plus exactement de l’expérience assez commune de
l’appréciation spontanée de nos actions ou de celles des autres, de ces
sentiments d’agir en accord avec soi-même ou bien en désaccord avec soi que l’on
peut éprouver en faisant telle ou telle chose. Et si nous pouvons l’utiliser ici
c’est que la question de savoir s’il est plus facile de connaître son devoir
peut trouver une réponse en creux dans ce texte. </font></font></p>
</page>


la création du PDF s'effectue sans soucis sauf qu'il arrive que j'ai une page quasi blanche au milieu du pdf, la coupure se fait au milieu d'un paragraphe de texte sans aucun code/balise html. Je ne comprend pas.

En fichier joint voila l'apercu de ce que cela donne :

Fichier joint : DhLl (Capture d’écran 2010-03-30 à 23.11.57.png)

Merci d'avance si quelqu'un a une idée.tromb

2

Je pense qu'un exemple de code html qui reproduit l'erreur systématiquement, ainsi que le code utilisé dans ce cas-là pour générer le PDF aiderait.

3


ob_start();
include(dirname(__FILE__).'/untilted.htm');
$content = ob_get_contents();
ob_end_clean();

require_once(dirname(__FILE__).'/../html2pdf.class.php');

$html2pdf = new HTML2PDF('P', 'A4', 'fr', false, 'windows-1252');
$html2pdf->pdf->SetProtection(array(), '');
$html2pdf->writeHTML($content);
$html2pdf->Output('exemple07.pdf');


Voila ! smile
et comme précisions supplémentaires, je tourne sous MAC OS X 10.6
et j'utilise : Apache/2.0.63 (Unix) PHP/5.2.11

4

bon, ben j'ai réussit à reproduire le pb. je vais regarder ca de suite !
Ancien pseudo : lolo

5

argh, un oubli de ma part. voici le correctif à apporter :
HTML2PDF v3.29
& v4.00
file : html2pdf.class.php
method : o_WRITE
line : around 2130
replace :
					if ($y + $h>$this->pdf->getH() - $this->pdf->getbMargin())
						if (!$this->isInOverflow)
							$this->setNewPage(null, '', null, $curr_pos);

by :
					if ($y + $h>=$this->pdf->getH() - $this->pdf->getbMargin())
					{
						if (!$this->isInOverflow && !$this->isInFooter)
						{
							$this->setNewPage(null, '', null, $curr_pos);
							$y = $this->pdf->getY();
							$x = $this->pdf->getX();
							$dy = $this->getElementY($lh);
						}
					}
Ancien pseudo : lolo

6

Merci beaucoup pour ta réponse et ta réactivité, sa fonctionne parfaitement !