SetFont('Arial','B',15); $w = $this->GetStringWidth($titre)+6; $this->SetX((210-$w)/2); $this->SetDrawColor(0,80,180); $this->SetFillColor(230,230,0); $this->SetTextColor(220,50,50); $this->SetLineWidth(1); $this->Cell($w,9,$titre,1,1,'C',true); $this->Ln(10); // Sauvegarde de l'ordonnée $this->y0 = $this->GetY(); } function Footer() { // Pied de page $this->SetY(-15); $this->SetFont('Arial','I',8); $this->SetTextColor(128); $this->Cell(0,10,'Page '.$this->PageNo(),0,0,'C'); } function SetCol($col) { // Positionnement sur une colonne $this->col = $col; $x = 10+$col*65; $this->SetLeftMargin($x); $this->SetX($x); } function AcceptPageBreak() { // Méthode autorisant ou non le saut de page automatique if($this->col<2) { // Passage à la colonne suivante $this->SetCol($this->col+1); // Ordonnée en haut $this->SetY($this->y0); // On reste sur la page return false; } else { // Retour en première colonne $this->SetCol(0); // Saut de page return true; } } function TitreChapitre($num, $libelle) { // Titre $this->SetFont('Arial','',12); $this->SetFillColor(200,220,255); $this->Cell(0,6,"Chapitre $num : $libelle",0,1,'L',true); $this->Ln(4); // Sauvegarde de l'ordonnée $this->y0 = $this->GetY(); } function CorpsChapitre($fichier) { // Lecture du fichier texte $txt = file_get_contents($fichier); // Police $this->SetFont('Times','',12); // Sortie du texte sur 6 cm de largeur $this->MultiCell(60,5,$txt); $this->Ln(); // Mention $this->SetFont('','I'); $this->Cell(0,5,"(fin de l'extrait)"); // Retour en première colonne $this->SetCol(0); } function AjouterChapitre($num, $titre, $fichier) { // Ajout du chapitre $this->AddPage(); $this->TitreChapitre($num,$titre); $this->CorpsChapitre($fichier); } } $pdf = new PDF(); $titre = 'Vingt mille lieues sous les mers'; $pdf->SetTitle($titre); $pdf->SetAuthor('Jules Verne'); $pdf->AjouterChapitre(1,'UN ÉCUEIL FUYANT','20k_c1.txt'); $pdf->AjouterChapitre(2,'LE POUR ET LE CONTRE','20k_c2.txt'); $pdf->Output(); ?>