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

Ayudaaaa con iText!!!!

Estas en el tema de Ayudaaaa con iText!!!! en el foro de Java en Foros del Web. Hola, Aver si alguien me puede ayudar porque ya no sé que hacer... Estoy exportando archivos .pdf, .html desde mi aplicación utilizando la librería iText. ...
  #1 (permalink)  
Antiguo 16/01/2006, 07:11
 
Fecha de Ingreso: enero-2006
Mensajes: 5
Antigüedad: 18 años, 3 meses
Puntos: 0
Pregunta Ayudaaaa con iText!!!!

Hola,

Aver si alguien me puede ayudar porque ya no sé que hacer... Estoy exportando archivos .pdf, .html desde mi aplicación utilizando la librería iText. Me los crea y me añade el texto correctamente, pero necesito mantener el mismo formato, tipo, fuente del texto original. Me copia el texto pero en el pdf me aparece con el formato por defecto: tipo de letra Helvetica, tamaño = 12,... etc. o algo así. ¿¿Como puedo mantenerlo?? ¿¿Existe algun método que me lo copie tal cual sin modificarlo??

Gracias.
  #2 (permalink)  
Antiguo 16/01/2006, 13:44
 
Fecha de Ingreso: diciembre-2005
Ubicación: Madrid, España
Mensajes: 154
Antigüedad: 18 años, 4 meses
Puntos: 2
mmmm, no sé si te servirá de ayuda, pero el jasperReport exporta a ambos formatos manteniendo el formato (valga la redundancia) y empleando iText. Echa un vistazo al código y a lo mejor te sirve de algo.

Saludos
  #3 (permalink)  
Antiguo 17/01/2006, 04:26
 
Fecha de Ingreso: enero-2006
Mensajes: 5
Antigüedad: 18 años, 3 meses
Puntos: 0
Pregunta

Gracias por la información radian. He estado buscando informacion sobre JasperReports pero el problema es que solo encuentro ejemplos con una BDD. Yo solo quiero exportar los ficheros .rtf que genera mi aplicacion a otros formatos, manteniendo el formato. ¿Sabes como hacerlo? Gracias
  #4 (permalink)  
Antiguo 18/01/2006, 06:02
 
Fecha de Ingreso: diciembre-2005
Ubicación: Madrid, España
Mensajes: 154
Antigüedad: 18 años, 4 meses
Puntos: 2
Hazlo con el jasperReports pero sin base de datos.

Mete los valores que quieres que sean dinámicos como parámetros:
$P{nombreParametro}

En tu código usas un HashMap para los parámetros:

Map parametros = new HashMap();
parametros.put("nombreParametro", parametro);

y los metes:
jasperPrint = JasperFillManager.fillReport(jasperReport, parametros, conexion);


Te paso un ejemplo completo para exportar a Pdf y Rtf un mismo archivo:

Código:
JasperReport jasperReport = JasperCompileManager.compileReport(pathAlaPlantilla);
Map parametros = new HashMap();
parametros.put("nombreParametro_i", parametro_i);
JasperPrint jasperPrint = JasperFillManager.fillReport(jasperReport, parametros, conexion); // Si no usas conexión no pasa nada
JasperExportManager.exportReportToPdfFile(jasperPrint, pathAlFicheroDeSalida);

JRRtfExporter exporter = new JRRtfExporter();
exporter.setParameter(JRExporterParameter.JASPER_PRINT, jasperPrint);
exporter.setParameter(JRExporterParameter.OUPUT_FILE_NAME, pathAlFicheroDeSalida);
exporter.exportReport();
Puedes exportar también a XLS, XML, HTML, CVS, ...

Saludos
  #5 (permalink)  
Antiguo 18/01/2006, 16:06
 
Fecha de Ingreso: enero-2006
Mensajes: 5
Antigüedad: 18 años, 3 meses
Puntos: 0
En proceso de desesperación

Vale, de momento ese problemilla esta entendido.

Pero ahora me surge otra duda. Yo tengo que exportar archivos pdf desde mi aplicación a partir de un rtf, entonces para crear el .jasper ¿como lo hago? ¿que ruta debo poner en el JasperCompileManager.compileReport? He hecho pruebas con diferentes path pero me da error en esa linea. Me refiero a lo que tu has llamado "pathAlaPlantilla".
He visto una funcion en el tutorial (JasperManager.loadDesign) y no sé si tengo que cargar el fichero con ella para luego crear el .japer. No seeee!! Me estoy empezando a desesperar!!

La aplicación es algo parecido a un procesador de textos en la que el usuario pulsa una opcion de un menú y el archivo actual se exporta al formato que sea.

Espero que me puedas contestar pronto y con este detalle poder conseguirlo ya. Muchas gracias!!
  #6 (permalink)  
Antiguo 19/01/2006, 05:28
 
Fecha de Ingreso: diciembre-2005
Ubicación: Madrid, España
Mensajes: 154
Antigüedad: 18 años, 4 meses
Puntos: 2
Vale, entonces si no entiendo mal lo que necesitas es una especie de Acrobat Writter. No te puedo ayudar porque yo tengo el mismo problema que tú y la verdad no sé cómo hacerlo sin usar herramientas comerciales.

JasperReports (que usa la librería iText), te puede pasar de código (plantilla jasperReports) a RTF o PDF, pero creo que no se puede hacer la transformación directa RTF -> PDF.

Para leer documentos de MS en Java hay un proyecto en Jakarta llamado POI http://jakarta.apache.org/poi/ . Echa un vistazo.

Si te enteras de algo más por favor te pido que nos cuentes.

Un saludo y suerte

Última edición por radian; 19/01/2006 a las 05:43
  #7 (permalink)  
Antiguo 19/01/2006, 14:02
 
Fecha de Ingreso: enero-2006
Mensajes: 5
Antigüedad: 18 años, 3 meses
Puntos: 0
No te preocupes, por lo que veo estamos los dos igual...

Seguiré buscando a ver si encuentro por fin lo que necesito. Miraré también el enlace que me has indicado.

Y por favor, si alguien que sabe de alguna librería que nos permita solucionar nuestro problema, se agradecería MUCHO vuestra información. Gracias.
  #8 (permalink)  
Antiguo 21/11/2006, 10:50
 
Fecha de Ingreso: noviembre-2006
Mensajes: 12
Antigüedad: 17 años, 5 meses
Puntos: 0
problema con response.getOutputStream()

Estoy creando un pdf desde una JSP para ello he usado la libreria iText. Apesar de crear el archivo con exito, el tomcat me genera la siguiente excepcion:

(StandardWrapperValve.java:260) - Servlet.service() para servlet jsp lanzó excepción

java.lang.IllegalStateException: getOutputStream() ya ha sido llamado para esta respuesta

at org.apache.catalina.connector.Response.getWriter(R esponse.java:596)


El codigo que uso para crear el PDFWriter es el siguiente:

PdfWriter writer = PdfWriter.getInstance(doc, response.getOutputStream());

He probado tb en vez de hacerlo directamente hacerlo atraves de un ByteArrayOutputStream , pero cuando llega la hora de mostralo atarves del response.getOutputStream() salta la excepcion. Alguna idea de como desacerme de esto o de xq surge??
Graciassss
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

SíEste tema le ha gustado a 1 personas (incluyéndote)




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