List of usage examples for com.lowagie.text.pdf PdfWriter getInstance
public static PdfWriter getInstance(Document document, OutputStream os) throws DocumentException
PdfWriter
. From source file:jm.Reporte.java
License:GNU General Public License
public void activosPersonalizadosClientes(HttpServletResponse response, String[] cabTabla, float[] anchoTabla, ResultSet registros, DataBase objDB) { /* inicio PDF */ Rectangle orientacion = (this.vertical) ? PageSize.A4 : PageSize.A4.rotate(); Document document = new Document(orientacion);// paso 1 document.setMargins(0, 0, 50, 80); /*Izquierda, derecha, tope, pie */ try {/* www .j a v a 2 s.com*/ PdfWriter writer = PdfWriter.getInstance(document, response.getOutputStream()); // paso 2 writer.setPageEvent(new Reporte(this.vertical, this.logo, this.titulo, this.ruc, this.subtitulo, this.direccion, this.sucursal, this.rep_pie)); document.open(); // paso 3 /* todo el cuerpo del doc es el paso 4 */ document.add(Addons.setCabecera(this.logo, this.titulo, this.ruc, this.subtitulo, this.direccion, this.sucursal)); document.add(Addons.setCabeceraTabla(cabTabla, anchoTabla)); PdfPTable tbl_det = new PdfPTable(anchoTabla); try { while (registros.next()) { String persona_recibe = ""; String num_personalizacion = (registros.getString("num_personalizacion") != null) ? registros.getString("num_personalizacion") : ""; try { ResultSet rs = objDB .consulta("select * from tbl_activo_personalizacion where num_documento=" + num_personalizacion); if (rs.next()) { persona_recibe = (rs.getString("persona_recibe") != null) ? rs.getString("persona_recibe") : ""; rs.close(); } } catch (Exception e) { e.printStackTrace(); } tbl_det.addCell(Addons.setCeldaPDF(String.valueOf(persona_recibe), Font.TIMES_ROMAN, 8, Font.NORMAL, Element.ALIGN_LEFT, 1)); String mac = (registros.getString("codigo_activo") != null) ? registros.getString("codigo_activo") : ""; tbl_det.addCell(Addons.setCeldaPDF(String.valueOf(mac), Font.TIMES_ROMAN, 8, Font.NORMAL, Element.ALIGN_LEFT, 1)); } registros.close(); } catch (Exception e) { e.printStackTrace(); } document.add(tbl_det); } catch (IllegalStateException ie) { ie.printStackTrace(); } catch (DocumentException e) { e.printStackTrace(); } catch (Exception e) { e.printStackTrace(); } document.close(); // paso 5 /* fin PDF */ }
From source file:jm.seg.frmGeneraPdf.java
License:GNU General Public License
public void GenerarFactura(String ruta_xml, String dir, String _archivoNombre) throws FileNotFoundException { File _archivo = null;/*from ww w.j a va2 s. c o m*/ Xml xml = new Xml(ruta_xml + ".xml"); String numeroAutorizacion = xml.getValor("numeroAutorizacion"); String fechaAutorizacion = xml.getValor("fechaAutorizacion"); String doc = xml.getValor("comprobante"); try { _archivo = new File(dir, _archivoNombre + "xml.xml"); if (!_archivo.exists()) { //byte[] bytes = (res.getString(campoBytea)!=null) ? res.getBytes(campoBytea) : null; RandomAccessFile archivo = new RandomAccessFile(dir + _archivoNombre + "xml.xml", "rw"); archivo.writeBytes(doc); archivo.close(); } } catch (Exception e) { e.printStackTrace(); } //infoTributaria Xml xml2 = new Xml(ruta_xml + "xml.xml"); String ambiente = xml2.getValor("ambiente"); String tipoEmision = xml2.getValor("tipoEmision"); String razonSocial = xml2.getValor("razonSocial"); String nombreComercial = xml2.getValor("nombreComercial"); String ruc = xml2.getValor("ruc"); String claveAcceso = xml2.getValor("claveAcceso"); String codDoc = xml2.getValor("codDoc"); String numFac = xml2.getValor("estab") + "-" + xml2.getValor("ptoEmi") + "-" + xml2.getValor("secuencial"); String dirMatriz = xml2.getValor("dirMatriz"); String EMAIL = ""; String DIRECCION = ""; String ARCOTEL = ""; int limiteAdi = xml2.getNumNodos("campoAdicional"); try { //Campos Adicionales for (int i = 0; i < limiteAdi; i++) { if (xml2.getAtributo("campoAdicional", i, "nombre").toUpperCase().compareTo("EMAIL") == 0) { EMAIL = xml2.getValor("campoAdicional", i); } if (xml2.getAtributo("campoAdicional", i, "nombre").toUpperCase().compareTo("DIRECCION") == 0) { DIRECCION = xml2.getValor("campoAdicional", i); } if (xml2.getAtributo("campoAdicional", i, "nombre").toUpperCase().compareTo("ARCOTEL") == 0) { ARCOTEL = xml2.getValor("campoAdicional", i); } } } catch (Exception e) { e.printStackTrace(); } if (ambiente.compareTo("1") == 0) { ambiente = "Pruebas"; } if (ambiente.compareTo("2") == 0) { ambiente = "Produccin"; } if (tipoEmision.compareTo("1") == 0) { tipoEmision = "Normal"; } if (tipoEmision.compareTo("2") == 0) { tipoEmision = "Contingencia"; } if (codDoc.compareTo("01") == 0) { //infoFactura String fechaEmision = xml2.getValor("fechaEmision"); String dirEstablecimiento = xml2.getValor("dirEstablecimiento"); String contribuyenteEspecial = xml2.getValor("contribuyenteEspecial"); String obligadoContabilidad = xml2.getValor("obligadoContabilidad"); String razonSocialComprador = xml2.getValor("razonSocialComprador"); String identificacionComprador = xml2.getValor("identificacionComprador"); String totalSinImpuestos = xml2.getValor("totalSinImpuestos"); String totalDescuento = xml2.getValor("totalDescuento"); String codigoPorcentaje = xml2.getValor("codigoPorcentaje");//0% 0 >>12% 2>>mo objeto de impuesto 6>>Excento al iva 7 String baseImponible = xml2.getValor("baseImponible"); //Depende del codigo porcentaje String valor = xml2.getValor("valor");// va en el Iva 12% String importeTotal = xml2.getValor("importeTotal");//Sumatoria de todo //detalles int limite = xml2.getNumNodos("detalle"); String[][] array = new String[limite][6]; for (int i = 0; i < limite; i++) { array[i][0] = xml2.getValor("codigoPrincipal"); array[i][1] = xml2.getValor("descripcion"); array[i][2] = xml2.getValor("cantidad"); array[i][3] = xml2.getValor("precioUnitario"); array[i][4] = xml2.getValor("descuento"); array[i][5] = xml2.getValor("precioTotalSinImpuesto"); } /* inicio PDF */ Document pdf = new Document(PageSize.A4);// paso 1 pdf.setMargins(-35, -45, 40, 10); /*Izquierda, derecha, tope, pie */ try { PdfWriter writer = PdfWriter.getInstance(pdf, new FileOutputStream(dir + claveAcceso + ".pdf")); pdf.open(); //pdf.open(); // paso 3 // Para enviar a la impresora automticamente. //writer.addJavaScript("this.print(false);", false); /* todo el cuerpo del doc es el paso 4 */ //PdfPTable tbl_titulo = new PdfPTable(1); PdfPTable tbl_titulo = new PdfPTable(new float[] { 49f, 2f, 49f }); PdfPTable tbl_1 = new PdfPTable(new float[] { 37f, 63f }); PdfPTable tbl_2 = new PdfPTable(1); //titulos izquierda tbl_1.addCell(Addons.setLogo(dir + "logo.jpg", 250, 83, Element.ALIGN_CENTER));//ancho,alto tbl_1.addCell( Addons.setCeldaPDF(" ", Font.STRIKETHRU, 10, Font.NORMAL, Element.ALIGN_LEFT, 0, 5, 2)); tbl_1.addCell(Addons.setCeldaPDF(razonSocial + " '" + nombreComercial + "' ", Font.STRIKETHRU, 10, Font.NORMAL, Element.ALIGN_CENTER, 0, 8, 2)); tbl_1.addCell(Addons.setCeldaPDF("Direccin Matriz: ", Font.STRIKETHRU, 10, Font.NORMAL, Element.ALIGN_LEFT, 0, 5, 0)); tbl_1.addCell(Addons.setCeldaPDF(dirMatriz, Font.STRIKETHRU, 10, Font.NORMAL, Element.ALIGN_LEFT, 0, 5, 0)); tbl_1.addCell(Addons.setCeldaPDF("Direccin Sucursal: ", Font.STRIKETHRU, 10, Font.NORMAL, Element.ALIGN_LEFT, 0, 5, 0)); tbl_1.addCell(Addons.setCeldaPDF(dirEstablecimiento, Font.STRIKETHRU, 10, Font.NORMAL, Element.ALIGN_LEFT, 0, 5, 0)); tbl_1.addCell(Addons.setCeldaPDF("Contribuyente Especial Nro. " + contribuyenteEspecial, Font.STRIKETHRU, 10, Font.NORMAL, Element.ALIGN_LEFT, 0, 5, 2)); tbl_1.addCell(Addons.setCeldaPDF("OBLIGADO A LLEVAR CONTABILIDAD: " + obligadoContabilidad, Font.STRIKETHRU, 10, Font.NORMAL, Element.ALIGN_LEFT, 0, 5, 2)); //Titulos derecha tbl_2.addCell(Addons.setCeldaPDF("R.U.C: " + ruc, Font.STRIKETHRU, 10, Font.NORMAL, Element.ALIGN_LEFT, 0, 5)); tbl_2.addCell(Addons.setCeldaPDF("F A C T U R A ", Font.STRIKETHRU, 10, Font.NORMAL, Element.ALIGN_LEFT, 0, 5)); tbl_2.addCell(Addons.setCeldaPDF("No. " + numFac, Font.STRIKETHRU, 10, Font.NORMAL, Element.ALIGN_LEFT, 0, 5)); tbl_2.addCell(Addons.setCeldaPDF("NMERO DE AUTORIZACIN", Font.STRIKETHRU, 10, Font.NORMAL, Element.ALIGN_LEFT, 0, 5)); tbl_2.addCell(Addons.setCeldaPDF(numeroAutorizacion, Font.STRIKETHRU, 10, Font.NORMAL, Element.ALIGN_LEFT, 0, 5)); tbl_2.addCell(Addons.setCeldaPDF("FECHA Y HORA DE AUTORIZACION", Font.STRIKETHRU, 10, Font.NORMAL, Element.ALIGN_LEFT, 0, 5)); tbl_2.addCell(Addons.setCeldaPDF(fechaAutorizacion, Font.STRIKETHRU, 10, Font.NORMAL, Element.ALIGN_LEFT, 0, 5)); tbl_2.addCell(Addons.setCeldaPDF("AMBIENTE: " + ambiente, Font.STRIKETHRU, 10, Font.NORMAL, Element.ALIGN_LEFT, 0, 5)); tbl_2.addCell(Addons.setCeldaPDF("EMISIN: " + tipoEmision, Font.STRIKETHRU, 10, Font.NORMAL, Element.ALIGN_LEFT, 0, 5)); tbl_2.addCell(Addons.setCeldaPDF("CLAVE DE ACCESO", Font.STRIKETHRU, 10, Font.NORMAL, Element.ALIGN_LEFT, 0, 5)); tbl_2.addCell(Addons.setBarCode(this.getBarcode(writer, claveAcceso)));//ancho,alto tbl_titulo.addCell(Addons.setCeldaPDF(tbl_1, 0, 1)); tbl_titulo.addCell(Addons.setCeldaPDF(" ", Font.TIMES_ROMAN, 1, Font.NORMAL, 0, 0)); tbl_titulo.addCell(Addons.setCeldaPDF(tbl_2, 0, 1)); tbl_titulo.addCell(Addons.setFilaBlanco(3, 20)); pdf.add(tbl_titulo); //Informacion Cliente PdfPTable tbl_info = new PdfPTable(1); PdfPTable tbl_info1 = new PdfPTable(new float[] { 32f, 43f, 25f }); tbl_info1.addCell(Addons.setCeldaPDF("Razn Social / Nombres y Apellidos: ", Font.STRIKETHRU, 10, Font.NORMAL, Element.ALIGN_LEFT, 0, 8)); tbl_info1.addCell(Addons.setCeldaPDF(razonSocialComprador, Font.STRIKETHRU, 10, Font.NORMAL, Element.ALIGN_LEFT, 0, 8)); tbl_info1.addCell(Addons.setCeldaPDF("RUC/CI: " + identificacionComprador, Font.STRIKETHRU, 10, Font.NORMAL, Element.ALIGN_LEFT, 0, 8)); tbl_info1.addCell(Addons.setCeldaPDF("Fecha de emisin: " + fechaEmision, Font.STRIKETHRU, 10, Font.NORMAL, Element.ALIGN_LEFT, 0, 8, 1)); tbl_info1.addCell(Addons.setCeldaPDF("DIRECCION: " + DIRECCION, Font.STRIKETHRU, 10, Font.NORMAL, Element.ALIGN_LEFT, 0, 8, 2)); tbl_info.addCell(Addons.setCeldaPDF(tbl_info1, 0, 1)); tbl_info.addCell(Addons.setFilaBlanco(3, 20)); pdf.add(tbl_info); //Detalles PdfPTable tbl_det = new PdfPTable(1); PdfPTable tbl_det1 = new PdfPTable(new float[] { 10f, 10f, 50f, 10f, 10f, 10f }); tbl_det1.addCell(Addons.setCeldaPDF("Cod. Principal", Font.STRIKETHRU, 10, Font.NORMAL, Element.ALIGN_CENTER, 1, 5)); tbl_det1.addCell( Addons.setCeldaPDF("Cant.", Font.STRIKETHRU, 10, Font.NORMAL, Element.ALIGN_CENTER, 1, 5)); tbl_det1.addCell(Addons.setCeldaPDF("Descripcin", Font.STRIKETHRU, 10, Font.NORMAL, Element.ALIGN_CENTER, 1, 5)); tbl_det1.addCell(Addons.setCeldaPDF("Precio Unitario", Font.STRIKETHRU, 10, Font.NORMAL, Element.ALIGN_CENTER, 1, 5)); tbl_det1.addCell( Addons.setCeldaPDF("Desc.", Font.STRIKETHRU, 10, Font.NORMAL, Element.ALIGN_CENTER, 1, 5)); tbl_det1.addCell( Addons.setCeldaPDF("Total", Font.STRIKETHRU, 10, Font.NORMAL, Element.ALIGN_CENTER, 1, 5)); for (int i = 0; i < limite; i++) { tbl_det1.addCell(Addons.setCeldaPDF(array[i][0], Font.STRIKETHRU, 10, Font.NORMAL, Element.ALIGN_LEFT, 1, 5)); tbl_det1.addCell(Addons.setCeldaPDF(array[i][2], Font.STRIKETHRU, 10, Font.NORMAL, Element.ALIGN_LEFT, 1, 5)); tbl_det1.addCell(Addons.setCeldaPDF(array[i][1], Font.STRIKETHRU, 10, Font.NORMAL, Element.ALIGN_LEFT, 1, 5)); tbl_det1.addCell(Addons.setCeldaPDF(array[i][3], Font.STRIKETHRU, 10, Font.NORMAL, Element.ALIGN_RIGHT, 1, 5)); tbl_det1.addCell(Addons.setCeldaPDF(array[i][4], Font.STRIKETHRU, 10, Font.NORMAL, Element.ALIGN_RIGHT, 1, 5)); tbl_det1.addCell(Addons.setCeldaPDF(array[i][5], Font.STRIKETHRU, 10, Font.NORMAL, Element.ALIGN_RIGHT, 1, 5)); } tbl_det.addCell(Addons.setCeldaPDF(tbl_det1, 0, 1)); tbl_det.addCell(Addons.setFilaBlanco(6, 20)); pdf.add(tbl_det); //Informacion Adicional PdfPTable tbl_info_ad = new PdfPTable(new float[] { 40f, 10f, 50f }); PdfPTable tbl_info_ad1 = new PdfPTable(new float[] { 30f, 70f }); PdfPTable tbl_info_ad2 = new PdfPTable(new float[] { 70f, 30f }); //titulos izquierda tbl_info_ad1.addCell(Addons.setCeldaPDF("Informacin Adicional", Font.STRIKETHRU, 10, Font.NORMAL, Element.ALIGN_CENTER, 0, 5, 2)); tbl_info_ad1.addCell(Addons.setCeldaPDF("Contacto: ", Font.STRIKETHRU, 10, Font.NORMAL, Element.ALIGN_LEFT, 0, 8, 0)); tbl_info_ad1.addCell(Addons.setCeldaPDF("062609177 / 062610330", Font.STRIKETHRU, 10, Font.NORMAL, Element.ALIGN_LEFT, 0, 8, 0)); tbl_info_ad1.addCell(Addons.setCeldaPDF("Email: ", Font.STRIKETHRU, 10, Font.NORMAL, Element.ALIGN_LEFT, 0, 8, 0)); tbl_info_ad1.addCell( Addons.setCeldaPDF(EMAIL, Font.STRIKETHRU, 10, Font.NORMAL, Element.ALIGN_LEFT, 0, 8, 0)); tbl_info_ad1.addCell(Addons.setCeldaPDF("Sitio Web:", Font.STRIKETHRU, 10, Font.NORMAL, Element.ALIGN_LEFT, 0, 8, 0)); tbl_info_ad1.addCell(Addons.setCeldaPDF("www.saitel.ec", Font.STRIKETHRU, 10, Font.NORMAL, Element.ALIGN_LEFT, 0, 8, 0)); tbl_info_ad1.addCell( Addons.setCeldaPDF(ARCOTEL, Font.STRIKETHRU, 10, Font.NORMAL, Element.ALIGN_LEFT, 0, 8, 2)); //Titulos derecha if (codigoPorcentaje.compareTo("0") == 0) { tbl_info_ad2.addCell(Addons.setCeldaPDF("SUBTOTAL 12% ", Font.STRIKETHRU, 10, Font.NORMAL, Element.ALIGN_LEFT, 0, 5, 2)); tbl_info_ad2.addCell(Addons.setCeldaPDF("0.00", Font.STRIKETHRU, 10, Font.NORMAL, Element.ALIGN_RIGHT, 0, 5, 2)); tbl_info_ad2.addCell(Addons.setCeldaPDF("SUBTOTAL 0% ", Font.STRIKETHRU, 10, Font.NORMAL, Element.ALIGN_CENTER, 0, 8, 0)); tbl_info_ad2.addCell(Addons.setCeldaPDF(baseImponible, Font.STRIKETHRU, 10, Font.NORMAL, Element.ALIGN_RIGHT, 0, 5, 2)); tbl_info_ad2.addCell(Addons.setCeldaPDF("SUBTOTAL No objeto de IVA", Font.STRIKETHRU, 10, Font.NORMAL, Element.ALIGN_CENTER, 0, 8, 0)); tbl_info_ad2.addCell(Addons.setCeldaPDF("0.00", Font.STRIKETHRU, 10, Font.NORMAL, Element.ALIGN_RIGHT, 0, 5, 2)); tbl_info_ad2.addCell(Addons.setCeldaPDF("SUBTOTAL SIN IMPUESTOS", Font.STRIKETHRU, 10, Font.NORMAL, Element.ALIGN_CENTER, 0, 8, 0)); tbl_info_ad2.addCell(Addons.setCeldaPDF(totalSinImpuestos, Font.STRIKETHRU, 10, Font.NORMAL, Element.ALIGN_RIGHT, 0, 5, 2)); tbl_info_ad2.addCell(Addons.setCeldaPDF("SUBTOTAL Exento de IVA", Font.STRIKETHRU, 10, Font.NORMAL, Element.ALIGN_CENTER, 0, 8, 0)); tbl_info_ad2.addCell(Addons.setCeldaPDF(valor, Font.STRIKETHRU, 10, Font.NORMAL, Element.ALIGN_RIGHT, 0, 5, 2)); tbl_info_ad2.addCell(Addons.setCeldaPDF("DESCUENTO", Font.STRIKETHRU, 10, Font.NORMAL, Element.ALIGN_CENTER, 0, 8, 0)); tbl_info_ad2.addCell(Addons.setCeldaPDF(totalDescuento, Font.STRIKETHRU, 10, Font.NORMAL, Element.ALIGN_RIGHT, 0, 5, 2)); tbl_info_ad2.addCell(Addons.setCeldaPDF("IVA 12%", Font.STRIKETHRU, 10, Font.NORMAL, Element.ALIGN_CENTER, 0, 8, 0)); tbl_info_ad2.addCell(Addons.setCeldaPDF("0.00", Font.STRIKETHRU, 10, Font.NORMAL, Element.ALIGN_RIGHT, 0, 5, 2)); } if (codigoPorcentaje.compareTo("2") == 0) { tbl_info_ad2.addCell(Addons.setCeldaPDF("SUBTOTAL 12% ", Font.STRIKETHRU, 10, Font.NORMAL, Element.ALIGN_LEFT, 1, 5)); tbl_info_ad2.addCell(Addons.setCeldaPDF(baseImponible, Font.STRIKETHRU, 10, Font.NORMAL, Element.ALIGN_RIGHT, 1, 5)); tbl_info_ad2.addCell(Addons.setCeldaPDF("SUBTOTAL 0% ", Font.STRIKETHRU, 10, Font.NORMAL, Element.ALIGN_LEFT, 1, 5)); tbl_info_ad2.addCell(Addons.setCeldaPDF("0.00", Font.STRIKETHRU, 10, Font.NORMAL, Element.ALIGN_RIGHT, 1, 5)); tbl_info_ad2.addCell(Addons.setCeldaPDF("SUBTOTAL No objeto de IVA", Font.STRIKETHRU, 10, Font.NORMAL, Element.ALIGN_LEFT, 1, 5)); tbl_info_ad2.addCell(Addons.setCeldaPDF("0.00", Font.STRIKETHRU, 10, Font.NORMAL, Element.ALIGN_RIGHT, 1, 5)); tbl_info_ad2.addCell(Addons.setCeldaPDF("SUBTOTAL SIN IMPUESTOS", Font.STRIKETHRU, 10, Font.NORMAL, Element.ALIGN_LEFT, 1, 5)); tbl_info_ad2.addCell(Addons.setCeldaPDF(totalSinImpuestos, Font.STRIKETHRU, 10, Font.NORMAL, Element.ALIGN_RIGHT, 1, 5)); tbl_info_ad2.addCell(Addons.setCeldaPDF("SUBTOTAL Exento de IVA", Font.STRIKETHRU, 10, Font.NORMAL, Element.ALIGN_LEFT, 1, 5)); tbl_info_ad2.addCell(Addons.setCeldaPDF("0.00", Font.STRIKETHRU, 10, Font.NORMAL, Element.ALIGN_RIGHT, 1, 5)); tbl_info_ad2.addCell(Addons.setCeldaPDF("DESCUENTO", Font.STRIKETHRU, 10, Font.NORMAL, Element.ALIGN_LEFT, 1, 5)); tbl_info_ad2.addCell(Addons.setCeldaPDF(totalDescuento, Font.STRIKETHRU, 10, Font.NORMAL, Element.ALIGN_RIGHT, 1, 5)); tbl_info_ad2.addCell(Addons.setCeldaPDF("IVA 12%", Font.STRIKETHRU, 10, Font.NORMAL, Element.ALIGN_LEFT, 1, 5)); tbl_info_ad2.addCell( Addons.setCeldaPDF(valor, Font.STRIKETHRU, 10, Font.NORMAL, Element.ALIGN_RIGHT, 1, 5)); } tbl_info_ad2.addCell(Addons.setCeldaPDF("VALOR TOTAL", Font.STRIKETHRU, 10, Font.NORMAL, Element.ALIGN_LEFT, 1, 5)); tbl_info_ad2.addCell(Addons.setCeldaPDF(Addons.redondear(importeTotal), Font.STRIKETHRU, 10, Font.NORMAL, Element.ALIGN_RIGHT, 1, 5)); tbl_info_ad.addCell(Addons.setCeldaPDF(tbl_info_ad1, 0, 1)); tbl_info_ad.addCell(Addons.setCeldaPDF(" ", Font.TIMES_ROMAN, 1, Font.NORMAL, 0, 0)); tbl_info_ad.addCell(Addons.setCeldaPDF(tbl_info_ad2, 0, 1)); pdf.add(tbl_info_ad); } catch (IllegalStateException ie) { ie.printStackTrace(); } catch (DocumentException e) { e.printStackTrace(); } finally { } pdf.close(); // paso 5 /* fin PDF */ } //Nota de credito if (codDoc.compareTo("04") == 0) { //infoFactura String fechaEmision = xml2.getValor("fechaEmision"); String dirEstablecimiento = xml2.getValor("dirEstablecimiento"); String razonSocialComprador = xml2.getValor("razonSocialComprador"); String identificacionComprador = xml2.getValor("identificacionComprador"); String contribuyenteEspecial = xml2.getValor("contribuyenteEspecial"); String obligadoContabilidad = xml2.getValor("obligadoContabilidad"); String codDocModificado = xml2.getValor("codDocModificado"); String numDocModificado = xml2.getValor("numDocModificado"); String fechaEmisionDocSustento = xml2.getValor("fechaEmisionDocSustento"); String motivo = xml2.getValor("motivo"); String totalSinImpuestos = xml2.getValor("totalSinImpuestos"); if (codDocModificado.compareTo("01") == 0) { codDocModificado = "FACTURA"; } if (codDocModificado.compareTo("04") == 0) { codDocModificado = "NOTA DE CRDITO"; } if (codDocModificado.compareTo("05") == 0) { codDocModificado = "NOTA DE DBITO"; } if (codDocModificado.compareTo("06") == 0) { codDocModificado = "GU?A DE REMISION"; } if (codDocModificado.compareTo("07") == 0) { codDocModificado = "COMPROBANTE DE RETENCIN"; } String codigoPorcentaje = xml2.getValor("codigoPorcentaje");//0% 0 >>12% 2>>mo objeto de impuesto 6>>Excento al iva 7 String baseImponible = xml2.getValor("baseImponible"); //Depende del codigo porcentaje String valor = xml2.getValor("valor");// va en el Iva 12% //detalles int limite = xml2.getNumNodos("detalle"); String[][] array = new String[limite][6]; for (int i = 0; i < limite; i++) { array[i][0] = xml2.getValor("codigoPrincipal"); array[i][1] = xml2.getValor("descripcion"); array[i][2] = xml2.getValor("cantidad"); array[i][3] = xml2.getValor("precioUnitario"); array[i][4] = xml2.getValor("descuento"); array[i][5] = xml2.getValor("precioTotalSinImpuesto"); } /* inicio PDF */ Document pdf = new Document(PageSize.A4);// paso 1 pdf.setMargins(-35, -45, 40, 10); /*Izquierda, derecha, tope, pie */ try { PdfWriter writer = PdfWriter.getInstance(pdf, new FileOutputStream(dir + claveAcceso + ".pdf")); pdf.open(); //pdf.open(); // paso 3 // Para enviar a la impresora automticamente. //writer.addJavaScript("this.print(false);", false); /* todo el cuerpo del doc es el paso 4 */ //PdfPTable tbl_titulo = new PdfPTable(1); PdfPTable tbl_titulo = new PdfPTable(new float[] { 49f, 2f, 49f }); PdfPTable tbl_1 = new PdfPTable(new float[] { 37f, 63f }); PdfPTable tbl_2 = new PdfPTable(1); //titulos izquierda tbl_1.addCell(Addons.setLogo(dir + "logo.jpg", 250, 83, Element.ALIGN_CENTER));//ancho,alto tbl_1.addCell( Addons.setCeldaPDF(" ", Font.STRIKETHRU, 10, Font.NORMAL, Element.ALIGN_LEFT, 0, 5, 2)); tbl_1.addCell(Addons.setCeldaPDF(razonSocial + " '" + nombreComercial + "' ", Font.STRIKETHRU, 10, Font.NORMAL, Element.ALIGN_CENTER, 0, 8, 2)); tbl_1.addCell(Addons.setCeldaPDF("Direccin Matriz: ", Font.STRIKETHRU, 10, Font.NORMAL, Element.ALIGN_LEFT, 0, 5, 0)); tbl_1.addCell(Addons.setCeldaPDF(dirMatriz, Font.STRIKETHRU, 10, Font.NORMAL, Element.ALIGN_LEFT, 0, 5, 0)); tbl_1.addCell(Addons.setCeldaPDF("Direccin Sucursal: ", Font.STRIKETHRU, 10, Font.NORMAL, Element.ALIGN_LEFT, 0, 5, 0)); tbl_1.addCell(Addons.setCeldaPDF(dirEstablecimiento, Font.STRIKETHRU, 10, Font.NORMAL, Element.ALIGN_LEFT, 0, 5, 0)); tbl_1.addCell(Addons.setCeldaPDF("Contribuyente Especial Nro. " + contribuyenteEspecial, Font.STRIKETHRU, 10, Font.NORMAL, Element.ALIGN_LEFT, 0, 5, 2)); tbl_1.addCell(Addons.setCeldaPDF("OBLIGADO A LLEVAR CONTABILIDAD: " + obligadoContabilidad, Font.STRIKETHRU, 10, Font.NORMAL, Element.ALIGN_LEFT, 0, 5, 2)); //Titulos derecha tbl_2.addCell(Addons.setCeldaPDF("R.U.C: " + ruc, Font.STRIKETHRU, 10, Font.NORMAL, Element.ALIGN_LEFT, 0, 5)); tbl_2.addCell(Addons.setCeldaPDF("F A C T U R A ", Font.STRIKETHRU, 10, Font.NORMAL, Element.ALIGN_LEFT, 0, 5)); tbl_2.addCell(Addons.setCeldaPDF("No. " + numFac, Font.STRIKETHRU, 10, Font.NORMAL, Element.ALIGN_LEFT, 0, 5)); tbl_2.addCell(Addons.setCeldaPDF("NMERO DE AUTORIZACIN", Font.STRIKETHRU, 10, Font.NORMAL, Element.ALIGN_LEFT, 0, 5)); tbl_2.addCell(Addons.setCeldaPDF(numeroAutorizacion, Font.STRIKETHRU, 10, Font.NORMAL, Element.ALIGN_LEFT, 0, 5)); tbl_2.addCell(Addons.setCeldaPDF("FECHA Y HORA DE AUTORIZACIN", Font.STRIKETHRU, 10, Font.NORMAL, Element.ALIGN_LEFT, 0, 5)); tbl_2.addCell(Addons.setCeldaPDF(fechaAutorizacion, Font.STRIKETHRU, 10, Font.NORMAL, Element.ALIGN_LEFT, 0, 5)); tbl_2.addCell(Addons.setCeldaPDF("AMBIENTE: " + ambiente, Font.STRIKETHRU, 10, Font.NORMAL, Element.ALIGN_LEFT, 0, 5)); tbl_2.addCell(Addons.setCeldaPDF("EMISIN: " + tipoEmision, Font.STRIKETHRU, 10, Font.NORMAL, Element.ALIGN_LEFT, 0, 5)); tbl_2.addCell(Addons.setCeldaPDF("CLAVE DE ACCESO", Font.STRIKETHRU, 10, Font.NORMAL, Element.ALIGN_LEFT, 0, 5)); tbl_2.addCell(Addons.setBarCode(this.getBarcode(writer, claveAcceso)));//ancho,alto tbl_titulo.addCell(Addons.setCeldaPDF(tbl_1, 0, 1)); tbl_titulo.addCell(Addons.setCeldaPDF(" ", Font.TIMES_ROMAN, 1, Font.NORMAL, 0, 0)); tbl_titulo.addCell(Addons.setCeldaPDF(tbl_2, 0, 1)); tbl_titulo.addCell(Addons.setFilaBlanco(3, 20)); pdf.add(tbl_titulo); //Informacion Cliente PdfPTable tbl_info = new PdfPTable(1); PdfPTable tbl_info1 = new PdfPTable(new float[] { 32f, 43f, 25f }); tbl_info1.addCell(Addons.setCeldaPDF("Razn Social / Nombres y Apellidos: ", Font.STRIKETHRU, 10, Font.NORMAL, Element.ALIGN_LEFT, 0, 5)); tbl_info1.addCell(Addons.setCeldaPDF(razonSocialComprador, Font.STRIKETHRU, 10, Font.NORMAL, Element.ALIGN_LEFT, 0, 5)); tbl_info1.addCell(Addons.setCeldaPDF("RUC/CI: " + identificacionComprador, Font.STRIKETHRU, 10, Font.NORMAL, Element.ALIGN_LEFT, 0, 5)); tbl_info1.addCell(Addons.setCeldaPDF("Fecha de emisin:" + fechaEmision, Font.STRIKETHRU, 10, Font.NORMAL, Element.ALIGN_LEFT, 0, 5, 3)); tbl_info1.addCell(Addons.setCeldaPDF( "-------------------------------------------------------------------------------------------------------------", Font.STRIKETHRU, 10, Font.NORMAL, Element.ALIGN_CENTER, 0, 5, 3)); tbl_info1.addCell(Addons.setCeldaPDF("Comprobante que se Modifica:", Font.STRIKETHRU, 10, Font.NORMAL, Element.ALIGN_LEFT, 0, 5)); tbl_info1.addCell(Addons.setCeldaPDF(codDocModificado + ": " + numDocModificado, Font.STRIKETHRU, 10, Font.NORMAL, Element.ALIGN_LEFT, 0, 5, 2)); tbl_info1.addCell(Addons.setCeldaPDF("Fecha emisin (Comprobante a Modificar)", Font.STRIKETHRU, 10, Font.NORMAL, Element.ALIGN_LEFT, 0, 5)); tbl_info1.addCell(Addons.setCeldaPDF(fechaEmisionDocSustento, Font.STRIKETHRU, 10, Font.NORMAL, Element.ALIGN_LEFT, 0, 5, 2)); tbl_info1.addCell(Addons.setCeldaPDF("Razn de Modificacin: ", Font.STRIKETHRU, 10, Font.NORMAL, Element.ALIGN_LEFT, 0, 5)); tbl_info1.addCell( Addons.setCeldaPDF(motivo, Font.STRIKETHRU, 10, Font.NORMAL, Element.ALIGN_LEFT, 0, 5, 2)); tbl_info.addCell(Addons.setCeldaPDF(tbl_info1, 0, 1)); tbl_info.addCell(Addons.setFilaBlanco(3, 20)); pdf.add(tbl_info); //Detalles PdfPTable tbl_det = new PdfPTable(1); PdfPTable tbl_det1 = new PdfPTable(new float[] { 10f, 10f, 50f, 10f, 10f, 10f }); tbl_det1.addCell(Addons.setCeldaPDF("Cod. Principal", Font.STRIKETHRU, 10, Font.NORMAL, Element.ALIGN_CENTER, 1, 5)); tbl_det1.addCell( Addons.setCeldaPDF("Cant.", Font.STRIKETHRU, 10, Font.NORMAL, Element.ALIGN_CENTER, 1, 5)); tbl_det1.addCell(Addons.setCeldaPDF("Descripcin", Font.STRIKETHRU, 10, Font.NORMAL, Element.ALIGN_CENTER, 1, 5)); tbl_det1.addCell(Addons.setCeldaPDF("Precio Unitario", Font.STRIKETHRU, 10, Font.NORMAL, Element.ALIGN_CENTER, 1, 5)); tbl_det1.addCell( Addons.setCeldaPDF("Desc.", Font.STRIKETHRU, 10, Font.NORMAL, Element.ALIGN_CENTER, 1, 5)); tbl_det1.addCell( Addons.setCeldaPDF("Total", Font.STRIKETHRU, 10, Font.NORMAL, Element.ALIGN_CENTER, 1, 5)); for (int i = 0; i < limite; i++) { tbl_det1.addCell(Addons.setCeldaPDF(array[i][0], Font.STRIKETHRU, 10, Font.NORMAL, Element.ALIGN_LEFT, 1, 5)); tbl_det1.addCell(Addons.setCeldaPDF(array[i][2], Font.STRIKETHRU, 10, Font.NORMAL, Element.ALIGN_LEFT, 1, 5)); tbl_det1.addCell(Addons.setCeldaPDF(array[i][1], Font.STRIKETHRU, 10, Font.NORMAL, Element.ALIGN_LEFT, 1, 5)); tbl_det1.addCell(Addons.setCeldaPDF(array[i][3], Font.STRIKETHRU, 10, Font.NORMAL, Element.ALIGN_RIGHT, 1, 5)); tbl_det1.addCell(Addons.setCeldaPDF(array[i][4], Font.STRIKETHRU, 10, Font.NORMAL, Element.ALIGN_RIGHT, 1, 5)); tbl_det1.addCell(Addons.setCeldaPDF(array[i][5], Font.STRIKETHRU, 10, Font.NORMAL, Element.ALIGN_RIGHT, 1, 5)); } tbl_det.addCell(Addons.setCeldaPDF(tbl_det1, 0, 1)); tbl_det.addCell(Addons.setFilaBlanco(6, 20)); pdf.add(tbl_det); //Informacion Adicional PdfPTable tbl_info_ad = new PdfPTable(new float[] { 40f, 10f, 50f }); PdfPTable tbl_info_ad1 = new PdfPTable(new float[] { 30f, 70f }); PdfPTable tbl_info_ad2 = new PdfPTable(new float[] { 70f, 30f }); //titulos izquierda tbl_info_ad1.addCell(Addons.setCeldaPDF("Informacin Adicional", Font.STRIKETHRU, 10, Font.NORMAL, Element.ALIGN_CENTER, 0, 5, 2)); tbl_info_ad1.addCell(Addons.setCeldaPDF("Contacto: ", Font.STRIKETHRU, 10, Font.NORMAL, Element.ALIGN_LEFT, 0, 8, 0)); tbl_info_ad1.addCell(Addons.setCeldaPDF("062609177 / 062610330", Font.STRIKETHRU, 10, Font.NORMAL, Element.ALIGN_LEFT, 0, 8, 0)); tbl_info_ad1.addCell(Addons.setCeldaPDF("Email: ", Font.STRIKETHRU, 10, Font.NORMAL, Element.ALIGN_LEFT, 0, 8, 0)); tbl_info_ad1.addCell( Addons.setCeldaPDF(EMAIL, Font.STRIKETHRU, 10, Font.NORMAL, Element.ALIGN_LEFT, 0, 8, 0)); tbl_info_ad1.addCell(Addons.setCeldaPDF("Sitio Web:", Font.STRIKETHRU, 10, Font.NORMAL, Element.ALIGN_LEFT, 0, 8, 0)); tbl_info_ad1.addCell(Addons.setCeldaPDF("www.saitel.ec", Font.STRIKETHRU, 10, Font.NORMAL, Element.ALIGN_LEFT, 0, 8, 0)); tbl_info_ad1.addCell( Addons.setCeldaPDF(ARCOTEL, Font.STRIKETHRU, 10, Font.NORMAL, Element.ALIGN_LEFT, 0, 8, 2)); //Titulos derecha if (codigoPorcentaje.compareTo("0") == 0) { tbl_info_ad2.addCell(Addons.setCeldaPDF("SUBTOTAL 12% ", Font.STRIKETHRU, 10, Font.NORMAL, Element.ALIGN_LEFT, 0, 5, 2)); tbl_info_ad2.addCell(Addons.setCeldaPDF("0.00", Font.STRIKETHRU, 10, Font.NORMAL, Element.ALIGN_RIGHT, 0, 5, 2)); tbl_info_ad2.addCell(Addons.setCeldaPDF("SUBTOTAL 0% ", Font.STRIKETHRU, 10, Font.NORMAL, Element.ALIGN_CENTER, 0, 8, 0)); tbl_info_ad2.addCell(Addons.setCeldaPDF(baseImponible, Font.STRIKETHRU, 10, Font.NORMAL, Element.ALIGN_RIGHT, 0, 5, 2)); tbl_info_ad2.addCell(Addons.setCeldaPDF("SUBTOTAL No objeto de IVA", Font.STRIKETHRU, 10, Font.NORMAL, Element.ALIGN_CENTER, 0, 8, 0)); tbl_info_ad2.addCell(Addons.setCeldaPDF("0.00", Font.STRIKETHRU, 10, Font.NORMAL, Element.ALIGN_RIGHT, 0, 5, 2)); tbl_info_ad2.addCell(Addons.setCeldaPDF("SUBTOTAL SIN IMPUESTOS", Font.STRIKETHRU, 10, Font.NORMAL, Element.ALIGN_CENTER, 0, 8, 0)); tbl_info_ad2.addCell(Addons.setCeldaPDF(totalSinImpuestos, Font.STRIKETHRU, 10, Font.NORMAL, Element.ALIGN_RIGHT, 0, 5, 2)); tbl_info_ad2.addCell(Addons.setCeldaPDF("SUBTOTAL Exento de IVA", Font.STRIKETHRU, 10, Font.NORMAL, Element.ALIGN_CENTER, 0, 8, 0)); tbl_info_ad2.addCell(Addons.setCeldaPDF(valor, Font.STRIKETHRU, 10, Font.NORMAL, Element.ALIGN_RIGHT, 0, 5, 2)); tbl_info_ad2.addCell(Addons.setCeldaPDF("IVA 12%", Font.STRIKETHRU, 10, Font.NORMAL, Element.ALIGN_CENTER, 0, 8, 0)); tbl_info_ad2.addCell(Addons.setCeldaPDF("0.00", Font.STRIKETHRU, 10, Font.NORMAL, Element.ALIGN_RIGHT, 0, 5, 2)); } else { tbl_info_ad2.addCell(Addons.setCeldaPDF("SUBTOTAL 12% ", Font.STRIKETHRU, 10, Font.NORMAL, Element.ALIGN_LEFT, 1, 5)); tbl_info_ad2.addCell(Addons.setCeldaPDF(baseImponible, Font.STRIKETHRU, 10, Font.NORMAL, Element.ALIGN_RIGHT, 1, 5)); tbl_info_ad2.addCell(Addons.setCeldaPDF("SUBTOTAL 0% ", Font.STRIKETHRU, 10, Font.NORMAL, Element.ALIGN_LEFT, 1, 5)); tbl_info_ad2.addCell(Addons.setCeldaPDF("0.00", Font.STRIKETHRU, 10, Font.NORMAL, Element.ALIGN_RIGHT, 1, 5)); tbl_info_ad2.addCell(Addons.setCeldaPDF("SUBTOTAL No objeto de IVA", Font.STRIKETHRU, 10, Font.NORMAL, Element.ALIGN_LEFT, 1, 5)); tbl_info_ad2.addCell(Addons.setCeldaPDF("0.00", Font.STRIKETHRU, 10, Font.NORMAL, Element.ALIGN_RIGHT, 1, 5)); tbl_info_ad2.addCell(Addons.setCeldaPDF("SUBTOTAL SIN IMPUESTOS", Font.STRIKETHRU, 10, Font.NORMAL, Element.ALIGN_LEFT, 1, 5)); tbl_info_ad2.addCell(Addons.setCeldaPDF(totalSinImpuestos, Font.STRIKETHRU, 10, Font.NORMAL, Element.ALIGN_RIGHT, 1, 5)); tbl_info_ad2.addCell(Addons.setCeldaPDF("SUBTOTAL Exento de IVA", Font.STRIKETHRU, 10, Font.NORMAL, Element.ALIGN_LEFT, 1, 5)); tbl_info_ad2.addCell(Addons.setCeldaPDF("0.00", Font.STRIKETHRU, 10, Font.NORMAL, Element.ALIGN_RIGHT, 1, 5)); tbl_info_ad2.addCell(Addons.setCeldaPDF("IVA 12%", Font.STRIKETHRU, 10, Font.NORMAL, Element.ALIGN_LEFT, 1, 5)); tbl_info_ad2.addCell( Addons.setCeldaPDF(valor, Font.STRIKETHRU, 10, Font.NORMAL, Element.ALIGN_RIGHT, 1, 5)); } tbl_info_ad.addCell(Addons.setCeldaPDF(tbl_info_ad1, 0, 1)); tbl_info_ad.addCell(Addons.setCeldaPDF(" ", Font.TIMES_ROMAN, 1, Font.NORMAL, 0, 0)); tbl_info_ad.addCell(Addons.setCeldaPDF(tbl_info_ad2, 0, 1)); pdf.add(tbl_info_ad); } catch (IllegalStateException ie) { ie.printStackTrace(); } catch (DocumentException e) { e.printStackTrace(); } finally { } pdf.close(); // paso 5 /* fin PDF */ } //Comprobante de retencion if (codDoc.compareTo("07") == 0) { //infoCompRetencion String fechaEmision = xml2.getValor("fechaEmision"); String dirEstablecimiento = xml2.getValor("dirEstablecimiento"); String contribuyenteEspecial = xml2.getValor("contribuyenteEspecial"); String obligadoContabilidad = xml2.getValor("obligadoContabilidad"); String tipoIdentificacionSujetoRetenido = xml2.getValor("tipoIdentificacionSujetoRetenido"); String razonSocialSujetoRetenido = xml2.getValor("razonSocialSujetoRetenido"); String identificacionSujetoRetenido = xml2.getValor("identificacionSujetoRetenido"); String periodoFiscal = xml2.getValor("periodoFiscal"); //detalles int limite = xml2.getNumNodos("impuesto"); String[][] array = new String[limite][7]; for (int i = 0; i < limite; i++) { array[i][0] = xml2.getValor("codigo", i); array[i][1] = xml2.getValor("codigoRetencion", i); array[i][2] = xml2.getValor("baseImponible", i); array[i][3] = xml2.getValor("porcentajeRetener", i); array[i][4] = xml2.getValor("valorRetenido", i); array[i][5] = xml2.getValor("codDocSustento", i); array[i][6] = xml2.getValor("numDocSustento", i); } /* inicio PDF */ Document pdf = new Document(PageSize.A4);// paso 1 pdf.setMargins(-35, -45, 40, 10); /*Izquierda, derecha, tope, pie */ try { PdfWriter writer = PdfWriter.getInstance(pdf, new FileOutputStream(dir + claveAcceso + ".pdf")); pdf.open(); //pdf.open(); // paso 3 // Para enviar a la impresora automticamente. //writer.addJavaScript("this.print(false);", false); /* todo el cuerpo del doc es el paso 4 */ //PdfPTable tbl_titulo = new PdfPTable(1); PdfPTable tbl_titulo = new PdfPTable(new float[] { 49f, 2f, 49f }); PdfPTable tbl_1 = new PdfPTable(new float[] { 37f, 63f }); PdfPTable tbl_2 = new PdfPTable(1); //titulos izquierda tbl_1.addCell(Addons.setLogo(dir + "logo.jpg", 250, 83, Element.ALIGN_CENTER));//ancho,alto tbl_1.addCell( Addons.setCeldaPDF(" ", Font.STRIKETHRU, 10, Font.NORMAL, Element.ALIGN_LEFT, 0, 5, 2)); tbl_1.addCell(Addons.setCeldaPDF(razonSocial + " '" + nombreComercial + "' ", Font.STRIKETHRU, 10, Font.NORMAL, Element.ALIGN_CENTER, 0, 8, 2)); tbl_1.addCell(Addons.setCeldaPDF("Direccin Matriz: ", Font.STRIKETHRU, 10, Font.NORMAL, Element.ALIGN_LEFT, 0, 5, 0)); tbl_1.addCell(Addons.setCeldaPDF(dirMatriz, Font.STRIKETHRU, 10, Font.NORMAL, Element.ALIGN_LEFT, 0, 5, 0)); tbl_1.addCell(Addons.setCeldaPDF("Direccin Sucursal: ", Font.STRIKETHRU, 10, Font.NORMAL, Element.ALIGN_LEFT, 0, 5, 0)); tbl_1.addCell(Addons.setCeldaPDF(dirEstablecimiento, Font.STRIKETHRU, 10, Font.NORMAL, Element.ALIGN_LEFT, 0, 5, 0)); tbl_1.addCell(Addons.setCeldaPDF("Contribuyente Especial Nro. " + contribuyenteEspecial, Font.STRIKETHRU, 10, Font.NORMAL, Element.ALIGN_LEFT, 0, 5, 2)); tbl_1.addCell(Addons.setCeldaPDF("OBLIGADO A LLEVAR CONTABILIDAD: " + obligadoContabilidad, Font.STRIKETHRU, 10, Font.NORMAL, Element.ALIGN_LEFT, 0, 5, 2)); //Titulos derecha tbl_2.addCell(Addons.setCeldaPDF("R.U.C: " + ruc, Font.STRIKETHRU, 10, Font.NORMAL, Element.ALIGN_LEFT, 0, 5)); tbl_2.addCell(Addons.setCeldaPDF("COMPROBANTE DE RETENCIN", Font.STRIKETHRU, 10, Font.NORMAL, Element.ALIGN_LEFT, 0, 5)); tbl_2.addCell(Addons.setCeldaPDF("No. " + numFac, Font.STRIKETHRU, 10, Font.NORMAL, Element.ALIGN_LEFT, 0, 5)); tbl_2.addCell(Addons.setCeldaPDF("NMERO DE AUTORIZACIN", Font.STRIKETHRU, 10, Font.NORMAL, Element.ALIGN_LEFT, 0, 5)); tbl_2.addCell(Addons.setCeldaPDF(numeroAutorizacion, Font.STRIKETHRU, 10, Font.NORMAL, Element.ALIGN_LEFT, 0, 5)); tbl_2.addCell(Addons.setCeldaPDF("FECHA Y HORA DE AUTORIZACIN", Font.STRIKETHRU, 10, Font.NORMAL, Element.ALIGN_LEFT, 0, 5)); tbl_2.addCell(Addons.setCeldaPDF(fechaAutorizacion, Font.STRIKETHRU, 10, Font.NORMAL, Element.ALIGN_LEFT, 0, 5)); tbl_2.addCell(Addons.setCeldaPDF("AMBIENTE: " + ambiente, Font.STRIKETHRU, 10, Font.NORMAL, Element.ALIGN_LEFT, 0, 5)); tbl_2.addCell(Addons.setCeldaPDF("EMISIN: " + tipoEmision, Font.STRIKETHRU, 10, Font.NORMAL, Element.ALIGN_LEFT, 0, 5)); tbl_2.addCell(Addons.setCeldaPDF("CLAVE DE ACCESO", Font.STRIKETHRU, 10, Font.NORMAL, Element.ALIGN_LEFT, 0, 5)); tbl_2.addCell(Addons.setBarCode(this.getBarcode(writer, claveAcceso)));//ancho,alto tbl_titulo.addCell(Addons.setCeldaPDF(tbl_1, 0, 1)); tbl_titulo.addCell(Addons.setCeldaPDF(" ", Font.TIMES_ROMAN, 1, Font.NORMAL, 0, 0)); tbl_titulo.addCell(Addons.setCeldaPDF(tbl_2, 0, 1)); tbl_titulo.addCell(Addons.setFilaBlanco(3, 20)); pdf.add(tbl_titulo); //Informacion Cliente PdfPTable tbl_info = new PdfPTable(1); PdfPTable tbl_info1 = new PdfPTable(new float[] { 32f, 43f, 25f }); tbl_info1.addCell(Addons.setCeldaPDF("Razn Social / Nombres y Apellidos: ", Font.STRIKETHRU, 10, Font.NORMAL, Element.ALIGN_LEFT, 0, 8)); tbl_info1.addCell(Addons.setCeldaPDF(razonSocialSujetoRetenido, Font.STRIKETHRU, 10, Font.NORMAL, Element.ALIGN_LEFT, 0, 8)); tbl_info1.addCell(Addons.setCeldaPDF("RUC/CI: " + identificacionSujetoRetenido, Font.STRIKETHRU, 10, Font.NORMAL, Element.ALIGN_LEFT, 0, 8)); tbl_info1.addCell(Addons.setCeldaPDF("Fecha de emisin: " + fechaEmision, Font.STRIKETHRU, 10, Font.NORMAL, Element.ALIGN_LEFT, 0, 8, 3)); tbl_info.addCell(Addons.setCeldaPDF(tbl_info1, 0, 1)); tbl_info.addCell(Addons.setFilaBlanco(3, 20)); pdf.add(tbl_info); //Detalles PdfPTable tbl_det = new PdfPTable(1); PdfPTable tbl_det1 = new PdfPTable(new float[] { 14f, 18f, 12f, 10f, 13f, 10f, 13f, 10f }); tbl_det1.addCell(Addons.setCeldaPDF("Comprobante", Font.STRIKETHRU, 10, Font.NORMAL, Element.ALIGN_LEFT, 1, 5)); tbl_det1.addCell( Addons.setCeldaPDF("Nmero", Font.STRIKETHRU, 10, Font.NORMAL, Element.ALIGN_LEFT, 1, 5)); tbl_det1.addCell(Addons.setCeldaPDF("Fecha Emisin", Font.STRIKETHRU, 10, Font.NORMAL, Element.ALIGN_LEFT, 1, 5)); tbl_det1.addCell(Addons.setCeldaPDF("Ejercicio Fiscal", Font.STRIKETHRU, 10, Font.NORMAL, Element.ALIGN_LEFT, 1, 5)); tbl_det1.addCell(Addons.setCeldaPDF("Base Imponible para la retencion", Font.STRIKETHRU, 8, Font.NORMAL, Element.ALIGN_LEFT, 1, 5)); tbl_det1.addCell( Addons.setCeldaPDF("Impuesto", Font.STRIKETHRU, 10, Font.NORMAL, Element.ALIGN_LEFT, 1, 5)); tbl_det1.addCell(Addons.setCeldaPDF("Porcentaje de Retencin", Font.STRIKETHRU, 10, Font.NORMAL, Element.ALIGN_LEFT, 1, 5)); tbl_det1.addCell(Addons.setCeldaPDF("Valor Retenido", Font.STRIKETHRU, 10, Font.NORMAL, Element.ALIGN_LEFT, 1, 5)); Double val_ret = 0.0; //detalles for (int i = 0; i < limite; i++) { //Comprobante if (array[i][5].compareTo("01") == 0) { tbl_det1.addCell(Addons.setCeldaPDF("FACTURA", Font.STRIKETHRU, 10, Font.NORMAL, Element.ALIGN_LEFT, 1, 5)); } if (array[i][5].compareTo("04") == 0) { tbl_det1.addCell(Addons.setCeldaPDF("NOTA DE CRDITO", Font.STRIKETHRU, 10, Font.NORMAL, Element.ALIGN_LEFT, 1, 5)); } if (array[i][5].compareTo("05") == 0) { tbl_det1.addCell(Addons.setCeldaPDF("NOTA DE DBITO", Font.STRIKETHRU, 10, Font.NORMAL, Element.ALIGN_LEFT, 1, 5)); } if (array[i][5].compareTo("06") == 0) { tbl_det1.addCell(Addons.setCeldaPDF("GU?A DE REMISION", Font.STRIKETHRU, 10, Font.NORMAL, Element.ALIGN_LEFT, 1, 5)); } if (array[i][5].compareTo("07") == 0) { tbl_det1.addCell(Addons.setCeldaPDF("COMPROBANTE DE RETENCIN", Font.STRIKETHRU, 10, Font.NORMAL, Element.ALIGN_LEFT, 1, 5)); } //Nmero tbl_det1.addCell(Addons.setCeldaPDF(array[i][6], Font.STRIKETHRU, 10, Font.NORMAL, Element.ALIGN_LEFT, 1, 5)); //Fecha Emisin tbl_det1.addCell(Addons.setCeldaPDF(fechaEmision, Font.STRIKETHRU, 10, Font.NORMAL, Element.ALIGN_LEFT, 1, 5)); //Ejercicio Fiscal tbl_det1.addCell(Addons.setCeldaPDF(periodoFiscal, Font.STRIKETHRU, 10, Font.NORMAL, Element.ALIGN_LEFT, 1, 5)); //Base Imponible para la retencion tbl_det1.addCell(Addons.setCeldaPDF(array[i][2], Font.STRIKETHRU, 10, Font.NORMAL, Element.ALIGN_LEFT, 1, 5)); //Impuesto if (array[i][0].compareTo("1") == 0) { tbl_det1.addCell(Addons.setCeldaPDF("RENTA", Font.STRIKETHRU, 10, Font.NORMAL, Element.ALIGN_LEFT, 1, 5)); } if (array[i][0].compareTo("2") == 0) { tbl_det1.addCell(Addons.setCeldaPDF("IVA", Font.STRIKETHRU, 10, Font.NORMAL, Element.ALIGN_LEFT, 1, 5)); } if (array[i][0].compareTo("6") == 0) { tbl_det1.addCell(Addons.setCeldaPDF("ISD", Font.STRIKETHRU, 10, Font.NORMAL, Element.ALIGN_LEFT, 1, 5)); } //Porcentaje de Retencin tbl_det1.addCell(Addons.setCeldaPDF(array[i][3], Font.STRIKETHRU, 10, Font.NORMAL, Element.ALIGN_LEFT, 1, 5)); //Valor Retenido tbl_det1.addCell(Addons.setCeldaPDF(array[i][4], Font.STRIKETHRU, 10, Font.NORMAL, Element.ALIGN_LEFT, 1, 5)); val_ret += Double.parseDouble(array[i][4]); } tbl_det1.addCell(Addons.setCeldaPDF("Valor Retenido", Font.STRIKETHRU, 10, Font.NORMAL, Element.ALIGN_RIGHT, 1, 5, 7)); tbl_det1.addCell(Addons.setCeldaPDF(Addons.redondear(val_ret) + "", Font.STRIKETHRU, 10, Font.NORMAL, Element.ALIGN_LEFT, 1, 5, 1)); tbl_det.addCell(Addons.setCeldaPDF(tbl_det1, 0, 1)); tbl_det.addCell(Addons.setFilaBlanco(6, 20)); pdf.add(tbl_det); //Informacion Adicional PdfPTable tbl_info_ad = new PdfPTable(new float[] { 40f, 10f, 50f }); PdfPTable tbl_info_ad1 = new PdfPTable(new float[] { 30f, 70f }); //titulos izquierda tbl_info_ad1.addCell(Addons.setCeldaPDF("Informacin Adicional", Font.STRIKETHRU, 10, Font.NORMAL, Element.ALIGN_CENTER, 0, 5, 2)); tbl_info_ad1.addCell(Addons.setCeldaPDF("Contacto: ", Font.STRIKETHRU, 10, Font.NORMAL, Element.ALIGN_LEFT, 0, 8, 0)); tbl_info_ad1.addCell(Addons.setCeldaPDF("062609177 / 062610330", Font.STRIKETHRU, 10, Font.NORMAL, Element.ALIGN_LEFT, 0, 8, 0)); tbl_info_ad1.addCell(Addons.setCeldaPDF("Email: ", Font.STRIKETHRU, 10, Font.NORMAL, Element.ALIGN_LEFT, 0, 8, 0)); tbl_info_ad1.addCell( Addons.setCeldaPDF(EMAIL, Font.STRIKETHRU, 10, Font.NORMAL, Element.ALIGN_LEFT, 0, 8, 0)); tbl_info_ad1.addCell(Addons.setCeldaPDF("Sitio Web:", Font.STRIKETHRU, 10, Font.NORMAL, Element.ALIGN_LEFT, 0, 8, 0)); tbl_info_ad1.addCell(Addons.setCeldaPDF("www.saitel.ec", Font.STRIKETHRU, 10, Font.NORMAL, Element.ALIGN_LEFT, 0, 8, 0)); tbl_info_ad1.addCell( Addons.setCeldaPDF(ARCOTEL, Font.STRIKETHRU, 10, Font.NORMAL, Element.ALIGN_LEFT, 0, 8, 2)); tbl_info_ad.addCell(Addons.setCeldaPDF(tbl_info_ad1, 0, 1)); tbl_info_ad.addCell(Addons.setCeldaPDF(" ", Font.TIMES_ROMAN, 1, Font.NORMAL, 0, 0)); tbl_info_ad.addCell(Addons.setCeldaPDF(" ", Font.TIMES_ROMAN, 1, Font.NORMAL, 0, 0)); pdf.add(tbl_info_ad); } catch (IllegalStateException ie) { ie.printStackTrace(); } catch (DocumentException e) { e.printStackTrace(); } finally { } pdf.close(); // paso 5 /* fin PDF */ } }
From source file:jmbench.plots.UtilPlotPdf.java
License:Open Source License
public static void saveAsPdf(JFreeChart chart, String FILENAME, int width, int height) { File parent = new File(new File(FILENAME).getParent()); if (!parent.exists()) { if (!parent.mkdirs()) throw new RuntimeException("Can't make directory path"); }// w ww . j a va 2 s. c o m Document document = new Document(new Rectangle(width, height)); try { FileOutputStream file = new FileOutputStream(FILENAME); PdfWriter writer = PdfWriter.getInstance(document, file); document.open(); PdfContentByte cb = writer.getDirectContent(); PdfTemplate tp = cb.createTemplate(width, height); Graphics2D g2d = tp.createGraphics(width, height, new DefaultFontMapper()); Rectangle2D r2d = new Rectangle2D.Double(0, 0, width, height); chart.draw(g2d, r2d); g2d.dispose(); cb.addTemplate(tp, 0, 0); document.close(); g2d.dispose(); } catch (Exception e) { e.printStackTrace(); } }
From source file:jmbench.plots.UtilPlotPdf.java
License:Open Source License
public static void saveAsPdf(LegendTitle legend, String FILENAME, int width, int height) { Document document = new Document(new Rectangle(width, height)); try {//from ww w. jav a 2 s . c om FileOutputStream file = new FileOutputStream(FILENAME); PdfWriter writer = PdfWriter.getInstance(document, file); document.open(); PdfContentByte cb = writer.getDirectContent(); PdfTemplate tp = cb.createTemplate(width, height); Graphics2D g2d = tp.createGraphics(width, height, new DefaultFontMapper()); Rectangle2D r2d = new Rectangle2D.Double(0, 0, width, height); legend.draw(g2d, r2d); g2d.dispose(); cb.addTemplate(tp, 0, 0); document.close(); g2d.dispose(); } catch (Exception e) { e.printStackTrace(); } }
From source file:jmemorize.core.io.PdfRtfBuilder.java
License:Open Source License
private static void export(Lesson lesson, int mode, File file) throws IOException { logger = Main.getLogger();//from ww w . j a v a 2 s.c o m FontFactory.registerDirectories(); // set up the fonts we will use to write the front and back of cards String frontFontName = Settings.loadFont(FontType.CARD_FRONT).getFont().getFamily(); frontFont = FontFactory.getFont(frontFontName, BaseFont.IDENTITY_H, BaseFont.EMBEDDED); if (frontFont == null) { logger.warning("FontFactory returned null (front) font for: " + frontFontName); } String backFontName = Settings.loadFont(FontType.CARD_FLIP).getFont().getFamily(); backFont = FontFactory.getFont(backFontName, BaseFont.IDENTITY_H, BaseFont.EMBEDDED); if (backFont == null) { logger.warning("FontFactory returned null (back) font for: " + backFontName); } try { Document doc = new Document(); OutputStream out = new FileOutputStream(file); switch (mode) { case PDF_MODE: PdfWriter.getInstance(doc, out); break; case RTF_MODE: RtfWriter2.getInstance(doc, out); break; } doc.setHeader(new HeaderFooter(new Phrase(file.getName()), false)); doc.open(); // add cards in subtrees List<Category> subtree = lesson.getRootCategory().getSubtreeList(); for (Category category : subtree) { writeCategory(doc, category); } doc.close(); } catch (Throwable t) { throw (IOException) new IOException("Could not export to PDF").initCause(t); } }
From source file:joelib2.io.types.PDF.java
License:Open Source License
/** * Description of the Method/*from w ww .j ava2s . c om*/ * * @param os Description of the Parameter * @exception IOException Description of the Exception */ public void initWriter(OutputStream os) throws IOException { fontSize = BasicPropertyHolder.instance().getInt(this, "fontSize", DEFAULT_FONT_SIZE); fontSizeDelta = BasicPropertyHolder.instance().getInt(this, "fontOffset", DEFAULT_FONT_SIZE); pageBorder = BasicPropertyHolder.instance().getInt(this, "pageBorder", DEFAULT_FONT_SIZE); try { writer = PdfWriter.getInstance(document, os); } catch (DocumentException e) { throw new IOException(e.getMessage()); } }
From source file:jp.ac.utokyo.rcast.karkinos.graph.output.PdfReport.java
License:Apache License
public static void report(ReadsSummary readsSummary, String readsStat, DataSet dataset, AllelicCNV alCNV, NoiseAnalysis na, PeaksInfo pi, String id, String outfile) throws Exception { List<DisplayObject> chartList = new ArrayList<DisplayObject>(); chartList.addAll(GetReadsStatsChart.getChartLists(readsSummary, readsStat)); // chartList.addAll(GetReadDirectionChart.getChartLists(dataset)); chartList.addAll(SNPGraph.getChartList(dataset)); chartList.addAll(GetGCAdjustGrapth.getChartLists(dataset)); chartList.addAll(GetCNVPreGraph.getChartLists(dataset)); chartList.addAll(GetCNVPeaksCharts.getChartLists(pi)); chartList.addAll(GetCNVCharts.getChartLists(dataset, pi, id)); //allelic CNV chartList.addAll(GetAllelicCNVGraph.getChartLists(alCNV, id)); chartList.addAll(GetCNVCharts.getTables(dataset)); // chartList.addAll(GetSNVDistChart.getChartLists(dataset)); ////from www . j av a2 s .co m try { chartList.addAll(NoisePeakChart.getChartLists(na, dataset.getTumorRatio())); } catch (Exception ex) { ex.printStackTrace(); } chartList.addAll(GetSNVChart.getChartLists(dataset, pi)); chartList.addAll(GetThresholdsCharts.getChartLists(dataset)); Document document = null; PdfWriter writer = null; FileOutputStream fileOutputStream = new FileOutputStream(outfile); try { // instantiate document and writer document = new Document(); writer = PdfWriter.getInstance(document, fileOutputStream); // open document document.open(); // add image int width = 1200; int hight = 1000; int i = 0; int figcount = 0; for (DisplayObject dobj : chartList) { int size = dobj.getSize(); Object obj = dobj.getObject(); if (obj == null) continue; document.add(new Paragraph(String.valueOf(dobj.getTitle()))); if (obj instanceof List) { for (Object childObj : (List) obj) { addObj(document, childObj, width, hight, size, writer, figcount); if ((childObj instanceof Table) || (obj instanceof JFreeChart)) { figcount++; document.add(Chunk.NEXTPAGE); } } } else { addObj(document, obj, width, hight, size, writer, figcount); figcount++; } document.add(Chunk.NEXTPAGE); i++; } // release resources document.close(); document = null; writer.close(); writer = null; } catch (DocumentException de) { throw de; } catch (IOException ioe) { throw ioe; } finally { // release resources if (null != document) { try { document.close(); } catch (Exception ex) { } } if (null != writer) { try { writer.close(); } catch (Exception ex) { } } } }
From source file:jp.ac.utokyo.rcast.karkinos.summary.RegionGraph.java
License:Apache License
/** * @param args// w w w. ja va 2 s.co m */ public static void main(String[] args) { String indir = "/GLUSTER_DIST/data/users/ueda/ICGC/ICGCkarkinos4.0/HCC_exome_rcast," + "/GLUSTER_DIST/data/users/ueda/ICGC/ICGCkarkinos4.0/HCC_NCC/karkinosver4.0.25," + "/GLUSTER_DIST/data/users/ueda/ICGC/ICGCkarkinos4.0/HCC_exome_baylor/HCC-JP-453-T-HCC-JP-453-N/HCC-JP-453-T-HCC-JP-453-N," + "/GLUSTER_DIST/data/users/ueda/ICGC/bcmtest/tcga," + "/GLUSTER_DIST/data/users/ueda/ICGC/bcmtest/goss,"; // // String indir = // "/GLUSTER_DIST/data/users/ueda/ICGC/ICGCkarkinos4.0/HCC_exome_rcast/THCC_167T-THCC_167N/THCC_167T-THCC_167N/"; String out = "/GLUSTER_DIST/data/users/ueda/ICGC/ICGCkarkinos4.0/chr5Graprh.pdf"; String outpng = "/GLUSTER_DIST/data/users/ueda/ICGC/ICGCkarkinos4.0/chr1Graprh.jpeg"; List<File> list = new ArrayList<File>(); for (String s : indir.split(",")) { File f = new File(s); // chage to reccursive file search searchRecursive(f, list); } String chr = "chr5"; int start = 0; int end = 50000000; // String chr = "chr11"; // int start = 0; // int end = 135000000; // String chr = "chr1"; // int start = 0; // int end = 247000000; int[][] target = new int[][] { { 1278756, 1295162 } }; Document document = null; PdfWriter writer = null; int width = 1200; int hight = 500; int size = 1; try { FileOutputStream fileOutputStream = new FileOutputStream(out); document = new Document(); writer = PdfWriter.getInstance(document, fileOutputStream); document.open(); for (File f : list) { document.add(new Paragraph(String.valueOf(f.getName()))); Object[] obj = getChart(f, chr, start, end, target); document.add(new Paragraph("mean=" + toStr(obj[1]) + "\t mean original=" + toStr(obj[2]))); JFreeChart chart = (JFreeChart) obj[0]; // try { // File jpn = new File(outpng); // ChartUtilities.saveChartAsJPEG(jpn, chart, 300, 300); // // } catch (Exception ex) { // // } BufferedImage bufferedImage = chart.createBufferedImage(width * size, hight * size); Image image = Image.getInstance(writer, bufferedImage, 1.0f); image.scalePercent(20); document.add(image); } document.close(); document = null; writer.close(); writer = null; } catch (Exception e) { e.printStackTrace(); } finally { // release resources if (null != document) { try { document.close(); } catch (Exception ex) { } } if (null != writer) { try { writer.close(); } catch (Exception ex) { } } } }
From source file:jp.ac.utokyo.rcast.karkinos.summary.RegionGraph2.java
License:Apache License
/** * @param args/*from w w w .ja va 2 s . com*/ */ public static void main(String[] args) { String indir = "/GLUSTER_DIST/data/users/ueda/ICGC/ICGCkarkinos4.0/HCC_exome_rcast," + "/GLUSTER_DIST/data/users/ueda/ICGC/ICGCkarkinos4.0/HCC_NCC/karkinosver4.0.25," + "/GLUSTER_DIST/data/users/ueda/ICGC/ICGCkarkinos4.0/HCC_exome_baylor/HCC-JP-453-T-HCC-JP-453-N/HCC-JP-453-T-HCC-JP-453-N," + "/GLUSTER_DIST/data/users/ueda/ICGC/bcmtest/tcga," + "/GLUSTER_DIST/data/users/ueda/ICGC/bcmtest/goss,"; // // String indir = // "/GLUSTER_DIST/data/users/ueda/ICGC/ICGCkarkinos4.0/HCC_exome_rcast/THCC_167T-THCC_167N/THCC_167T-THCC_167N/"; String out = "/GLUSTER_DIST/data/users/ueda/ICGC/ICGCkarkinos4.0/chr4allelicGraprh.pdf"; // String outpng = // "/GLUSTER_DIST/data/users/ueda/ICGC/ICGCkarkinos4.0/chr1Graprh.jpeg"; List<File> list = new ArrayList<File>(); for (String s : indir.split(",")) { File f = new File(s); // chage to reccursive file search searchRecursive(f, list); } // String chr = "chr5"; // int start = 0; // int end = 300000; // String chr = "chr11"; // int start = 0; // int end = 135000000; String chr = "chr4"; int start = 0; int end = 247000000; int[][] target = new int[][] { { 190328975, 190903950 } }; Document document = null; PdfWriter writer = null; int width = 1200; int hight = 500; int size = 1; try { FileOutputStream fileOutputStream = new FileOutputStream(out); document = new Document(); writer = PdfWriter.getInstance(document, fileOutputStream); document.open(); for (File f : list) { document.add(new Paragraph(String.valueOf(f.getName()))); Object[] obj = getChart(f, chr, start, end, target, 1); document.add(new Paragraph("mean=" + toStr(obj[1]) + "\t mean original=" + toStr(obj[2]))); JFreeChart chart = (JFreeChart) obj[0]; // try { // File jpn = new File(outpng); // ChartUtilities.saveChartAsJPEG(jpn, chart, 300, 300); // // } catch (Exception ex) { // // } BufferedImage bufferedImage = chart.createBufferedImage(width * size, hight * size); Image image = Image.getInstance(writer, bufferedImage, 1.0f); image.scalePercent(20); document.add(image); obj = getChart(f, chr, start, end, target, 2); chart = (JFreeChart) obj[0]; // try { // File jpn = new File(outpng); // ChartUtilities.saveChartAsJPEG(jpn, chart, 300, 300); // // } catch (Exception ex) { // // } bufferedImage = chart.createBufferedImage(width * size, hight * size); image = Image.getInstance(writer, bufferedImage, 1.0f); image.scalePercent(20); document.add(image); } document.close(); document = null; writer.close(); writer = null; } catch (Exception e) { e.printStackTrace(); } finally { // release resources if (null != document) { try { document.close(); } catch (Exception ex) { } } if (null != writer) { try { writer.close(); } catch (Exception ex) { } } } }
From source file:jp.ac.utokyo.rcast.karkinos.summary.TextToGraph.java
License:Apache License
/** * @param args//from w w w . j a v a 2 s . co m */ public static void main(String[] args) { // String s = // "/GLUSTER_DIST/data/users/ueda/ICGC/bcmtest/TCGA-MR-A520-01A-11D-A25V-10.vs-10_cnvAllelicDepth.txt"; // String s2 = // "/GLUSTER_DIST/data/users/ueda/ICGC/bcmtest/TCGA-MR-A520-01A-11D-A25V-10.vs-10_cnvdepth.txt"; // String sout = "/GLUSTER_DIST/data/users/ueda/ICGC/bcmtest/out.pdf"; String s = "/GLUSTER_DIST/data/users/ueda/ICGC/bcmtest/HCC-JP-468-T.vs-N_cnvAllelicDepth.txt"; String s2 = "/GLUSTER_DIST/data/users/ueda/ICGC/bcmtest/HCC-JP-468-T.vs-N_cnvdepth.txt"; String sout = "/GLUSTER_DIST/data/users/ueda/ICGC/bcmtest/468out.pdf"; Document document = null; PdfWriter writer = null; // try { int width = 1200; int hight = 500; int size = 1; FileOutputStream fileOutputStream = new FileOutputStream(sout); document = new Document(); writer = PdfWriter.getInstance(document, fileOutputStream); document.open(); JFreeChart chart0 = getChart(new File(s2), 0); JFreeChart chart1 = getChart(new File(s2), 1); JFreeChart chart2 = getChart(new File(s2), 2); JFreeChart chart3 = getChart(new File(s2), 3); JFreeChart chart4 = getChart(new File(s), 4); JFreeChart chart5 = getChart(new File(s), 5); JFreeChart chart6 = getChart(new File(s), 6); BufferedImage bufferedImage = chart0.createBufferedImage(width * size, hight * size); Image image = Image.getInstance(writer, bufferedImage, 1.0f); image.scalePercent(20); document.add(image); BufferedImage bufferedImage1 = chart1.createBufferedImage(width * size, hight * size); Image image1 = Image.getInstance(writer, bufferedImage1, 1.0f); image1.scalePercent(20); document.add(image1); BufferedImage bufferedImage2 = chart2.createBufferedImage(width * size, hight * size); Image image2 = Image.getInstance(writer, bufferedImage2, 1.0f); image2.scalePercent(20); document.add(image2); BufferedImage bufferedImage3 = chart3.createBufferedImage(width * size, hight * size); Image image3 = Image.getInstance(writer, bufferedImage3, 1.0f); image3.scalePercent(20); document.add(image3); BufferedImage bufferedImage4 = chart4.createBufferedImage(width * size, hight * size); Image image4 = Image.getInstance(writer, bufferedImage4, 1.0f); image4.scalePercent(20); document.add(image4); BufferedImage bufferedImage5 = chart5.createBufferedImage(width * size, hight * size); Image image5 = Image.getInstance(writer, bufferedImage5, 1.0f); image5.scalePercent(20); document.add(image5); BufferedImage bufferedImage6 = chart6.createBufferedImage(width * size, hight * size); Image image6 = Image.getInstance(writer, bufferedImage6, 1.0f); image6.scalePercent(20); document.add(image6); document.close(); document = null; writer.close(); writer = null; } catch (Exception e) { e.printStackTrace(); } finally { // release resources if (null != document) { try { document.close(); } catch (Exception ex) { } } if (null != writer) { try { writer.close(); } catch (Exception ex) { } } } }