List of usage examples for com.itextpdf.text Chunk setFont
public void setFont(final Font font)
Chunk
. From source file:org.sistemafinanciero.rest.impl.SocioRESTService.java
License:Apache License
@Override public Response getCartillaInformacion(BigInteger id) { OutputStream file;/* w ww . ja va 2 s . c om*/ // CuentaBancariaView cuentaBancaria = // cuentaBancariaServiceNT.findById(id); SocioView socio = socioServiceNT.findById(id); CuentaAporte cuentaAporte = socioServiceNT.getCuentaAporte(id); Moneda moneda = cuentaAporte.getMoneda(); SimpleDateFormat DATE_FORMAT = new SimpleDateFormat("dd/MM/yyyy"); BaseColor baseColor = BaseColor.LIGHT_GRAY; Font font = FontFactory.getFont("Arial", 10f); Font fontBold = FontFactory.getFont("Arial", 10f, Font.BOLD); try { file = new FileOutputStream(new File(cartillaURL + "\\" + id + ".pdf")); Document document = new Document(PageSize.A4);// *4 PdfWriter writer = PdfWriter.getInstance(document, file); document.open(); /******************* TITULO ******************/ //Image img = Image.getInstance("/images/logo_coop_contrato.png"); Image img = Image.getInstance("//usr//share//jboss//archivos//logoCartilla//logo_coop_contrato.png"); img.setAlignment(Image.LEFT | Image.UNDERLYING); document.add(img); Paragraph parrafoPrincipal = new Paragraph(); parrafoPrincipal.setSpacingAfter(40); parrafoPrincipal.setSpacingBefore(50); parrafoPrincipal.setAlignment(Element.ALIGN_CENTER); parrafoPrincipal.setIndentationLeft(100); parrafoPrincipal.setIndentationRight(50); Chunk titulo = new Chunk("CARTILLA DE INFORMACIN\n"); Font fuenteTitulo = new Font(); fuenteTitulo.setSize(18); fuenteTitulo.setFamily("Arial"); fuenteTitulo.setStyle(Font.BOLD | Font.UNDERLINE); titulo.setFont(fuenteTitulo); parrafoPrincipal.add(titulo); Chunk subTitulo = new Chunk("APERTURA CUENTA DE APORTE\n"); Font fuenteSubtitulo = new Font(); fuenteSubtitulo.setSize(13); fuenteSubtitulo.setFamily("Arial"); fuenteSubtitulo.setStyle(Font.BOLD | Font.UNDERLINE); subTitulo.setFont(fuenteSubtitulo); parrafoPrincipal.add(subTitulo); document.add(parrafoPrincipal); /******************* DATOS BASICOS DEL SOCIO **********************/ PdfPTable table1 = new PdfPTable(4); table1.setWidthPercentage(100); PdfPCell cabecera1 = new PdfPCell(new Paragraph("DATOS BASICOS DEL SOCIO", fontBold)); cabecera1.setColspan(4); cabecera1.setBackgroundColor(baseColor); PdfPCell cellCodigoSocio = new PdfPCell(new Paragraph("Codigo Socio:", fontBold)); cellCodigoSocio.setColspan(1); cellCodigoSocio.setBorder(Rectangle.NO_BORDER); PdfPCell cellCodigoSocioValue = new PdfPCell(new Paragraph(socio.getIdsocio().toString(), font)); cellCodigoSocioValue.setColspan(3); cellCodigoSocioValue.setBorder(Rectangle.NO_BORDER); PdfPCell cellApellidosNombres = new PdfPCell(new Paragraph( socio.getTipoPersona().equals(TipoPersona.NATURAL) ? "Apellidos y Nombres:" : "Razn Social:", fontBold)); cellApellidosNombres.setColspan(1); cellApellidosNombres.setBorder(Rectangle.NO_BORDER); PdfPCell cellApellidosNombresValue = new PdfPCell(new Paragraph(socio.getSocio(), font)); cellApellidosNombresValue.setColspan(3); cellApellidosNombresValue.setBorder(Rectangle.NO_BORDER); table1.addCell(cabecera1); table1.addCell(cellCodigoSocio); table1.addCell(cellCodigoSocioValue); table1.addCell(cellApellidosNombres); table1.addCell(cellApellidosNombresValue); PdfPCell cellDNI = new PdfPCell(new Paragraph(socio.getTipoDocumento() + ":", fontBold)); cellDNI.setColspan(1); cellDNI.setBorder(Rectangle.NO_BORDER); PdfPCell cellDNIValue = new PdfPCell(new Paragraph(socio.getNumeroDocumento(), font)); cellDNIValue.setColspan(1); cellDNIValue.setBorder(Rectangle.NO_BORDER); PdfPCell cellFechaNaciemiento = new PdfPCell( new Paragraph(socio.getTipoPersona().equals(TipoPersona.NATURAL) ? "Fecha de Nacimiento:" : "Fecha de Constitucin", fontBold)); cellFechaNaciemiento.setColspan(1); cellFechaNaciemiento.setBorder(Rectangle.NO_BORDER); PdfPCell cellFechaNacimientoValue = new PdfPCell( new Paragraph(DATE_FORMAT.format(socio.getFechaNacimiento()), font)); cellFechaNacimientoValue.setColspan(1); cellFechaNacimientoValue.setBorder(Rectangle.NO_BORDER); table1.addCell(cellDNI); table1.addCell(cellDNIValue); table1.addCell(cellFechaNaciemiento); table1.addCell(cellFechaNacimientoValue); document.add(table1); document.add(new Paragraph("\n")); /******************* PRODUCTOS Y SERVICIOS **********************/ PdfPTable table3 = new PdfPTable(4); table3.setWidthPercentage(100); PdfPCell cabecera3 = new PdfPCell(new Paragraph("PRODUCTOS Y SERVICIOS", fontBold)); cabecera3.setColspan(4); cabecera3.setBackgroundColor(baseColor); table3.addCell(cabecera3); PdfPCell cellProductoCab = new PdfPCell(new Paragraph("Producto", fontBold)); PdfPCell cellMonedaCab = new PdfPCell(new Paragraph("Moneda", fontBold)); PdfPCell cellNumeroCuentaCab = new PdfPCell(new Paragraph("Nmero Cuenta", fontBold)); PdfPCell cellFechaAperturaCab = new PdfPCell(new Paragraph("Fecha Apertura", fontBold)); cellProductoCab.setBorder(Rectangle.NO_BORDER); cellMonedaCab.setBorder(Rectangle.NO_BORDER); cellNumeroCuentaCab.setBorder(Rectangle.NO_BORDER); cellFechaAperturaCab.setBorder(Rectangle.NO_BORDER); table3.addCell(cellProductoCab); table3.addCell(cellMonedaCab); table3.addCell(cellNumeroCuentaCab); table3.addCell(cellFechaAperturaCab); PdfPCell cellProducto = new PdfPCell(new Paragraph("CUENTA DE APORTE", font)); PdfPCell cellMoneda = new PdfPCell(new Paragraph(moneda.getDenominacion(), font)); PdfPCell cellNumeroCuenta = new PdfPCell(new Paragraph(cuentaAporte.getNumeroCuenta(), font)); PdfPCell cellFechaApertura = new PdfPCell( new Paragraph(DATE_FORMAT.format(socio.getFechaAsociado()), font)); cellProducto.setBorder(Rectangle.NO_BORDER); cellMoneda.setBorder(Rectangle.NO_BORDER); cellNumeroCuenta.setBorder(Rectangle.NO_BORDER); cellFechaApertura.setBorder(Rectangle.NO_BORDER); table3.addCell(cellProducto); table3.addCell(cellMoneda); table3.addCell(cellNumeroCuenta); table3.addCell(cellFechaApertura); document.add(table3); document.add(new Paragraph("\n")); /******************* DECLARACIONES Y FIRMAS **********************/ PdfPTable table4 = new PdfPTable(1); table4.setWidthPercentage(100); PdfPCell cabecera4 = new PdfPCell(new Paragraph("DECLARACIONES Y FIRMAS", fontBold)); cabecera4.setBackgroundColor(baseColor); table4.addCell(cabecera4); Paragraph parrafoDeclaraciones = new Paragraph(); Chunk parrafo1 = new Chunk( "Los aportes individuales sern pagados por los Asociados en forma peridica de conformidad con lo establecido en el Estatuto y el Reglamento de Aportes Sociales de la Cooperativa. El aporte social ordinario de cada Asociado ser mnimo de S/. 10.00 Nuevos Soles si es mayor de edad y S/. 5.00 Nuevos Soles si es menor de edad.\n\n", font); parrafo1.setLineHeight(13); parrafoDeclaraciones.add(parrafo1); Chunk parrafoDeclaracionesFinalesCab = new Chunk("DECLARACIN FINAL DEL CLIENTE: ", fontBold); Paragraph parrafoDeclaracionesFinalesValue = new Paragraph(); Chunk parrafo2 = new Chunk( "Declaro haber leido previamente las condiciones establecidas en el Contrato de Depsito y la Cartilla de Informacin, asi como haber sido instruido acerca de los alcances y significados de los trminos y condiciones establecidos en dicho documento habiendo sido absueltas y aclaradas a mi satisfaccin todas las consultas efectuadas y/o dudas, suscribe el presente documento en duplicado y con pleno y exacto conocimiento de los mismos.\n", font); parrafo2.setLineHeight(13); parrafoDeclaracionesFinalesValue.add(parrafo2); parrafoDeclaraciones.add(parrafoDeclaracionesFinalesCab); parrafoDeclaraciones.add(parrafoDeclaracionesFinalesValue); PdfPCell declaraciones = new PdfPCell(parrafoDeclaraciones); declaraciones.setBorder(Rectangle.NO_BORDER); declaraciones.setHorizontalAlignment(Element.ALIGN_JUSTIFIED); table4.addCell(declaraciones); document.add(table4); // firmas Chunk firmaP01 = new Chunk(".........................................."); Chunk firmaP02 = new Chunk("..........................................\n"); Chunk firma01 = new Chunk("Caja Ventura"); Chunk firma02 = new Chunk("El Socio "); Paragraph firmas = new Paragraph("\n\n\n\n\n\n"); firmas.setAlignment(Element.ALIGN_CENTER); firmas.add(firmaP01); firmas.add(Chunk.SPACETABBING); firmas.add(Chunk.SPACETABBING); firmas.add(firmaP02); firmas.add(firma01); firmas.add(Chunk.SPACETABBING); firmas.add(Chunk.SPACETABBING); firmas.add(Chunk.SPACETABBING); firmas.add(Chunk.SPACETABBING); firmas.add(firma02); document.add(firmas); document.close(); file.close(); } catch (FileNotFoundException e) { e.printStackTrace(); } catch (DocumentException e) { e.printStackTrace(); } catch (IOException e) { e.printStackTrace(); } PdfReader reader; try { reader = new PdfReader(cartillaURL + "\\" + id + ".pdf"); ByteArrayOutputStream out = new ByteArrayOutputStream(); PdfStamper pdfStamper = new PdfStamper(reader, out); AcroFields acroFields = pdfStamper.getAcroFields(); acroFields.setField("field_title", "test"); pdfStamper.close(); reader.close(); return Response.ok(out.toByteArray()).type("application/pdf").build(); } catch (IOException e) { // TODO Auto-generated catch block e.printStackTrace(); } catch (DocumentException e) { // TODO Auto-generated catch block e.printStackTrace(); } return Response.status(Response.Status.INTERNAL_SERVER_ERROR).entity(Jsend.getErrorJSend("No encontrado")) .build(); }
From source file:reportes.ServletIntegral.java
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { HttpSession session = request.getSession(); ServletConfig config = getServletConfig(); ServletContext context = config.getServletContext(); String path = context.getContextPath(); String realPath = context.getRealPath("/"); response.setContentType("application/pdf"); //Para descargar el PDF response.setHeader("Content-Disposition", "attachment; filename=\"ResultadoIntegral.pdf\""); // step 1: creation of a document-object try {/* w ww .j av a 2 s.c om*/ Document document = new Document(PageSize.LETTER); // step 2: // we create a writer that listens to the document // and directs a PDF-stream to a temporary buffer ByteArrayOutputStream buffer = new ByteArrayOutputStream(); PdfWriter.getInstance(document, buffer); // step 3: we open the document document.open(); // step 4: we add content to the document Paragraph title = new Paragraph( (session.getAttribute("nEmpresa") != null) ? session.getAttribute("nEmpresa").toString() : "Empresa"); title.setAlignment(Element.ALIGN_CENTER); title.setFont(NORMAL); document.add(title); title = new Paragraph("Estado de resultado integral del 01 de Enero al 31 de Diciembre del " + (new Date().getYear() + 1900)); title.setAlignment(Element.ALIGN_CENTER); title.setFont(NORMAL); document.add(title); title = new Paragraph("Cifras en miles de pesos"); title.setAlignment(Element.ALIGN_CENTER); title.setFont(NORMAL); document.add(title); for (int i = 0; i < 2; i++) { document.add(new Paragraph(" ")); } PdfPTable table = new PdfPTable(2); //Obtenemos los datos de la clase ResultadoIntegral ResultadoIntegral r = new ResultadoIntegral(); r.calculaResultado(Integer.parseInt(session.getAttribute("Empresa").toString())); for (int i = 0; i < r.getSaldos().size(); i++) { PdfPCell dato = new PdfPCell(); if (i == 2 || i == 7 || i == 12 || i == 14 || i == 16 || i == 18 || i == 19 || i == 17) { Chunk ch = new Chunk(descripciones[i]); ch.setFont(BOLD_Tot); Phrase ph = new Phrase(ch); dato.setPhrase(ph); } else { Phrase ph = new Phrase(descripciones[i]); dato.setPhrase(ph); } dato.setBorder(Rectangle.NO_BORDER); dato.setHorizontalAlignment(Element.ALIGN_LEFT); table.addCell(dato); if (r.getValores().size() > 0) { Chunk ch = new Chunk(); if (r.getSaldos().get(i) < 0) { String valor = "(" + (r.getSaldos().get(i) * (-1)) + ")"; ch.append(valor); ch.setFont(NORMAL_Negative); } else { dato.setPhrase(new Phrase("" + r.getSaldos().get(i))); } } else { dato.setPhrase(new Phrase("0.0")); } if (i == 1 || i == 6 || i == 11 || i == 13 || i == 15 || i == 17 || i == 18) { dato.setBorder(Rectangle.BOTTOM); } else { dato.setBorder(Rectangle.NO_BORDER); } dato.setHorizontalAlignment(Element.ALIGN_RIGHT); table.addCell(dato); } document.add(table); document.add(new Paragraph("")); // step 5: we close the document document.close(); // step 6: we output the writer as bytes to the response output DataOutputStream output = new DataOutputStream(response.getOutputStream()); byte[] bytes = buffer.toByteArray(); response.setContentLength(bytes.length); for (int i = 0; i < bytes.length; i++) { output.writeByte(bytes[i]); } output.close(); response.getOutputStream(); //session.removeAttribute("bean"); //session.removeAttribute("producto"); } catch (Exception ex) { ex.printStackTrace(); } }
From source file:se.billes.pdf.renderer.model.text.DottedFillPhrase.java
License:Open Source License
@Override public void onRender(com.itextpdf.text.Paragraph paragraph) { DottedLineSeparator sep = new DottedLineSeparator(); sep.setAlignment(Element.ALIGN_LEFT); sep.setGap(gap);//w w w . j ava 2s . c o m sep.setLineColor(getBaseColor()); com.itextpdf.text.Font f = new com.itextpdf.text.Font(getBaseFont(), getFontSize()); f.setColor(getBaseColor()); Chunk separator = new Chunk(sep); separator.setFont(f); paragraph.add(separator); }