Creando archivos PDF desde PHP
Todos llegamos a un punto de desarrollo en que necesitamos crear algún archivo PDF para generar reportes o en todo caso una factura; hace un tiempo utilice esta librería la cual me sacó de muchos apuros por su facilidad de uso.
Probé un par más pero esta me pareció más completa y veo que tiene mejoras desde la última vez que la usé, te dejo un pequeño tutorial para que pruebes y veas si te funciona.
- Entra a la página de FPDF library y descarga la librería, te recomiendo la última versión.
- Descomprime el .zip y copia los archivos fpdf.css, fpdf.php y las carpetas font y makefont a una nueva carpeta donde harás tus primeras pruebas.
- Debes tener algo como la siguiente pantalla, con excepción de texto.txt, index.php e img
- Crea un archivo texto.txt e ingresa lo que gustes en el archivo y guardalo
- Crea una carpeta que se llame img y guarda una imagen llamada logo.png
- Ahora crea tu archivo index.php, ahí agregaremos lo necesario para generar tu archivo PDF.
Explicaré lo más importante a continuación:
- Creamos una clase que se extiende de FPDF, en este caso es nuestra librería.
- Creamos la cabecera que debe llamarse header() y agregamos el logotipo denominado “logo.png” que se encuentra localizado en la carpeta img
- Configuramos la fuente de tipo Arial, tamaño 14 y tipo “Bold”
- Creamos el título “Propuesta económica” con la llamada a Cell.
- Generamos 5 saltos de línea con $this->Ln(5);
- Para el footer es muy similar, de la misma forma mandamos a llamar a un método en este caso footer();
- Indicamos que en la posición Y lo situamos a -10 del final
- Configuramos el texto
- Y con $this->PageNo() obtendremos la página en la cual estamos situados.
- La página principal se crea con el objeto $pdf = new PDF();
- Y definimos un Alias para la página
- Agregamos una nueva página con AddPage();
- Configuramos la fuente en Times a tamaño 12.
- Obtenemos la información del archivo texto.txt
- También puedes hacerlo de tu BD, únicamente deberás crear la conexión y la consulta.
- Creamos un MultiCell, a diferencia de Cell aquí podemos indicar el máximo (width: 176) y el espacio entre líneas (height: 8)
- Y para mostrar el archivo PDF lo realizamos con la llamada a $pdf->Output();
Por último para probar únicamente entra a la dirección de tu proyecto en mi caso es:
Te dejo los archivos fuente para que los descargues y pruebes en tu computadora.
Hasta el siguiente post!
FPDF | Sitio Oficial
@silvercorp | Cuenta de Twitter
Código Fuente | Gist
Publicado el agosto 30, 2012 en Básicos, Programación. Añade a favoritos el enlace permanente. 4 comentarios.




FPDF es muy bueno, pero generalmente es mas practico, rapido y facil generar PDFs basandonos en HTML, a fin de cuentas es nuestro terreno no? y para hacer esto no hay como DOMPDF (basado en fpdf). http://code.google.com/p/dompdf/
:O ooh! cool!, thanks… no lo conocía, se ve bastante bueno
déjame ver que puede salir de ahí. Me gusta porque se ve más sencillo.
Grax por la recomendación
Sin embargo para generar archivos pdf de gran cantidad de hojas no es muy viable ya que come mucha RAM
No sé que cantidad de recursos tira esta librería, pero es muy sencilla de usar http://www.mpdf1.com/mpdf/index.php