root / docs / www / colonyscout / internal / fpdf16 / tutorial / tuto3.php @ f59acf11
History | View | Annotate | Download (1.66 KB)
1 |
<?php
|
---|---|
2 |
require('../fpdf.php'); |
3 |
|
4 |
class PDF extends FPDF |
5 |
{ |
6 |
function Header() |
7 |
{ |
8 |
global $title; |
9 |
|
10 |
//Arial bold 15
|
11 |
$this->SetFont('Arial','B',15); |
12 |
//Calculate width of title and position
|
13 |
$w=$this->GetStringWidth($title)+6; |
14 |
$this->SetX((210-$w)/2); |
15 |
//Colors of frame, background and text
|
16 |
$this->SetDrawColor(0,80,180); |
17 |
$this->SetFillColor(230,230,0); |
18 |
$this->SetTextColor(220,50,50); |
19 |
//Thickness of frame (1 mm)
|
20 |
$this->SetLineWidth(1); |
21 |
//Title
|
22 |
$this->Cell($w,9,$title,1,1,'C',true); |
23 |
//Line break
|
24 |
$this->Ln(10); |
25 |
} |
26 |
|
27 |
function Footer() |
28 |
{ |
29 |
//Position at 1.5 cm from bottom
|
30 |
$this->SetY(-15); |
31 |
//Arial italic 8
|
32 |
$this->SetFont('Arial','I',8); |
33 |
//Text color in gray
|
34 |
$this->SetTextColor(128); |
35 |
//Page number
|
36 |
$this->Cell(0,10,'Page '.$this->PageNo(),0,0,'C'); |
37 |
} |
38 |
|
39 |
function ChapterTitle($num,$label) |
40 |
{ |
41 |
//Arial 12
|
42 |
$this->SetFont('Arial','',12); |
43 |
//Background color
|
44 |
$this->SetFillColor(200,220,255); |
45 |
//Title
|
46 |
$this->Cell(0,6,"Chapter $num : $label",0,1,'L',true); |
47 |
//Line break
|
48 |
$this->Ln(4); |
49 |
} |
50 |
|
51 |
function ChapterBody($file) |
52 |
{ |
53 |
//Read text file
|
54 |
$f=fopen($file,'r'); |
55 |
$txt=fread($f,filesize($file)); |
56 |
fclose($f); |
57 |
//Times 12
|
58 |
$this->SetFont('Times','',12); |
59 |
//Output justified text
|
60 |
$this->MultiCell(0,5,$txt); |
61 |
//Line break
|
62 |
$this->Ln(); |
63 |
//Mention in italics
|
64 |
$this->SetFont('','I'); |
65 |
$this->Cell(0,5,'(end of excerpt)'); |
66 |
} |
67 |
|
68 |
function PrintChapter($num,$title,$file) |
69 |
{ |
70 |
$this->AddPage(); |
71 |
$this->ChapterTitle($num,$title); |
72 |
$this->ChapterBody($file); |
73 |
} |
74 |
} |
75 |
|
76 |
$pdf=new PDF(); |
77 |
$title='20000 Leagues Under the Seas'; |
78 |
$pdf->SetTitle($title); |
79 |
$pdf->SetAuthor('Jules Verne'); |
80 |
$pdf->PrintChapter(1,'A RUNAWAY REEF','20k_c1.txt'); |
81 |
$pdf->PrintChapter(2,'THE PROS AND CONS','20k_c2.txt'); |
82 |
$pdf->Output(); |
83 |
?>
|