- Insertar imágenes y gráficas.
- Establecer la fuente del PDF.
- Tener dinámicamente control sobre el diseño del mismo.
- Realizar una maquetaciĂłn decente para esta clase de documentos es esencial.
FPDF es una clase escrita en PHP que permite generar documentos PDF directamente desde PHP, es decir, sin usar la biblioteca PDFlib. La F de FPDF significa Free (gratis y libre): puede usted usarla para cualquier propĂłsito y modificarla a su gusto para satisfacer sus necesidades.
La clase genera documentos en muchos otros idiomas aparte de los europeos occidentales: europeo central, cirĂloco, griego, báltico y tailandĂ©s, si se dispone de fuentes TrueType o Type1 con el conjunto de caracteres adecuado. El chino y el japonĂ©s tambiĂ©n están admitidos. UTF-8 tambiĂ©n está disponible.
Como es lĂłgico, la velocidad de generaciĂłn de un documento es menor que con PDFlib. Sin embargo, la desventaja en cuanto a rendimiento es muy razonable y se adecĂşa a la mayorĂa de los casos, a no ser que sus documentos vayan a ser especialmente complejos o extensos.
He aquà un ejemplo de uso de la clase simple. El desarrollador tiene en su página muchos más ejemplos más aparte de documentación: http://www.fpdf.org/
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
|
require('fpdf.php');
class PDF extends FPDF
{
//Cabecera de página
function Header()
{
//Logo
$this->Image('logo_pb.png',10,8,33);
//Arial bold 15
$this->SetFont('Arial','B',15);
//Movernos a la derecha
$this->Cell(80);
//TĂtulo
$this->Cell(30,10,'Title',1,0,'C');
//Salto de lĂnea
$this->Ln(20);
}
//Pie de página
function Footer()
{
//PosiciĂłn: a 1,5 cm del final
$this->SetY(-15);
//Arial italic 8
$this->SetFont('Arial','I',8);
//Número de página
$this->Cell(0,10,'Page '.$this->PageNo().'/{nb}',0,0,'C');
}
}
//CreaciĂłn del objeto de la clase heredada
$pdf=new PDF();
$pdf->AliasNbPages();
$pdf->AddPage();
$pdf->SetFont('Times','',12);
for($i=1;$i<=40;$i++) $pdf->Cell(0,10,'Imprimiendo lĂnea nĂşmero '.$i,0,1);
$pdf->Output();
|