> Manuales > Crear PDF en PHP con FPDF

Vamos a darle estilo a la cabecera y el pie de un archivos .pdf creado con FPDF

En este artículo vamos a ver cómo se puede editar la cabecera y el pie del archivo pdf, de tal forma que podamos darle un estilo personal.

Para editar la cabecera necesitamos heredar la clase FPDF y sobrescribir los métodos Header() y Footer().

Cabecera

Vamos a comenzar con la cabecera de nuestro archivo pdf. Lo que vamos a hacer es colocarle un logo y una serie de estilos.

Pongo el código a continuación y vamos explicándolo paso a paso.

<?
require('fpdf.php');
class PDF extends FPDF
{
   //Cabecera de página
   function Header()
   {

       $this->Image('logo.png',10,8,33);

      $this->SetFont('Arial','B',12);

      $this->Cell(30,10,'Title',1,0,'C');

   }
}

//Creación del objeto de la clase heredada
$pdf=new PDF();
$pdf->AddPage();
$pdf->SetFont('Times','',12);
//Aquí escribimos lo que deseamos mostrar...
$pdf->Output();
?>

Las dos primeras líneas ya las hemos visto en el artículo “ Instalación y primeros pasos para generar PDF en PHP con FPDF ”.

La línea “$this->Image ('logo.png',12,9,30);” nos coloca la imagen que le pasamos por parámetro. En esta función pasamos como parámetro el archivo donde se encuentra la imagen, la abscisa de la esquina superior izquierda, ordenada de la esquina superior izquierda y la anchura de la imagen. Podemos pasar más parámetros pero ya lo comentaremos más adelante.

En la siguiente línea ($this->SetFont('Arial','B',12);) damos formato al texto de la cabecera. (esta función la hemos visto en el articulo Funciones de FPDF

La línea $this->Cell (30,10,'Title',1,0,'C'); nos imprime el Título del documento. También lo hemos visto en el artículo Funciones de FPDF.

Una vez que hemos terminado de sobrescribir el método Header tan sólo nos queda crear el objeto de la clase heredada y realizar nuestro documento pdf.

Pie

Para dar formato al pie tenemos que realizar la misma operación que con la cabecera, es decir, sobrescribir el método Footer. Para ello vamos ha realizar la misma operación que antes. Os dejo el ejemplo y lo vamos explicando.

<?
require('fpdf.php');

class PDF extends FPDF
{

//Pie de página
function Footer()
{

$this->SetY(-10);

$this->SetFont('Arial','I',8);

$this->Cell(0,10,'Page '.$this->PageNo().'/{nb}',0,0,'C');
   }
}

//Creación del objeto de la clase heredada
$pdf=new PDF();
$pdf->AddPage();
$pdf->SetFont('Times','',12);
//Aquí escribimos lo que deseamos mostrar
$pdf->Output();
?>

Como en el anterior ejemplo ya hemos explicado lo que hacen las primeras líneas vamos a pasar directamente al método Footer.

La línea $this->SetY (-15); nos posiciona el pie a 1,0 cm del final.
La siguiente línea nos da el formato del texto del pie.
La última línea del método nos imprime el número de página actual. Con un margen que se extiende hasta el margen de la derecha, un alto de celda de 10 (el formato de medida depende del dado al inicio), un texto similar a esto “Page 2”, sin borde, con salto de línea a la derecha y el texto centrado.

Con esto tendríamos maquetados nuestra cabecera y pie de pagina en pdf. Aunque cabe destacar que podemos realizar más operaciones en la cabecera y pie, como por ejemplo darle fondo a las celdas, rellenarlas de colores, etc. Las funciones utilizadas para estos casos las veremos en el próximo artículo sobre fpdf.

Sara Alvarez

Equipo DesarrolloWeb.com

Manual