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

Dudas con iText creando un PDF

Estas en el tema de Dudas con iText creando un PDF en el foro de Java en Foros del Web. Que tal, estoy creando una orden de servicio, y para imprimirla se me ocurrio simplemente pasar la informacion a un PDF y de ahi imprirla. ...
  #1 (permalink)  
Antiguo 15/04/2012, 20:06
 
Fecha de Ingreso: enero-2010
Mensajes: 46
Antigüedad: 12 años, 6 meses
Puntos: 0
Dudas con iText creando un PDF

Que tal,

estoy creando una orden de servicio, y para imprimirla se me ocurrio simplemente pasar la informacion a un PDF y de ahi imprirla. El problema que estoy obteniendo es un poco con el formato del texto. Basicamente para cambiar entre letras negritas y normales y el tamaño del texto.

Para dividir la informacion estoy usando tablas, por ejemplo tengo:


Código:
tabla2.setWidths(new float[]{30.0f});
tabla2.setWidthPercentage(100.0f);
tabla2.getDefaultCell().setColspan(1);
tabla2.addCell("Datos cliente:");
tabla2.getDefaultCell().setColspan(0);
tabla2.getDefaultCell().setBorder(0);
tabla2.addCell("Nombre: " + nombre + " " + apPat + " " + apMat);
tabla2.addCell("Telefono: " + tel + " " + "Celular: " + cel);
tabla2.addCell("Correo: " + correo);
tabla2.addCell("");
documento.add(tabla2);
Como puedo por ejemplo poner la parte de 'Nombre: Telefono: Celular: Correo:' de negritas y lo otro normal?

Por que encontre como darle formato a un objeto tipo Phrase, pero no puedo añadir la frase a la tabla :S

Código:
Phrase pr = new Phrase();
Font miFuente = new Font();
miFuente.setFamily(BaseFont.HELVETICA);
miFuente.setSize(11f);
miFuente.setColor(BaseColor.BLACK);
pr.setFont(miFuente);
pr.add("EJEMPLO");
Alguna idea? recomendacion? Muchas gracias y saludos
  #2 (permalink)  
Antiguo 16/04/2012, 01:10
Avatar de Fuzzylog  
Fecha de Ingreso: agosto-2008
Ubicación: En internet
Mensajes: 2.511
Antigüedad: 14 años
Puntos: 188
Respuesta: Dudas con iText creando un PDF

Llevo 1 semana con iText y ya me he encontrado con ese problema. Se resuelve de la siguiente manera.

Tienes que usar dos chunks y unirlos en la misma phrase (algo así)

Así usando 2 chunk

Tienes dos tamaños de letra posibles: size1 y size2
Tienes dos coloresde letra posibles: color1 y color2
Tienes dos estilos posibles : style1 y style2 (los style vienen definidos como int[] : Un ejemplo sería FONT.BOLD)

Chunk c1 = new Chunk(text1);
c1.getFont().setSize(size1);
c1.getFont().setColor(color1);
for (int i = 0; i < style1.length; i++) {
c1.getFont().setStyle(style1[i]);
}

Chunk c2 = new Chunk(text2);
c2.getFont().setSize(size2);
c2.getFont().setColor(color2);
for (int i = 0; i < style2.length; i++) {
c2.getFont().setStyle(style2[i]);
}

Phrase p = new Phrase();
p.add(c1);
p.add(c2);

Espero que te sirva
__________________
if (fuzzy && smooth) {
fuzzylog = "c00l";
return true;
}
  #3 (permalink)  
Antiguo 03/06/2012, 20:58
 
Fecha de Ingreso: enero-2010
Mensajes: 46
Antigüedad: 12 años, 6 meses
Puntos: 0
Respuesta: Dudas con iText creando un PDF

Fijate que empece a trabajar en esto, pero mmm me perdi un poco en lo de el style, como lo defino? gracias y saludos
  #4 (permalink)  
Antiguo 03/06/2012, 21:26
 
Fecha de Ingreso: enero-2010
Mensajes: 46
Antigüedad: 12 años, 6 meses
Puntos: 0
Respuesta: Dudas con iText creando un PDF

Ya pude, muchas gracias!!

Etiquetas: creando, dudas, itext, pdf
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 03:27.