List of usage examples for com.itextpdf.text Image getInstance
public static Image getInstance(final Image image)
From source file:com.xumpy.itext.services.TimeSheet.java
public List<PdfPCell> header() throws BadElementException, IOException, URISyntaxException { List<PdfPCell> header = new ArrayList<PdfPCell>(); Image img = Image.getInstance(this.getClass().getResource("/timesheet/QR.png")); Properties properties = new Properties(); properties.load(new FileInputStream( new File(this.getClass().getResource("/timesheet/default.properties").toURI()))); img.scaleToFit(120, 120);//from ww w. j a v a 2 s . c o m PdfPCell cell1 = new PdfPCell(new Paragraph("\nTimesheet Report\n\n" + properties.getProperty("name"))); PdfPCell cell2 = new PdfPCell(); PdfPCell cell3 = new PdfPCell(img); header.add(cell1); header.add(cell2); header.add(cell3); return header; }
From source file:comedor.actions.OperacionesComedorAction.java
private void crearPDF() throws IOException, DocumentException { Restaurante restaurante = godr.obtenerDatosRestaurante(); //Creamos el directorio donde almacenar los pdf sino existe File file = new File(RUTA_CUENTAS); //Especificamos la ruta if (!file.exists()) { //Si el directorio no existe if (file.mkdir()) { //Creamos el directorio //Le asignamos los permisos 777 file.setExecutable(true);//ww w .j av a 2 s . c o m file.setReadable(true); file.setExecutable(true); } else { System.err.println("Error al crear el directorio especificado"); throw new IOException(); //Lanzamos una excepcion } } if (file.exists()) { //Si el directorio existe //Creamos el documento Document documento = new Document(); //Creamos el OutputStream para el fichero pdf FileOutputStream destino = new FileOutputStream(RUTA_CUENTAS + nombreDocumento); //Asociamos el FileOutputStream al Document PdfWriter.getInstance(documento, destino); //Abrimos el documento documento.open(); //Aadimos el nombre del restaurante Font titulo = FontFactory.getFont(FontFactory.TIMES, 16, Font.BOLDITALIC); Chunk chunk = new Chunk(restaurante.getNombre(), titulo); Paragraph parrafo = new Paragraph(chunk); parrafo.setAlignment(Element.ALIGN_CENTER); documento.add(parrafo); //Aadimos la imagen String path = request.getServletContext().getRealPath("/img/elvis.png"); Image foto = Image.getInstance(path); foto.scaleToFit(100, 100); foto.setAlignment(Chunk.ALIGN_MIDDLE); documento.add(foto); //Aadimos los datos del restaurante Font datos = FontFactory.getFont(FontFactory.TIMES, 12, Font.NORMAL); chunk = new Chunk(getText("cuenta.cif") + ": " + restaurante.getCif(), datos); documento.add(new Paragraph(chunk)); chunk = new Chunk(getText("cuenta.direccion") + ": " + restaurante.getDireccion(), datos); documento.add(new Paragraph(chunk)); chunk = new Chunk(getText("cuenta.telefono") + ": " + restaurante.getTelefono(), datos); documento.add(new Paragraph(chunk)); //Aadimos los datos de la cuenta chunk = new Chunk(getText("cuenta.cuentaId") + ": " + cuenta.getId(), datos); documento.add(new Paragraph(chunk)); SimpleDateFormat formatoFecha = new SimpleDateFormat("dd-MM-yyyy"); chunk = new Chunk(getText("cuenta.fecha") + ": " + formatoFecha.format(cuenta.getFecha()), datos); documento.add(new Paragraph(chunk)); SimpleDateFormat formtoHora = new SimpleDateFormat("HH:mm:ss"); chunk = new Chunk(getText("cuenta.hora") + ": " + formtoHora.format(cuenta.getFecha()), datos); documento.add(new Paragraph(chunk)); //Aadimos los datos del pedido //Obtenemos el usuario, es decir, del camarero con el nombre que tenemos registrado en la session chunk = new Chunk(getText("cuenta.camarero") + ": " + session.get("usuario").toString(), datos); documento.add(new Paragraph(chunk)); documento.add(new Chunk(Chunk.NEWLINE)); //Salto de linea //Aadimos la tabla con los datos del pedido //Creamos una tabla PdfPTable tabla = new PdfPTable(4); //Especificamos el numero de columnas //Aadimos la cabecera de la tabla tabla.addCell(getText("cuenta.producto")); tabla.addCell(getText("cuenta.unidades")); tabla.addCell(getText("cuenta.pvp")); tabla.addCell(getText("cuenta.total")); for (Producto producto : pedido.getListaProductos()) { tabla.addCell(producto.getNombre()); tabla.addCell(String.valueOf(producto.getUnidades())); tabla.addCell(String.valueOf(producto.getPrecio())); tabla.addCell(String.valueOf(producto.getPrecio() * producto.getUnidades())); if (producto instanceof Hamburguesa) { Hamburguesa h = (Hamburguesa) producto; for (Producto extra : h.getListaProductosExtra()) { tabla.addCell("(E) " + extra.getNombre()); tabla.addCell(String.valueOf(extra.getUnidades())); tabla.addCell(String.valueOf(extra.getPrecio())); tabla.addCell(String.valueOf(extra.getPrecio() * extra.getUnidades())); } } } //Aadimos la tabla al documento documento.add(tabla); documento.add(new Chunk(Chunk.NEWLINE)); //Salto de linea //Aadimos una tabla con los impuestos y el total a pagar tabla = new PdfPTable(3); //Especificamos el numero de columnas tabla.addCell(getText("cuenta.baseImponible") + ": " + pedido.getImporte() + ""); tabla.addCell(""); tabla.addCell(""); DecimalFormat formato = new DecimalFormat("#.##"); for (Impuesto dato : listaImpuestos) { tabla.addCell(""); tabla.addCell(dato.getNombre() + ": " + dato.getValor()); double impuesto = (pedido.getImporte() * dato.getValor()) / 100; tabla.addCell( getText("cuenta.impuesto") + " " + dato.getNombre() + ": " + formato.format(impuesto)); } tabla.addCell(getText("cuenta.total") + ": " + cuenta.getCantidad() + ""); tabla.addCell(""); tabla.addCell(""); //Aadimos la tabla al documento documento.add(tabla); //Cerramos el documento documento.close(); } else { //Si el directoiro no existe System.err.println("OperacionesComedorAction. Error no existe el directorio especificado"); throw new IOException(); //Lanzamos una excepcion } }
From source file:Common.app.QR.java
public static Image create(String content) { try {/* ww w. j a va2 s . co m*/ File file = File.createTempFile("QR_TEMP", ".PNG"); try { String charset = "UTF-8"; // or "ISO-8859-1" Map hintMap = new HashMap(); hintMap.put(EncodeHintType.ERROR_CORRECTION, ErrorCorrectionLevel.L); createQRCode(content, file.getAbsolutePath(), charset, hintMap, 200, 200); } catch (WriterException ex) { Logger.getLogger(ConsultaController.class.getName()).log(Level.INFO, null, ex); } catch (IOException ex) { Logger.getLogger(ConsultaController.class.getName()).log(Level.INFO, null, ex); } return Image.getInstance(file.getAbsolutePath()); } catch (Exception ex) { Logger.getLogger(QR.class.getName()).log(Level.INFO, null, ex); } return null; }
From source file:ConexionBD.CreaPrefichaPDF.java
public ByteArrayOutputStream ElaboraPreficha(String curp, ServletContext d) throws IOException { System.out.println("Elaborando preficha...."); PrefichaModel prefichaR = VerificaDAO.recuperaPreficha(Constants.BD_NAME, Constants.BD_PASS, curp); Paragraph vacio = new Paragraph(" ", FontFactory.getFont("arial", 10, Font.BOLD)); vacio.setAlignment(Element.ALIGN_CENTER); Document preficha = new Document(); ByteArrayOutputStream baos = new ByteArrayOutputStream(); try {//from w ww. j a v a 2 s.c o m PdfWriter writer = PdfWriter.getInstance(preficha, baos); preficha.open(); Paragraph depto = new Paragraph("Departamento de servicios escolares", FontFactory.getFont("arial", 20, Font.BOLD)); depto.setAlignment(Element.ALIGN_CENTER); preficha.add(depto); PdfContentByte rectangulo_general = writer.getDirectContentUnder(); rectangulo_general.rectangle(50, 48, 500, 710); rectangulo_general.fill(); drawRectangleSC(rectangulo_general, 50, 48, 500, 710); if (prefichaR.getExiste() == 1) { preficha.add(vacio); preficha.add(vacio); Paragraph periodo_text = new Paragraph( "Convocatoria de nuevo ingreso periodo: " + prefichaR.getPeriodobd(), FontFactory.getFont("arial", 10, Font.BOLD)); periodo_text.setAlignment(Element.ALIGN_CENTER); preficha.add(periodo_text); preficha.add(vacio); preficha.add(vacio); Paragraph fotografia = new Paragraph("", FontFactory.getFont("arial", 10, Font.BOLD)); fotografia.setAlignment(Element.ALIGN_CENTER); preficha.add(fotografia); preficha.add(vacio); String url_logo = "/Imagenes/itt_logo_opt.jpg"; String absolute_url_logo = d.getRealPath(url_logo); Image itt_logo = Image.getInstance(absolute_url_logo); Image Logo_itt = Image.getInstance(itt_logo); Logo_itt.setAbsolutePosition(260f, 640f); preficha.add(Logo_itt); PdfContentByte rectangulo_periodo = writer.getDirectContentUnder(); rectangulo_periodo.rectangle(125, 725, 350, 20); rectangulo_periodo.fill(); drawRectangleSC(rectangulo_periodo, 125, 725, 350, 20); String url_logo_bnmx = "/Imagenes/bnmx_color_opt.jpg"; String absolute_url_logo_bnmx = d.getRealPath(url_logo_bnmx); Image bnmx_logo = Image.getInstance(absolute_url_logo_bnmx); Image Logo_banco = Image.getInstance(bnmx_logo); Logo_banco.setAbsolutePosition(380f, 310f); preficha.add(Logo_banco); preficha.add(vacio); PdfContentByte fechaimpr = writer.getDirectContentUnder(); fechaimpr.rectangle(416, 635, 100, 35); fechaimpr.fill(); drawRectangleSC(fechaimpr, 416, 635, 100, 35); Paragraph fechapdf_impr = new Paragraph("\tFecha de impresin ", FontFactory.getFont("arial", 10, com.itextpdf.text.Font.BOLD)); fechapdf_impr.setAlignment(Element.ALIGN_RIGHT); preficha.add(fechapdf_impr); Paragraph fechapdf_fec = new Paragraph( "\t" + prefichaR.getFechapdf() + " ", FontFactory.getFont("arial", 10, com.itextpdf.text.Font.BOLD)); fechapdf_fec.setAlignment(Element.ALIGN_RIGHT); preficha.add(fechapdf_fec); preficha.add(vacio); Paragraph no_preficha = new Paragraph("Preficha N: " + prefichaR.getPrefichabd(), FontFactory.getFont("arial", 20, Font.BOLD)); no_preficha.setAlignment(Element.ALIGN_CENTER); preficha.add(no_preficha); preficha.add(vacio); PdfContentByte rectangulo_preficha_no = writer.getDirectContentUnder(); rectangulo_preficha_no.rectangle(85, 590, 430, 25); rectangulo_preficha_no.fill(); drawRectangleSC(rectangulo_preficha_no, 85, 590, 430, 25); PdfContentByte rectangulo_datos = writer.getDirectContentUnder(); rectangulo_datos.rectangle(85, 480, 430, 105); rectangulo_datos.fill(); drawRectangleSC(rectangulo_datos, 85, 480, 430, 105); Paragraph nombre = new Paragraph( " Nombre: " + prefichaR.getNombrebd(), FontFactory.getFont("arial", 10, Font.BOLD)); nombre.setAlignment(Element.ALIGN_LEFT); preficha.add(nombre); Paragraph apellidos = new Paragraph( " " + prefichaR.getApellidosbd(), FontFactory.getFont("arial", 10, Font.BOLD)); apellidos.setAlignment(Element.ALIGN_LEFT); preficha.add(apellidos); Paragraph CURP = new Paragraph( " CURP: " + prefichaR.getCurpbd(), FontFactory.getFont("arial", 10, Font.BOLD)); CURP.setAlignment(Element.ALIGN_LEFT); preficha.add(CURP); Paragraph carrera = new Paragraph("Carrera Solicitada:", FontFactory.getFont("arial", 10, Font.BOLD)); carrera.setAlignment(Element.ALIGN_CENTER); preficha.add(carrera); Paragraph Nomcarrera = new Paragraph(prefichaR.getCarrerabd(), FontFactory.getFont("arial", 10, Font.BOLD)); Nomcarrera.setAlignment(Element.ALIGN_CENTER); preficha.add(Nomcarrera); Paragraph modalidad = new Paragraph( " Modalidad: " + prefichaR.getModalidadbd(), FontFactory.getFont("arial", 10, Font.BOLD)); modalidad.setAlignment(Element.ALIGN_LEFT); preficha.add(modalidad); preficha.add(vacio); // preficha.add(vacio); Paragraph formatoBanamex = new Paragraph( "\nFORMATO UNIVERSAL PARA DEPSITOS EN SUCURSALES BANAMEX", FontFactory.getFont("arial", 10, Font.BOLD)); formatoBanamex.setAlignment(Element.ALIGN_CENTER); preficha.add(formatoBanamex); PdfContentByte rectanguloDepositoB = writer.getDirectContentUnder(); rectanguloDepositoB.rectangle(85, 440, 430, 20); rectanguloDepositoB.fill(); drawRectangle(rectanguloDepositoB, 85, 440, 430, 20); PdfContentByte rectanguloPago = writer.getDirectContentUnder(); rectanguloPago.rectangle(85, 250, 430, 190); rectanguloPago.fill(); drawRectangleSC(rectanguloPago, 85, 250, 430, 190); preficha.add(vacio); PdfContentByte rectanguloConcepto = writer.getDirectContentUnder(); rectanguloConcepto.rectangle(150, 395, 295, 35); rectanguloConcepto.fill(); drawRectangleSC(rectanguloConcepto, 150, 395, 295, 35); Paragraph formatoConceptoPre = new Paragraph("CONCEPTO: PAGO DE DERECHO A EXAMEN DE ADMISIN", FontFactory.getFont("arial", 10, Font.BOLD)); formatoConceptoPre.setAlignment(Element.ALIGN_CENTER); preficha.add(formatoConceptoPre); Paragraph fechaEmision = new Paragraph("FECHA L?MITE DE PAGO: " + prefichaR.getFecha_limite_pago(), FontFactory.getFont("arial", 10, Font.BOLD)); fechaEmision.setAlignment(Element.ALIGN_CENTER); preficha.add(fechaEmision); preficha.add(vacio); preficha.add(vacio); Paragraph importe = new Paragraph("IMPORTE A PAGAR: $" + prefichaR.getImporte_bd() + ".", FontFactory.getFont("arial", 15, Font.BOLD)); importe.setAlignment(Element.ALIGN_CENTER); preficha.add(importe); preficha.add(vacio); preficha.add(vacio); preficha.add(vacio); String ref = prefichaR.getRef_bancaria(); Paragraph referencia = new Paragraph( " REFERENCIA (B): " + ref, FontFactory.getFont("arial", 10, Font.BOLD)); referencia.setAlignment(Element.ALIGN_LEFT); preficha.add(referencia); preficha.add(vacio); preficha.add(vacio); preficha.add(vacio); preficha.add(vacio); Paragraph atencion = new Paragraph("Atencin", FontFactory.getFont("arial", 15, Font.BOLD)); atencion.setAlignment(Element.ALIGN_CENTER); preficha.add(atencion); PdfContentByte rectangulo_atencion = writer.getDirectContentUnder(); rectangulo_atencion.rectangle(245, 198, 100, 25); rectangulo_atencion.fill(); drawRectangle(rectangulo_atencion, 245, 198, 100, 25); PdfContentByte rectangulo_info = writer.getDirectContentUnder(); rectangulo_info.rectangle(85, 60, 430, 100); rectangulo_info.fill(); drawRectangle(rectangulo_info, 85, 60, 430, 120); preficha.add(vacio); preficha.add(vacio); Paragraph informacion = new Paragraph( " Para continuar con el proceso de preinscripcin deber:\n" + " - Realizar el pago para su examen de admisin con la \"REFERENCIA\" que aparece\n" + " en este documento en cualquier sucursal BANAMEX.\n" + " - Recibir la notificacin en su correo electrnico y estar al pendiente de \n" + " las notificaciones que sern enviadas al mismo de que el pago ya fue procesado \n" + " para completar su proceso de preinscripcin.\n", FontFactory.getFont("arial", 10, Font.BOLD)); informacion.setAlignment(Element.ALIGN_LEFT); preficha.add(informacion); preficha.addTitle("Preficha"); preficha.addSubject("Instituto Tecnolgico de Toluca"); preficha.addKeywords("Instituto Tecnolgico de Toluca"); preficha.addAuthor("Departamento de Servicios escolares"); preficha.addCreator("Departamento de Servicios escolares"); } else { preficha.add(vacio); preficha.add(vacio); preficha.add(vacio); preficha.add(vacio); preficha.add(vacio); preficha.add(vacio); Paragraph curpNoEncontrada = new Paragraph( " Lo sentimos, no se encontraron " + " coincidencias con su clave CURP.", FontFactory.getFont("arial", 14, Font.BOLD)); curpNoEncontrada.setAlignment(Element.ALIGN_LEFT); preficha.add(curpNoEncontrada); preficha.add(vacio); preficha.add(vacio); preficha.add(vacio); Paragraph curp_no = new Paragraph(curp, FontFactory.getFont("arial", 19, Font.PLAIN)); curp_no.setAlignment(Element.ALIGN_CENTER); preficha.add(curp_no); preficha.add(vacio); preficha.add(vacio); preficha.add(vacio); preficha.add(vacio); Paragraph lamenta = new Paragraph("" + "El deparamento de servicios escolares lamenta los inconvenientes ocurridos al intentar recuperar su preficha." + "", FontFactory.getFont("arial", 19, Font.BOLD)); lamenta.setAlignment(Element.ALIGN_CENTER); preficha.add(lamenta); preficha.add(vacio); preficha.add(vacio); preficha.add(vacio); preficha.add(vacio); preficha.add(vacio); preficha.add(vacio); Paragraph se_le_aconseja = new Paragraph(" RECOMENDACIONES", FontFactory.getFont("arial", 14, Font.BOLD)); se_le_aconseja.setAlignment(Element.ALIGN_LEFT); preficha.add(se_le_aconseja); Paragraph msjCurp = new Paragraph("\n" + " - Le aconsejamos revisar su CURP, ya que sin esta, no podr recuperar su preficha.\n" + " - Si el problema contina, acuda con esta hoja al departamento de SERVICIOS ESCOLARES (Edif.\n" + " X) de lunes a viernes de 9:00 a 18:00 horas, de lo contrario \n" + " haga su registro.\n" + " - Revise que en el proceso de registro cada paso se haya terminado correctamente\n" + " - Revise el manual de proceso de registro que se encuentra en la pgina www.ittoluca.edu.mx\n" + " - Revise el apartado de preguntas frecuentes que se encuentra en la pgina www.ittoluca.edu.mx\n" + " - En la seccin de contacto, se encuentran el telfono de contacto y la extensin.\n" + " - Otra alternativa es enviar un correo exponiendo su situacin al departamento de servicios \n" + " escolares." + "\n" + "" + "", FontFactory.getFont("arial", 10, Font.BOLD)); msjCurp.setAlignment(Element.ALIGN_LEFT); preficha.add(msjCurp); preficha.add(vacio); preficha.add(vacio); preficha.add(vacio); Paragraph no_comprobante = new Paragraph("" + "Este documento carece de validz oficial, su funcin es servir como medio de comunicacin.", FontFactory.getFont("arial", 8, Font.PLAIN, BaseColor.RED)); no_comprobante.setAlignment(Element.ALIGN_CENTER); preficha.add(no_comprobante); // preficha.add(vacio); String url_logo = "/Imagenes/itt_logo_opt.jpg"; String absolute_url_logo = d.getRealPath(url_logo); Image itt_logo = Image.getInstance(absolute_url_logo); Image Logo_itt = Image.getInstance(itt_logo); Logo_itt.setAbsolutePosition(140f, 640f); preficha.add(Logo_itt); } preficha.close(); return baos; } catch (DocumentException docE) { throw new IOException(docE.getMessage()); } }
From source file:containers.Receipt.java
public void printReceiptTogether() { try {/*w w w.j ava 2 s . co m*/ String path = System.getProperty("user.home") + File.separator + "Documents"; OutputStream file = new FileOutputStream(new File(path + "\\receiptTogether.pdf")); Document document = new Document(); PdfWriter.getInstance(document, file); document.open(); Paragraph p = new Paragraph("", FontFactory.getFont(FontFactory.COURIER)); Image img = Image.getInstance(new URL(link)); img.scalePercent(56f); p.add(img); p.add(header); p.add(new Date().toString()); footerTogether(); p.add(body); p.add(footer); document.add(p); document.close(); file.close(); header = ""; body = ""; footer = ""; } catch (Exception e) { e.printStackTrace(); } }
From source file:containers.Receipt.java
public void printReceiptSeparate() { try {/*from ww w . j a v a 2 s. c o m*/ String path = System.getProperty("user.home") + File.separator + "Documents"; OutputStream file = new FileOutputStream(new File(path + "\\receipt" + orderNumber + ".pdf")); Document document = new Document(); PdfWriter.getInstance(document, file); document.open(); Paragraph p = new Paragraph("", FontFactory.getFont(FontFactory.COURIER)); Image img = Image.getInstance(new URL(link)); img.scalePercent(56f); p.add(img); p.add(header); p.add(new Date().toString()); footerSeparate(); p.add(body); p.add(footer); document.add(p); document.close(); file.close(); } catch (Exception e) { e.printStackTrace(); } }
From source file:containers.Report.java
public void generateHours(String hours, String from, String to) { try {/*ww w.j a v a 2 s.com*/ String path = System.getProperty("user.home") + File.separator + "Documents"; OutputStream file = new FileOutputStream(new File(path + "\\EmployeeReport.pdf")); Document document = new Document(); PdfWriter.getInstance(document, file); document.open(); Paragraph p = new Paragraph("", FontFactory.getFont(FontFactory.COURIER)); Image img = Image.getInstance(new URL(link)); img.scalePercent(56f); p.add(img); ehours = hours; body = String.format("%-15s - %2s\n", "Employee Number", empno); body += String.format("%-15s - %5s\n", "First Name", fname); body += String.format("%-15s - %1s\n", "Last Name", lname); body += String.format("%-15s - %9s\n", "Address", address); body += String.format("%-15s - %9s\n", "Phone Number", phone); body += String.format("%-15s - %3s\n", "Position", position); body += String.format("%-15s - %8s\n", "Total Hours", ehours); body += "\n"; from = from.substring(0, 10); to = to.substring(0, 10); p.add(new Date().toString()); p.add("\n\nEmployee Report\n\n"); p.add("Reporting Date: \n" + from + " - " + to + "\n\n"); p.add(body); document.add(p); document.close(); file.close(); body = ""; } catch (Exception e) { e.printStackTrace(); } }
From source file:containers.Report.java
public void generateOrderByDate(ArrayList<String> entry, String from, String to) { try {//from w ww. j ava 2s.c o m String path = System.getProperty("user.home") + File.separator + "Documents"; OutputStream file = new FileOutputStream(new File(path + "\\DateOrderReport.pdf")); Document document = new Document(); PdfWriter.getInstance(document, file); document.open(); Paragraph p = new Paragraph("", FontFactory.getFont(FontFactory.COURIER)); Image img = Image.getInstance(new URL(link)); img.scalePercent(56f); p.add(img); body2 = String.format("%5s - %5s - %5s - %5s\n", "Order No.", "Order Total", "Payment Type", "Order Date"); double counter = 0; for (int i = 0; i < entry.size(); i += 4) { body2 += String.format("%-10s %8s %15s %24s\n", entry.get(i), entry.get(i + 1), entry.get(i + 2), entry.get(i + 3).substring(0, 19)); counter += Double.parseDouble(entry.get(i + 1)); } body2 += "\n\nTotal for all orders: $" + counter; from = from.substring(0, 10); to = to.substring(0, 10); p.add(new Date().toString()); p.add("\n\nOrder by Date Report\n"); p.add("Reporting Date: \n" + from + " - " + to + "\n\n"); p.add(body2); document.add(p); document.close(); file.close(); body2 = ""; } catch (Exception e) { e.printStackTrace(); } }
From source file:containers.Report.java
public void generateOrderByPayment(String type, ArrayList<String> entry, String from, String to) { try {//from w w w .ja v a 2 s.c o m String path = System.getProperty("user.home") + File.separator + "Documents"; OutputStream file = new FileOutputStream(new File(path + "\\PayTypeReport.pdf")); Document document = new Document(); PdfWriter.getInstance(document, file); document.open(); Paragraph p = new Paragraph("", FontFactory.getFont(FontFactory.COURIER)); Image img = Image.getInstance(new URL(link)); img.scalePercent(56f); p.add(img); body3 = String.format("%5s - %5s - %5s\n", "Order No.", "Order Total", "Order Date"); double counter = 0; for (int i = 0; i < entry.size(); i += 3) { body3 += String.format("%-10s %8s %25s\n", entry.get(i), entry.get(i + 1), entry.get(i + 2).substring(0, 19)); counter += Double.parseDouble(entry.get(i + 1)); } body3 += "\n\nTotal for all orders: $" + counter; from = from.substring(0, 10); to = to.substring(0, 10); p.add(new Date().toString()); p.add("\n\nOrder by Payment Report\n"); p.add("Payment Type: " + type + "\n"); p.add("Reporting Date: \n" + from + " - " + to + "\n\n"); p.add(body3); document.add(p); document.close(); file.close(); body3 = ""; } catch (Exception e) { e.printStackTrace(); } }
From source file:containers.Report.java
public void generateOrderItem(String ordernum, ArrayList<String> entry) { try {// w ww . ja v a 2 s . co m String path = System.getProperty("user.home") + File.separator + "Documents"; OutputStream file = new FileOutputStream(new File(path + "\\OrderReport.pdf")); Document document = new Document(); PdfWriter.getInstance(document, file); document.open(); Paragraph p = new Paragraph("", FontFactory.getFont(FontFactory.COURIER)); Image img = Image.getInstance(new URL(link)); img.scalePercent(56f); p.add(img); body4 = String.format("%5s %27s %10s\n", "Item Name", "Base Price", "Log Total"); double counter = 0; for (int i = 0; i < entry.size(); i += 3) { body4 += String.format("%-10s %15s %12s\n", entry.get(i), entry.get(i + 1), entry.get(i + 2)); counter += Double.parseDouble(entry.get(i + 2)); } body4 += "\n\nTotal for all orders: $" + counter; p.add(new Date().toString()); p.add("\n\nItems on Order Report\n"); p.add("Order Number: " + ordernum + "\n\n"); p.add(body4); document.add(p); document.close(); file.close(); body4 = ""; } catch (Exception e) { e.printStackTrace(); } }