Mostrar información en un PDF

nullRecientemente he prometido a los amigos Yakano y Gaston explicar una forma de mostrar datos en un Formulario Pdf (alias FDF).

Aunque existe una forma de hacerlo mediante la herramienta pdftk (disponible desde la línea de comandos) he optado por mostrar una forma menos conocida y soportada por la mismísima Adobe: XFDF.

El único requisito para su uso es estar familiarizado con el Xml (yo me declaro públicamente un ferviente admirador junto con su tecnología hermana Xslt) y tener un formulario pdf para rellenar (si lo necesitas, en el siguiente artículo se muestra cómo crear un formulario pdf).

Idea general

El funcionamiento es realmente sencillo: lo único que necesitamos es un fichero de texto plano (el que se genera con cualquier editor de texto como mousepad o gedit) en el que pondremos (siguiendo un formato, xml, determinado) los datos que queremos que aparezcan en los distintos campos del formulario pdf.

Para obtener un pdf con los campos rellenos sólo tendremos que abrir el fichero que hemos creado (y que tendrá extensión xfdf) en lugar del pdf original.

Automáticamente aparecerá ante nosotros el pdf con los datos que hemos indicado en el fichero xml.

Fichero de datos

Su estructura es la que puede verse en la siguiente imagen

null

Destacar:

  1. La entrada f, con atributo href, indica el fichero pdf a rellenar con los datos que indicaremos más abajo (el fichero del ejemplo es info.pdf).
  2. Dentro de la etiqueta fields aparecerán tantas entradas field como campos queramos rellenar (no tienen que estar todos los campos del documento, sólo los que nos interesen)
  3. El atributo name de cada etiqueta field indica el nombre del campo a rellenar (en el ejemplo txtNombre1)
  4. La etiqueta value dentro de cada field indica el valor que queremos mostrar en el campo (en el ejemplo joaquín luque)
  5. Los puntos suspensivos () de la línea 11 no deben aparecer en tu fichero (los he puesto para indicar que se pueden colocar tantas etiquetas field como sean necesarias ;) )

Conclusión

Sólo te queda guardar el fichero anterior con los datos utilizando la extensión .xfdf y abrirlo haciendo doble-click sobre el mismo.

Automáticamente verás el pdf con los datos que has indicado.

Posibles contribuciones

Para aquellos que deseen compartir sus conocimientos y experiencias con el resto, sería interesante conocer

  • ¿conoces otra forma de hacer lo mismo?
  • ¿te atreves a crear un script que genere automáticamente el fichero xml anterior a partir de cualquier fdf utilizando pdftk?
  • ¿te parece interesante que explique cómo hacer lo mismo con pdftk?

5 Respuestas a “Mostrar información en un PDF”


  1. 1 Bruno 26 marzo 2009 a las 3:56 pm

    Hola
    ¿podrías enviarme el pdf y el xfdf de prueba? para el trabajo estoy intentando crear un formulario en pdf, pero no me dejan instalarme el scribus… Me harías un gran favor.

    Saludos!

  2. 2 J 26 abril 2009 a las 8:16 am

    Gracias por la explicación. Soy programador aficionado, hago pequeñas utilidades para mi trabajo y llevo tiempo detrás del asunto de cumplimentar formularios pdf. He descubierto que andaba muy despistado ( explorando el modelo de objetos de acrobat…).

    pd: Enhorabuena por tu blog. Me parece ameno y muy interesante. Lo visitaré con frecuencia.

  3. 3 Alberto 25 mayo 2011 a las 10:59 pm

    excelente pagina, interesantes y útiles consejos.
    Hay alguna forma de extraer datos de un documento fdf, sin tener que abrirlo con su respectivo pdf.


Deja un comentario

Fill in your details below or click an icon to log in:

Logo de WordPress.com

You are commenting using your WordPress.com account. Log Out / Cambiar )

Twitter picture

You are commenting using your Twitter account. Log Out / Cambiar )

Facebook photo

You are commenting using your Facebook account. Log Out / Cambiar )

Connecting to %s




Patrocinadores

informática y electrónica megastore online de electrónica y accesorios turismo en cuenca blog de coches y motor Anunciate aquí gana dinero con encuestas Alojamiento web de confianza Las últimas noticias de ciencia, tecnología, espacio y la actualidad internacional

¿Hablamos?

Escribe tu dirección de correo electrónico para suscribirte a este blog, y recibir notificaciones de nuevos mensajes por correo.

Únete a otros 1.280 seguidores

Participa

Histórico


Twitter

  • RT @malcer_quaid: "Nunca he conocido a nadie tan ignorante del que no pudiera aprender algo." - Buda 10 hours ago
  • RT @ildecortes: Eh! Han tirado 2 bengalas! 90 mil euros y 15 días, no? 1 day ago
  • @migmae Pues me voy a tener que buscar uno... gracias por avisar de su existencia :) 1 day ago
  • RT @Desalentado1: Cómo puede ser que para mantener la sanidad y educación,todo sean problemas y para Bankia habrá todo el capital necesa ... 1 day ago
  • RT @vcuevas: Rescatar Bankia, 19000 millones de €; mantener la sanidad y Educación, 10.000 m de €; que el Gobierno nos llame idiotas, n ... 2 days ago

Seguir

Get every new post delivered to your Inbox.

Únete a otros 1.280 seguidores