Encuentra usuarios de Twitter en tu ciudad con LocaFollow

votarCrear un pdf con php

Autor: jgarcia | Archivado en: PHP, Recursos el día 8/Feb/2005
Deprecated: Function eregi() is deprecated in /home/bitacora/public_html/wp-content/plugins/wp-codebox/main.php on line 171

Generador de pdf con phpDe todos son conocidas las grandes ventajas que tienen los ficheros con formato pdf (Portable Document Format).

Con la clase FPDF (Free Portable Document Format) podemos generar documentos PDF directamente desde PHP. Aparte de ser gratuita y libre tiene las siguientes ventajas:

  • Elección de la unidad de medida, formato de página y márgenes
  • Gestión de cabeceras y pies de página
  • Salto de página automático
  • Salto de línea y justificación del texto automáticos
  • Admisión de imágenes (JPEG y PNG)
  • Colores
  • Enlaces
  • Admisión de fuentes TrueType, Type1 y codificación
  • Compresión de página

Para poder hacer uso sólo debemos añadir básicamente el siguiente código:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
    <?php
    require(’fpdf.php’);
 
    /* Por defecto orientación vertical (P), unidades mm y tamaño papel DIN A4.
    Otros posibles valores:
    - Orientación apaisada (L).
    - Unidades pt, cm, in.
    - Tamaños Carta y Legal.
    */
    $pdf=new FPDF(’P',’mm’,'A4'); /*Se define las propiedades de la página */
    $pdf->AddPage(); /* Se añade una nueva página */
    $pdf->SetFont(’Arial’,'B’,16); /* Se define el tipo de fuente: Arial en negrita de tamaño 16 */
    $pdf->Cell(40,10,’¡Hola, Mundo!); /* Con Cell se añade texto a la página */
    $pdf->Output(); /* El documento se cierra y se envía al navegador */
    ?>

Para más información puedes consultar el estupendo tutorial de FPDF.

Y no olvidad consultar el manual de referencia para sacarle el máximo partido.


  • Digg
  • del.icio.us
  • Facebook
  • Google
  • LinkedIn
  • Meneame
  • MySpace
  • Technorati
  • TwitThis
Posts Relacionados

52 Comentarios on “Crear un pdf con php”

  1. #1 Nina dijo 1:41 pm el Febrero 8th, 2005:

    esto lo probare, me viene genial. gracias !!! besotes para todos


  2. #2 Edu® dijo 2:34 pm el Febrero 8th, 2005:

    Muy bueno Juan, ¿se va a utilizar para lo que yo estoy pensando? ;)


  3. #3 Edu® dijo 4:53 pm el Febrero 8th, 2005:

    Aquí tenemos información de como trabajar con FDFs. Con ellos podremos, por ejemplo, llenar una plantilla en PDF con datos desde nuestra aplicación Web.

    Esta es la referencia: http://www.hackingballz.com/php_manual/ref.fdf.html


  4. #4 jgarcía dijo 5:48 pm el Febrero 8th, 2005:

    Muy bueno el enlace Edu.

    El Formato de Datos de Formulario (FDF) es un formato para la gestión de formularios al interior de documentos PDF.

    Muy recomendado: http://www.hackingballz.com/php_manual/ref.fdf.html

    Bien merece un artículo.


  5. #5 - star dijo 4:51 am el Febrero 9th, 2005:

    pregunta. vi que ahi definias en un solo lugar el font, asi que me parece que solo se usa el mismo font para toda la impresion en pdf o se puede cambiar el font dependiendo de si es titulo o no, colores etc.?


  6. #6 Edu® dijo 8:31 am el Febrero 9th, 2005:

    Estimado Star, no conozco mucho la aplicación esta que ha presentado jgarcia, pero sí una opción similar a la que hago mención en el comentario. El problema es que yo trabajo con .NET, y las clases (DLL) que utilizo no son compatibles, aunque la filosofía sea la misma. En el caso de que quieras hacer un documento un poco más complejo, te recomiendo que utilices esta opción:

    - Creas un documento con el programa que quieras (word, excell, html…)
    - Lo conviertes en PDF mediante alguna aplicación gratuita
    - Creas campos de formulario en su interior
    - Desde el código de la página, abres el documento y lo rellenas haciendo uso de la información que hay en el enlace que he mencionado

    A ver si nos ponemos a destripar todo esto y hacemos un “how to”, creo que es muy interesante el poder obtener informes en pdf desde nuestra aplicación web de una forma tan sencilla.

    En cualquier caso a ver si te puede responder jgarcía tu duda.

    Un saludo.


  7. #7 Guillem dijo 12:24 pm el Abril 4th, 2005:

    Auxilio para un novato!
    Que pasa?? A mi no me funciona… subí el directorio de fonts, el archivo fpdf.php, el ejemplo tuto1.php (al que modifique para que busque fpdf.php en el mismo directorio…) y cuando quiero verlo en Firefox me sale:

    Parse error: parse error, unexpected T_CONSTANT_ENCAPSED_STRING in /home/httpd/vhosts/satconxion.es/httpsdocs/testfpdf.php on line 10

    Que puede ser???

    Desde ya muchas gracias y un saludo!
    Guillem


  8. #8 pepeitor dijo 2:08 pm el Abril 6th, 2005:

    A ver quién logra poner un jpg en el PDF desde un BLOB MySQL


  9. #9 bRAULIO dijo 11:22 pm el Junio 23rd, 2005:

    SABEN BAJE SUS EJEMPLOS DEL CODIGO Y TENGO UN PROBLEMA CON LA CORRIDA DE LOS EJEMP`LOS TRABAJO CON PHP Y EXISTE UN ERROR QUISIERA ME AYUDEN EN LA PARTE DE SU ADAPTACION EN MIN PAGINAS YA QUE NECESITO SABER CON URGENCIA COMO PASAR DATOS DE MI BASE DE DATOS MYSQL A UN ARCHIVO PDF


  10. #10 Joan Garcia dijo 11:50 am el Julio 6th, 2005:

    Tengo una duda. He subido estos archivos a mi web, y no consigo crear PDF’s. ¿Se tiene que instalar algo en el servidor?
    Los errores que me salen son:
    Warning: setfont(fpdf153/font/helveticab.php): failed to open stream: No such file or directory in /www/wub/pmid/cgi/gsd/fpdf153/fpdf.php on line 550

    Warning: setfont(): Failed opening ‘fpdf153/font/helveticab.php’ for inclusion (include_path=’/usr/local/lib/php’) in /www/wub/pmid/cgi/gsd/fpdf153/fpdf.php on line 550

    Muchas gracias!!


  11. #11 jgarcía dijo 1:21 pm el Julio 6th, 2005:

    Joan, el fuente (por ejemplo, ARIAL.TTF) debes tenerlo accesible en tu servidor.


  12. #12 kimy dijo 2:04 pm el Julio 8th, 2005:

    bien !


  13. #13 jose m dijo 8:15 pm el Julio 12th, 2005:

    saludos, necesito llevar a pdf los resultados de mi busqueda en php dentro de la base de datos, los resultados son muchos por lo tanto la pagina es muy grande y necesita ser impres por eso quiero utilizar pdf para ver si se puede realizar por medio de los formatos aunque nunca he trabajado con eso


  14. #14 karen dijo 5:13 pm el Julio 13th, 2005:

    Hola tengo que crear reportes en pdf con php, bajo los archivos binario y alo que veo en el ejemplo solo se incluye en la linea: include (”fpdf.php”); pero esta clase junto con las fonts, donde se instala, en el servidor o donde las pongo?
    Gracias por su ayuda


  15. #15 Andres Corredor dijo 11:32 pm el Julio 21st, 2005:

    Hola, el pdf me funcionan perfectamente, pero tengo una duda, puedo combertir una pantalla de html a pdf. Gracias


  16. #16 Cacho dijo 12:34 am el Agosto 6th, 2005:

    Muy bueno, pero no entiendo un joraca! Bye.


  17. #17 Pc_cosis dijo 4:07 am el Agosto 24th, 2005:

    Todo parece normal, per o en la ayuda indica que se puede definir un tamaño personalizado de papel colocando las dimensiones en formato de arreglo,… pero ¿COMO SE HACE ESO?. Ya hice varias pruebas y nada, ¿alguien sabe como hacerlo?


  18. #18 Alicia dijo 10:31 pm el Agosto 30th, 2005:

    Estuve probando el ejemplo y funciona!!! Pero ahora quiero hacer otras cosas, como por ejm. configurar mi página a tamaño personal, lo cual curiosamente funciona, es decir, lo muestra en el tamaño definido. Pero el detalle es a la hora de imprimir ya que no lo toma en cuenta…imprime en tamaño Letter. ¿Cómo puedo hacer que imprima en el tamaño definido? Ya hice varias pruebas y nada…


  19. #19 Esteban dijo 5:05 pm el Septiembre 6th, 2005:

    Estimado, resulta que logro crear pdf de excelente manera y encuentro super buena la forma de hacerlo. Pero cuando quiero modificar los pdf creados por ejemplo agregarles paginas estos suben demasiado en el peso. No se si existe alguna solucion a esto o que este haciendo algo mal, pero si me puedes ayudar te lo agradeceria…
    Esteban


  20. #20 Sandra dijo 8:33 pm el Septiembre 12th, 2005:

    Hola:

    Tengo un problema. Tengo una archivo word que contiene un contrato en el cual hay espacios en blanco par llenar.
    Lo que reuiero es que el usuario pueda digitar estos datos en un formulario y despues me genere el pdf con los datos ubicados en el luger respectivo y el contenido del documento word . Pues en realidad no tengo idea de como hacerlo si alguien me pudiera ayudar se lo agredeceria mucho.

    Gracias


  21. #21 sandra dijo 10:57 pm el Septiembre 26th, 2005:

    tengo una base de daos en mysql y la presento en una pagina web hecha en php pero necesito que de esta tabla de la pagina web a hacer clic sobre uno de los elementos de la tabla me habra un archio en PDF o en WORD no se como hacerlo.

    gracias de ntemano si alguien me puede ayudar

    sandra


  22. #22 Cristian Aguila dijo 5:07 pm el Octubre 27th, 2005:

    El módulo está bastante bueno. Ando en busca de un convertidor de archivo word a pdf, alguien lo ha hecho con este módulo?


  23. #23 Jorge dijo 1:49 am el Noviembre 29th, 2005:

    Hola, no he podido crear archivos pdf alguien me podria decir por favor como lo hago.
    me sales este error
    como se configura o se instala?

    Parse error: parse error, unexpected T_CONSTANT_ENCAPSED_STRING in c:\servidor\web\pdf.php on line 10


  24. #24 Angi dijo 10:43 pm el Noviembre 29th, 2005:

    Ya he probdo perfectamente el fpdf y he generado un reporte. Sin embargo, se me presenta un inconveniente. Estoy usando datos de base de datos para generar el pdf, uno de esos datos es un campo que almacena codigo html (para alojar tablas) y no se como mostrarlo en el pdf, es decir que este lo respete como html para visualizar la tabla en el pdf. Saludos


  25. #25 NOE GUTIERREZ OSORNO dijo 7:17 am el Noviembre 30th, 2005:

    HOLA NECESITO CONVERTIR UN ARCHIVO PDF A UN ARCHIVO DE MICROSWOFT WORD,DESDE CODIGO PHP, PORFAVOR SI ALGUIEN ME PUEDE AYUDAR, FAVOR DE ESCRIBIRME A MI CORREO.


  26. #26 Gabriel Bocanegra dijo 5:12 pm el Diciembre 12th, 2005:

    Me parece estupendo esta herramienta que ofrecen, muchas gracias


  27. #27 karina dijo 4:37 pm el Enero 12th, 2006:

    hola, tengo un problema al hacer correr el ejemplo 1 del tutorial me sale el cuadro si deseo abrir o descargar, no se cual es el error, si alguien me puede guiar , muchas gracias……correo:veraCervantes@hotmail.com


  28. #28 Vic dijo 8:19 pm el Febrero 22nd, 2006:

    Hola

    No funciona el enlace http://www.hackingballz.com/php_manual/ref.fdf.html

    Me interesa mucho trabajar con fdf pero conozco muy poco de su estructura y ¡no encuentro nada válido por el google!

    Agradecería vuestra ayuda.

    V.


  29. #29 Angel Escalona dijo 8:14 pm el Febrero 28th, 2006:

    Saludos he creado muchos reportes en fpdf con php-mysql y php-postgresql en verdad buenisimo y perfectos todo pero por esa razon de estar siempre creando cosas nuevas me encontre con un detalle y es el siguiente como hago para incertar un registro que tiene como caracteristica que es un campo memo he trabajado el multicell he creado tabla he justificado y nada si alguien lo ha realizado se lo agradeceria a mi direccion de correo aescalona@territorioaguila.com.ve o angel_1612266@hotmail.com de antemano gracias


  30. #30 crilop dijo 11:32 pm el Marzo 1st, 2006:

    Funciona solo con algunas versiones de acrobat?????


  31. #31 alex dijo 4:34 pm el Marzo 2nd, 2006:

    me tira este error:
    Warning: Cannot modify header information - headers already sent by (output started at d:\www\alex\asnopdf\index.php:10) in d:\www\alex\asnopdf\fpdf.php on line 1022
    FPDF error: Some data has already been output to browser, can’t send PDF file


  32. #32 malcolm dijo 11:53 pm el Marzo 17th, 2006:

    oye esta bien la pagina pero tengo un problema me sale este error:

    FPDF error: Some data has already been output, can’t send PDF file

    pero le puse la instruccion $pdf->Output(hola.pdf); que es el archivo que genera pero ahora ya no me sale el error y me sale la pagina en blanco a que se debe?, que es lo ke tengo que hacer? explinqueme porfavor, claramente y presisa, soy nuevo en esto!
    gracias!!


  33. #33 raul huerta dijo 5:06 pm el Marzo 29th, 2006:

    si alguien ha hecho un query de un odbc y ponerlo en un pdf, mandenme el codigo, porque no he podido, he seleccionado los campos, pero nada mas se ve un dato, pero son muchos … ojala y alguien pueda ayudarme… gracias


  34. #34 tamara dijo 10:30 am el Abril 12th, 2006:

    hola,soy nueva en esto de php y fdf.
    Necesito poner en un pdf la hora y fecha del servidor…alquien puede ayudarme???
    Muchas gracias


  35. #35 Pepeitor dijo 9:41 am el Abril 17th, 2006:

    La verdad es que FPDF ha resuelto un monton de problemas en mis aplicaciones:
    Vez las salidas de fichas desde cualquier paginacion: Diesel en Caceres.
    Lo proximo: Una salida selectiva desde la base de datos que monte una minirevista de forma automática


  36. #36 ferruco dijo 7:19 pm el Abril 24th, 2006:

    Hola no conozco mucho de php y los reportes, mi problema es ke tengo ke generar un reporte de varias tablas y todo lo tengo ke pasar a formato pdf hay una herramienta que es visto que es fpdf generando el pdf linea a linea, se ke hay otra forma de hacerlo, de ke mi pagina generada en php automaticamente me la convierta en pdf contodo y los datos ke contienen las tablas pero no se como se realiza alguien ke me´pueda ayudar se lo agradeceria mucho!!!!!
    gracias de antemano!!


  37. #37 alex dijo 3:19 pm el Abril 27th, 2006:

    Alguien ha logrado usar esta libreria (o alguna otra) que maneje los acentos? Ninguna de las que he probado los maneja bien. Estoy desesperado.


  38. #38 Gisel Varela dijo 5:30 pm el Abril 28th, 2006:

    Hola!
    Necesito que la información de la base de datos salga en el centro de un archivo txt.

    por ejemplo, el txt tiene Nombre: “El nombre saldrá de la BAse de datos” y despues continua la informacion del txt.


  39. #39 Frank dijo 4:05 pm el Mayo 1st, 2006:

    tengo instalado PEAR para windows pero ala hora de mandar llamar objetos o librerias como DB.php o mismo fpdf.php me marca este error.
    Warning require(fpdf.php):failed to open stream: No such file or directori in C:wamp\www\miweb\scripts\pdf.php\ on line 2

    Fatal Error: require() [function require]: Failed opening required ‘fpdf.php’(include_path=’.;C:\php5\pear’)in C:\wamp\www\miweb\scripts\pdf.php on line 2

    Warning: require_once(DB.php) [function.require-once]: failed to open stream: No such file or directory in C:\wamp\www\miweb\index2.php on line 3

    Fatal error: require_once() [function.require]: Failed opening required ‘DB.php’ (include_path=’.;C:\php5\pear’) in C:\wamp\www\miweb\index.php on line 3

    y no se por que si instale bien el pear en el php que biene en el servidor wamp pero no se com editar el path.


  40. #40 Cesar Villalba dijo 4:42 pm el Mayo 12th, 2006:

    imprimo en pdf y no me puede escribir las eñes


  41. #41 Gustavo dijo 3:30 am el Mayo 13th, 2006:

    Genero un pdf, luego cuando quiero cerrar el iexplore, me sale un error “…… la memoria no se puede read”. Que puede ser?


  42. #42 andy dijo 6:51 pm el Mayo 16th, 2006:

    ¿puedo generar desde la clase fpdf una pagina completa html a pdf?
    o sino hay alguna forma de ordenar la informacion de manera que salga en tablas


  43. #43 Felipe dijo 5:05 am el Mayo 17th, 2006:

    Bueno, al parecer es lo que varios han consultado, estoy tratando de ver la forma de insertar datos de mi base de datos en un archivo pdf, si tengo suerte y me funciona lo publico, si alguien ya lo hizo,,,, que lo comparta.
    Salu2.


  44. #44 Ismael Jose dijo 5:32 pm el Julio 9th, 2007:

    Necesito imprimir unos datos que traigo en una tabla así:
    $rs = mysql_query($ssql);
    while ($fila = mysql_fetch_object($rs))
    {
    echo “” . $fila->Nombres . “”;
    echo “” . $fila->Apellidos . “”;
    echo “” . $fila->SalonB . “”;
    echo “” . $fila->Horario . “”;
    echo “” . $fila->Dia . “”;
    echo “” . $fila->Programa . “”;
    echo “” . $fila->Semestre . “”;
    echo “” . $fila->Asignatura . “”;
    echo “” . $fila->Periodo . “”;
    }

    ¿como hago para enviar estos datos a imprimir con fpdf?….Yo he podido crear el pdf pero nose como traer estos datos ahí…

    Les agradeceria mucho que me pudieran ayudar….


  45. #45 Cesar Sanz dijo 8:03 pm el Agosto 17th, 2007:

    Hola a todos… Estoy empezando a utilizar la libreria FPDF y tengo un error que
    no se como resolverlo:

    Warning: setfont(hences.com/helveticab.php): failed to open stream: No such file or directory in /home/www/hences.com/fpdf.php on line 550

    Warning: setfont(): Failed opening ‘hences.com/helveticab.php’ for inclusion (include_path=’.:/usr/local/php4/share/pear’) in /home/www/hences.com/fpdf.php on line 550
    FPDF error: Could not include font metric file

    La cuestion es que no se donde ni como incluir la fuente que me hace falta para poder generar el pdf.

    Se les agradece cualquier tipo de ayuda..

    Gracias


  46. #46 Juan Luis dijo 6:50 am el Septiembre 13th, 2007:

    Les dejo una liga donde pueden bajar una clase que permite generar PDF de manera muy sencilla y con variantes como justificado a colores, con tipos de letras, fuentes, formatos, etc.

    Librería para PDF con Texto Enriquecido


  47. #47 Juan Luis dijo 4:52 am el Septiembre 15th, 2007:

    Les recomiendo la librería JLPDF para generar documentos con formatos como Negritas, colores, tipos de Letras, etc. Y todo esto pudiendo mantener el texto Justificado o alineado de algun manera. Es una librería muy facil de utilizar y la encuentran facilmente en google.

    Saludos.


  48. #48 Erick Bernal dijo 9:51 pm el Mayo 1st, 2008:

    Hola a todos una pregunta no se si alguien ya habra pasado por esto , utilizando FPDF se cren documentos pdf estoy trabajando con marcas de agua y no tego problemas en crear un PDF apartir de PHP incluyendole la marca de agua MI DUDA ES alguien sabe como abrir un pdf ya creado y anexarle la marca de agua?? si alguien sabe se los agradecere


  49. #49 Diana dijo 3:42 pm el Junio 5th, 2008:

    Muchas Gracias realmente muy interesante……me a ayudado significativamente resolver unos problemillas que tenia en la generacion de reportes…..


  50. #50 Ariane dijo 7:19 pm el Junio 12th, 2008:

    hoa soy nueva en esto y necesito crear reportes en pdf obteniendo los datos desde postgres, baje un ejlo pero me sale lo siguiente:
    Warning: FPDF::include(font/helveticab.php) [function.FPDF-include]: failed to open stream: No such file or directory in /var/www/claudia/ex_pgsql/fpdf.php on line 550

    Warning: FPDF::include() [function.include]: Failed opening ‘font/helveticab.php’ for inclusion (include_path=’.:/usr/share/php:/usr/share/pear’) in /var/www/claudia/ex_pgsql/fpdf.php on line 550
    FPDF error: Could not include font metric file
    les agradeceria mucho si me pueden ayudar.


  51. #51 andres dijo 4:50 pm el Enero 26th, 2009:

    hola eh esta buscando con crear archivos pdf
    pero me genera el siguiente error:

    Fatal error: Call to undefined function get_magic_quotes_runtime() in C:\AppServ\www\pdf\fpdf.php on line 1073


  52. #52 eli dijo 1:21 pm el Enero 14th, 2011:

    NECESITO AYUDAAAAAA CON PHP Y PDF AUN NO ENTIENDO COMO PASARLO Y TDOS LOS CODIGOS QUE PRUEBO ME TIRAN ERROR!



Deja un comentario.