Bonjour,
Voilà, j'ai remarqué que lorsque le dernier mot d'une ligne était en italique (balise <i> ou <em>), dans le résultat en PDF, le reste de la ligne ne faisait pas un retour à ligne et aller se perdre dans la marge jusqu'au prochain paragraphe qui lui reprenait son cours normal.
Je pourrais vous fournir un exemple si vous voulez mais si vous connaissez déjà le problème, merci de m'expliquer la marche à suivre pour y remédier.
Bonjour,
Voilà un extrait de la nouvelle d'Edgar Allan Poe, l'homme des foules :
[source=as3]
<?php
$content ="
<STYLE type='text/css'>
<!--
.avec-retrait {
text-align: justify;
color: black;
margin:0;
text-indent:15px;
font-size: 12pt;
}
-->
</STYLE>
<page backtop='15mm' backbottom='15mm' backleft='20mm' backright='20mm' style='font-family: times'>
<page_header style='font-family: times'>
<p style='text-align: right;margin:5mm 20mm 0 0'>[[page_cu]]</p>
</page_header>
<page_footer style='font-family: times'>
<p style='text-align:center;font-size:10pt'>******** © ".date("Y")."</p>
</page_footer>
<p class='avec-retrait'>Les joueurs de profession — et j'en découvris un grand nombre — étaient encore plus aisément reconnaissables. Ils portaient toutes les espèces de toilettes, depuis celle du parfait <em>maquereau</em>, joueur de gobelets, au gilet de velours, à la cravate de fantaisie, aux chaînes de cuivre doré, aux boutons de filigrane, jusqu'à la toilette cléricale, si scrupuleusement simple, que rien n'était moins propre à éveiller le soupçon. Tous cependant se distinguaient par un teint cuit et basané, par je ne sais quel obscurcissement vaporeux de l'oeil, par la compression et la pâleur de la lèvre. Il y avait, en outre, deux autres traits qui me les faisaient toujours deviner : un ton bas et réservé dans la conversation, et une disposition plus qu'ordinaire du pouce à s'étendre jusqu'à faire angle droit avec les doigts. — Très-souvent, en compagnie de ces fripons, j'ai observé quelques hommes qui différaient un peu par leurs habitudes; cependant, c'étaient toujours des oiseaux de même plumage. On peut les définir : des gentlemen qui vivent de leur esprit. Ils se divisent, pour dévorer le public, en deux bataillons, — le genre dandy et le genre militaire. Dans la première classe, les caractères principaux sont longs cheveux et sourires; et dans la seconde, longues redingotes et froncements de sourcils.</p>
<p class='avec-retrait'>En descendant l'échelle de ce qu'on appelle <em>gentility</em>, je trouvai des sujets de méditation plus noirs et plus profonds. Je vis des colporteurs juifs avec des yeux de faucon étincelants dans des physionomies dont le reste n'était qu'abjecte humilité ; de hardis mendiants de profession bousculant des pauvres d'un meilleur titre, que le désespoir seul avait jetés dans les ombres de la nuit pour implorer la charité; des invalides tout faibles et pareils à des spectres sur qui la mort avait placé une main sûre, et qui clopinaient et vacillaient à travers la foule, regardant chacun au visage avec des yeux pleins de prières, comme en quête de quelque consolation fortuite, de quelque espérance perdue;</p>
</page>";
// convert in PDF
require_once('../includes/html2pdf/html2pdf.class.php');
try
{
$html2pdf = new HTML2PDF('P', 'A4', 'fr');
// $html2pdf->setModeDebug();
$html2pdf->setDefaultFont('Times');
$html2pdf->writeHTML($content, isset($_GET['vuehtml']));
$html2pdf->Output('essai.pdf');
}
catch(HTML2PDF_exception $e) {
echo $e;
exit;
}
[/source]
Comme vous pouvez le constater, le mot "maquereau" entouré des balise <em> et qui arrive en bout de ligne provoque un bug en supprimant le retour à la ligne si bien que le reste du paragraphe est tronqué au-delà de la marge. Ce qui n'est pas le cas du mot "gentility" qui n'est pas en bout de ligne et donc ne provoque pas le bug.
J'ai constaté le phénomène sur tous les textes qui rassemblent les mêmes conditions à savoir, mot en italique en bout de ligne.
J'espère que cette exemple vous permettra d'identifier ce bug. Merci.
Bonjour,
Je me permets de relancer ce sujet. Avez-vous pu constater le problème finalement ? S'agit-il d'un bug ? Serait-il possible, dans le cas où vous auriez corrigé le problème d'avoir une version beta que je puisse tester sur l'ensemble des textes littéraires de mon site pour vous faire part de mes observations ?
Merci.
Spipu Le 16/05/2011 à 09:54 je n'aaurais pas le temps de travailler sur HTML2PDF avant au moins une semaine... désolé ! (beaucoup de boulot à côté)
Pas grave, le principal c'est que le bug soit déjà identifié pour une correction ultérieure.
Spipu Le 27/05/2011 à 11:28 le bug a été identifié et corrigé, la correction sera inclus dans la prochaine release
Bonsoir,
Désolé de relancer le sujet mais j'ai peut-être parlé un peu trop vite car je constate encore le bug dans cette configuration ci-dessous :
<?php
$content ="
<STYLE type='text/css'>
<!--
.avec-retrait {
text-align: justify;
color: black;
margin:0;
text-indent:15px;
font-size: 12pt;
}
.sans-retrait {
text-align: justify;
color: black;
margin:0;
font-size: 12pt;
}
-->
</STYLE>
<page backtop='15mm' backbottom='15mm' backleft='20mm' backright='20mm' style='font-family: times'>
<page_header style='font-family: times'>
<p style='text-align: right;margin:5mm 20mm 0 0'>[[page_cu]]</p>
</page_header>
<page_footer style='font-family: times'>
<p style='text-align:center;font-size:10pt'>******** © ".date("Y")."</p>
</page_footer>
<p class='avec-retrait'>
À coup sûr, il regrettait amèrement l'<em>Eustion</em> et l'<em>Albutia,</em> ces deux ouvrages de Pétrone que mentionne Planciade Fulgence et qui sont à jamais perdus; mais le bibliophile qui était en lui consolait le lettré, maniant avec des mains dévotes la superbe édition qu'il possédait du <em>Satyricon,</em> l'in-8 portant le millésime 1585 et le nom de J. Dousa, à Leyde.</p>
<p class='avec-retrait'>
Partie de Pétrone, sa collection latine entrait dans le IIe siècle de l'ère chrétienne, sautait le déclamateur Fronton, aux termes surannés, mal réparés, mal revernis, enjambait les <em>Nuits attiques</em> d'Aulu-Gelle, son disciple et ami, un esprit sagace et fureteur, mais un écrivain empêtré dans une glutineuse vase et elle faisait halte devant Apulée dont il gardait l'édition princeps, in-folio, imprimée en 1469, à Rome.</p>
</page>";
// convert in PDF
require_once('../includes/html2pdf/html2pdf.class.php');
try
{
$html2pdf = new HTML2PDF('P', 'A4', 'fr', true, 'UTF-8', 3);
$html2pdf->pdf->SetDisplayMode('fullpage');
$html2pdf->setDefaultFont('times');
$html2pdf->writeHTML($content, isset($_GET['vuehtml']));
$html2pdf->Output('essai.pdf');
}
catch(HTML2PDF_exception $e) {
echo $e;
exit;
}
A noter que j'ai modifié les paramètres de la page. Voilà, j'espère que vous pourrez trouver une solution pour résoudre ce problème.
PS : Pour info, ce texte d'exemple est un extrait du roman de Huysmans "A Rebours".