Java tutorial
/* * To change this license header, choose License Headers in Project Properties. * To change this template file, choose Tools | Templates * and open the template in the editor. */ package com.pdfs; import com.demo.model.Devolucion; import com.itextpdf.text.BaseColor; import com.itextpdf.text.Chunk; import com.itextpdf.text.Document; import com.itextpdf.text.DocumentException; import com.itextpdf.text.Font; import com.itextpdf.text.FontFactory; import com.itextpdf.text.Image; import com.itextpdf.text.PageSize; import com.itextpdf.text.Paragraph; import com.itextpdf.text.pdf.PdfWriter; import java.io.File; import java.io.FileNotFoundException; import java.io.FileOutputStream; import java.text.NumberFormat; import java.util.List; import java.util.Locale; import java.util.logging.Level; import java.util.logging.Logger; /** * * @author casiopea */ public class generadorDevolucionReport { private Document documento = new Document(PageSize.LETTER, 30, 30, 20, 20); private Font tituloN1 = FontFactory.getFont("arial", 16, Font.BOLD, BaseColor.BLACK); private Font tituloN2 = FontFactory.getFont("arial", 12, Font.BOLD, BaseColor.BLACK); private Font tituloN3 = FontFactory.getFont("arial", 10, Font.NORMAL, BaseColor.BLACK); private Font cuerpo = FontFactory.getFont("arial", 11, Font.NORMAL, BaseColor.BLACK); private Font cuerpo2 = FontFactory.getFont("arial", 9, Font.NORMAL, BaseColor.BLACK); private Font cuerpoNegritas = FontFactory.getFont("arial", 11, Font.BOLD, BaseColor.BLACK); private Font cuerpoMini = FontFactory.getFont("arial", 8, Font.NORMAL, BaseColor.BLACK); private Locale locale = new Locale("es", "MX"); // elegimos Argentina private NumberFormat nf = NumberFormat.getCurrencyInstance(locale); public boolean generarReporteDev(List<Devolucion> listaDevo, String nombre) { try { FileOutputStream archivoPdf = null; System.out.println("nombre documento: " + nombre); File archivo = new File(nombre); System.out.println("Se creo el archivo"); archivoPdf = new FileOutputStream(archivo); // Se asocia el documento al OutputStream y se indica que el espaciado entre // lineas sera de 20. Esta llamada debe hacerse antes de abrir el documento PdfWriter pw = PdfWriter.getInstance(documento, archivoPdf); pw.setInitialLeading(20); // abrir el documento documento.open(); System.out.println("Se abrio el documento"); Paragraph p = new Paragraph("RELACION DE DEVOLUCIONES DE CUENTAS", tituloN1); p.setAlignment(Chunk.ALIGN_CENTER); documento.add(p); documento.close(); return true; } catch (FileNotFoundException ex) { Logger.getLogger(generadorDevolucionReport.class.getName()).log(Level.SEVERE, null, ex); return false; } catch (DocumentException ex) { Logger.getLogger(generadorDevolucionReport.class.getName()).log(Level.SEVERE, null, ex); return false; } } }