Foros del Web » Programación para mayores de 30 ;) » Java »

Rellenar formulario PDF con Java

Estas en el tema de Rellenar formulario PDF con Java en el foro de Java en Foros del Web. Buenas, tengo un formulario PDF como plantilla y unos datos con los que rellenarlo (p.e. pongamos un campo "Nombre" para rellenar con el valor "Federico" ...
  #1 (permalink)  
Antiguo 23/08/2006, 00:19
 
Fecha de Ingreso: agosto-2006
Mensajes: 4
Antigüedad: 17 años, 8 meses
Puntos: 0
Mensaje Rellenar formulario PDF con Java

Buenas, tengo un formulario PDF como plantilla y unos datos con los que rellenarlo (p.e. pongamos un campo "Nombre" para rellenar con el valor "Federico" en un formulario PDF que tenga un campo "Nombre" sin valor).
El problema es que tengo el PDF como un array de bytes (bytes[]), aunque también puedo cogerlo como un InputStream, pero no sé cómo rellenarlo a partir de este formato.
Al final lo que necesito es un array de bytes (bytes[]) para guardarlo en una base de datos.
¿Alguien puede echarme una mano?
Muchas gracias.
  #2 (permalink)  
Antiguo 23/08/2006, 03:49
 
Fecha de Ingreso: agosto-2006
Mensajes: 4
Antigüedad: 17 años, 8 meses
Puntos: 0
Me han comentado que puedo hacerlo con IText, pero no encuentro la forma.
A grandes rasgos, lo que quiero es coger el PDF Plantilla con el campo "Nombre" vacío y crear uno idéntico pero con el campo "Nombre" igual a "Federico".
¿Alguien sabe cómo hacerlo?
Muchas gracias
  #3 (permalink)  
Antiguo 23/08/2006, 05:01
 
Fecha de Ingreso: agosto-2006
Mensajes: 4
Antigüedad: 17 años, 8 meses
Puntos: 0
A ver, he hecho el siguiente código:


//Obtengo el array de Bytes
byte[] arrayBytes = FactoriaDAO.getDocumentoDAO().getContenidoDocument o(docRelleno.getId());

OutputStream out = new arraByteArrayOutputStream();

//Obtengo el PdfReader
PdfReader reader = new PdfReader(arrayBytes);

PdfStamper stamp = new PdfStamper(reader, out);
AcroFields acro = stamp.getAcroFields();

//Completo los campos
acro.setField("NOMBRE","Antoñito");

//(*)
byte[] cadenaBytesRellena = ??????;


en (*) tengo que copiar el contenido de out como un byte[], ¿cómo se puede hacer esto?
Tiene que ser una tontería pero ¿Cómo puedo acceder al contenido del OutputStream?
  #4 (permalink)  
Antiguo 23/08/2006, 10:09
Avatar de stock  
Fecha de Ingreso: junio-2004
Ubicación: Monterrey NL
Mensajes: 2.390
Antigüedad: 19 años, 10 meses
Puntos: 53
Mmmmmm lamento no poder ayudarte, pues la unica manera de como yo he hecho algo semejante es usando el itext, generando el reporte de una "plantilla" agregandole unicamente la informacion variable.

peudes ver en las FAQs mas omenos como lo hago.... ahi puse un ejemplo muy, pero muy sencillo, pero esa es la idea....
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 09:41.