List of usage examples for com.itextpdf.text Paragraph setAlignment
public void setAlignment(int alignment)
From source file:br.com.tcc.view.MovimentoPedidoView.java
private void relat(String sql) throws SQLException, DocumentException, FileNotFoundException, IOException { /* Create Connection objects */ Connection con = new ConnectionFactory().getConnection(); Statement stmt = con.createStatement(); int row = tblRegistro.getSelectedRow(); int id = pedidoRegistroList.get(row).getId(); SimpleDateFormat horaformatada = new SimpleDateFormat("HH:mm:ss"); Date horaAtual = new Date(); hora = horaformatada.format(horaAtual); Date data = new Date(); // mes = ""+Data.getMonth();//0 a 11 dia = "" + data.getDate(); ano = "" + (1900 + data.getYear()); switch (data.getMonth()) { case 0://www. j a va2 s. c om mes = "Janeiro"; break; case 1: mes = "Fevereiro"; break; case 2: mes = "Maro"; break; case 3: mes = "Abril"; break; case 4: mes = "Maio"; break; case 5: mes = "Junho"; break; case 6: mes = "Julho"; break; case 7: mes = "Agosto"; break; case 8: mes = "Setembro"; break; case 9: mes = "Outubro"; break; case 10: mes = "Novembro"; break; case 11: mes = "Dezembro"; break; } /* Define the SQL query */ // sql = "SELECT cliente.nome, funcionario.nome, tipopagamento.descricao, vendaregistro.dataVenda, vendaregistro.vlrSugerido, vendaregistro.totalVenda, vendaregistro.parcela, vendaregistro.1vencimento, vendaregistro.ativo FROM vendaregistro as vendaregistro INNER JOIN cliente as cliente ON (vendaregistro.idCliente = cliente.id) \n" + //"INNER JOIN funcionario as funcionario ON (vendaregistro.idFuncionario = funcionario.id) INNER JOIN tipopagamento as tipopagamento ON (vendaregistro.idTipoPagamento = tipopagamento.id) WHERE dataVenda = CURRENT_DATE"; ResultSet query = stmt.executeQuery(sql); /* Step-2: Initialize PDF documents - logical objects */ Document PDFLogReport = new Document(); PdfWriter.getInstance(PDFLogReport, new FileOutputStream("C:\\Users\\Leonardo P Souza\\Desktop\\Relat\\Pedidos " + id + ".pdf")); PDFLogReport.open(); Paragraph cabecalho = new Paragraph("AGRO EMPRESARIAL - SISTEMA DE GERENCIAMENTO\n" + "RUA GONALVES CHAVES, 602 PELOTAS/RS\n" + "FONE:(53) 3232-3232 BAIRRO: CENTRO\n" + "CNPJ: 12.345.678/1011-12\n" + "-------------------------------------------\n" + dia + "/" + mes + "/" + ano + " " + hora + " COD: " + id + " \n\n"); cabecalho.setAlignment(Element.ALIGN_CENTER); PDFLogReport.add(cabecalho); //we have two columns in our table PdfPTable LogTable = new PdfPTable(4); // Ttulo para a tabela Paragraph tableHeader = new Paragraph("Lista de Pedidos"); PdfPCell header = new PdfPCell(tableHeader); // Definindo que o header vai ocupar as 2 colunas header.setColspan(4); // Definindo alinhamento do header header.setHorizontalAlignment(Paragraph.ALIGN_CENTER); // Adicionando o header tabela Font fonte = new Font(Font.FontFamily.HELVETICA, 7, Font.BOLD, BaseColor.BLACK); Font fonteDados = new Font(Font.FontFamily.TIMES_ROMAN, 6, Font.NORMAL, BaseColor.BLACK); LogTable.addCell(header); LogTable.addCell(new Paragraph("Produto ", fonte)); LogTable.addCell(new Paragraph("Quantidade", fonte)); LogTable.addCell(new Paragraph("Valor Unitrio", fonte)); LogTable.addCell(new Paragraph("Valor Total", fonte)); //create a cell object // PdfPCell table_cell; while (query.next()) { String produto = query.getString("produto.descricao"); LogTable.addCell(new Paragraph(produto, fonteDados)); String quantidade = query.getString("qtdePedido"); LogTable.addCell(new Paragraph(quantidade, fonteDados)); String vlrSugerido = query.getString("vlrUnitario"); LogTable.addCell(new Paragraph(vlrSugerido, fonteDados)); String vlrTotal = query.getString("vlrTotal"); LogTable.addCell(new Paragraph(vlrTotal, fonteDados)); } /* Attach report table to PDF */ PDFLogReport.add(LogTable); double valor = pedidoRegistroList.get(row).getVlrPedido(); Paragraph paragrafoValor = new Paragraph("Valor R$: " + valor); paragrafoValor.setAlignment(Element.ALIGN_RIGHT); PDFLogReport.add(paragrafoValor); PDFLogReport.close(); /* Close all DB related objects */ query.close(); stmt.close(); con.close(); String file; file = "C:\\Users\\Leonardo P Souza\\Desktop\\Relat\\Pedidos " + id + ".pdf"; Runtime.getRuntime().exec("rundll32 SHELL32.DLL,ShellExec_RunDLL " + file); }
From source file:br.edu.unipampa.recipemanager.pdf.CreatePDF.java
public boolean newPdf(List<MenuRecipe> menuRecipe, String month, String responsibleName) { double valueMonth = 0; try {/*from w w w . j a v a 2s .c o m*/ Document doc = new Document(PageSize.A4, 72, 72, 72, 72); OutputStream os = new FileOutputStream(namePdf(menuRecipe)); PdfWriter.getInstance(doc, os); doc.open(); Paragraph p; Font f = new Font(Font.FontFamily.TIMES_ROMAN, 18, Font.BOLD); p = new Paragraph("Ms: " + month, f); doc.add(p); f = new Font(Font.FontFamily.COURIER, 14, Font.ITALIC); for (MenuRecipe menu : menuRecipe) { valueMonth += menu.priceMenu(); p.setSpacingBefore(5); p.setSpacingAfter(5); p = new Paragraph(menu.toString(), f); doc.add(p); } p = new Paragraph("Preo total de todos os cardpios: " + valueMonth, f); doc.add(p); f = new Font(Font.FontFamily.TIMES_ROMAN, 12, Font.BOLD); p = new Paragraph("_____________________________________\n" + responsibleName, f); p.setSpacingAfter(15); p.setAlignment(Element.ALIGN_RIGHT); doc.add(p); doc.close(); os.close(); return true; } catch (Exception e) { return false; } }
From source file:br.unisc.video_locadora.controll.Generator_PDF.java
public void geraRelatorio() throws DocumentException, FileNotFoundException { // Cria um novo documento com tamanho e margens definidas pelo usurio // new Document(tamanho da pgina, margem esquerda, margem direita, // margem topo, margem rodap); Document doc = new Document(PageSize.A4, 10, 10, 10, 10); try {/* w w w . java 2 s .co m*/ JFileChooser jFileChooser = new JFileChooser(); //seta para selecionar apenas arquivos jFileChooser.setFileSelectionMode(JFileChooser.FILES_ONLY); //desabilita todos os tipos de arquivos jFileChooser.setAcceptAllFileFilterUsed(false); //filtra por extensao jFileChooser.setFileFilter(new FileFilter() { @Override public String getDescription() { return "Extenso PDF"; } @Override public boolean accept(File f) { return f.getName().toLowerCase().endsWith("pdf"); } }); //mostra janela para salvar int acao = jFileChooser.showSaveDialog(null); //executa acao conforme opcao selecionada if (acao == JFileChooser.APPROVE_OPTION) { //escolheu arquivo System.out.println(jFileChooser.getSelectedFile().getAbsolutePath()); PdfWriter.getInstance(doc, new FileOutputStream(jFileChooser.getSelectedFile().getAbsolutePath() + ".pdf")); doc.open(); listaF = f.buscaFilme(""); // Definindo uma fonte, com tamanho 20 e negrito Font f = new Font(Font.FontFamily.COURIER, 30, Font.BOLD); Font f2 = new Font(Font.FontFamily.HELVETICA, 20, Font.BOLD); // adicionando um pargrafo ao documento com a fonte acima Paragraph pa = new Paragraph("Relatrio", f); // Setando o alinhamento p/ o centro pa.setAlignment(Paragraph.ALIGN_CENTER); // Definindo pa.setSpacingAfter(50); doc.add(pa); //doc.add(new Paragraph(" ")); // Criando uma tabela com 4 colunas PdfPTable table = new PdfPTable(7); // Ttulo para a tabela Paragraph tableHeader = new Paragraph("Todos os Ttulos", f2); PdfPCell header = new PdfPCell(tableHeader); // Definindo que o header vai ocupar as 4 colunas header.setColspan(7); // Definindo alinhamento do header header.setHorizontalAlignment(Paragraph.ALIGN_CENTER); // Adicionando o header tabela table.addCell(header); List<String> list = new ArrayList<>(); list.add("Id"); list.add("Ttulo"); list.add("Ano"); list.add("Diretor"); list.add("Gnero"); list.add("Linguagem"); list.add("Locado"); for (Filmes p : listaF) { list.add(String.valueOf(p.getId())); list.add(p.getTitulo()); list.add(String.valueOf(p.getAno())); list.add(p.getDiretor()); list.add(p.getGenero()); list.add(p.getIdioma()); list.add(p.getLocado()); } for (String s : list) { table.addCell(s); } doc.add(table); /* doc.add(new Paragraph(" ID | Nome | Idade | Cidade")); for (Pessoa p : lista) { doc.add(new Paragraph(p.getId() + " | " + p.getNome() + " | " + p.getIdade() + " | " + p.getCidade())); }*/ } } catch (FileNotFoundException | DocumentException e) { System.err.println(e.getMessage()); } doc.close(); }
From source file:bsf.conn.DBMS.java
private static void addContent(Document document) throws DocumentException { Anchor anchor = new Anchor("Personal Info", catFont); anchor.setName("Personal Info"); // Second parameter is the number of the chapter Chapter catPart = new Chapter(new Paragraph(anchor), 1); Paragraph subPara = new Paragraph(null, smallBold); Section subCatPart = catPart.addSection(subPara); // add a table subPara.setAlignment(Element.ALIGN_LEFT); createTable(subCatPart, info.personalInfo); // now add all this to the document document.add(catPart);/*from www . j a va 2 s . c o m*/ // Next section anchor = new Anchor("Personal Information", catFont); anchor.setName("Personal Information"); // Second parameter is the number of the chapter catPart = new Chapter(new Paragraph(anchor), 1); subPara = new Paragraph("Running Details", smallBold); subPara.setAlignment(Element.ALIGN_LEFT); subCatPart = catPart.addSection(subPara); // add a table addEmptyLine(subPara, 3); createTable(subCatPart, info.runningDetails); // now add all this to the document document.add(catPart); // Next section anchor = new Anchor("Personal Information", catFont); anchor.setName("Personal Information"); // Thrd parameter is the number of the chapter catPart = new Chapter(new Paragraph(anchor), 1); subPara = new Paragraph("Leave Details", smallBold); subCatPart = catPart.addSection(subPara); // add a table addEmptyLine(subPara, 3); subPara.setAlignment(Element.ALIGN_LEFT); createTable(subCatPart, info.leaveDetails); // now add all this to the document document.add(catPart); // Next section anchor = new Anchor("Family Information", catFont); anchor.setName("Family Information"); // Fourth parameter is the number of the chapter catPart = new Chapter(new Paragraph(anchor), 1); subPara = new Paragraph(null, smallBold); subCatPart = catPart.addSection(subPara); // add a table subPara.setAlignment(Element.ALIGN_LEFT); addEmptyLine(subPara, 3); createTable(subCatPart, info.familyInfo); // now add all this to the document document.add(catPart); // Next section anchor = new Anchor("Course Information", catFont); anchor.setName("Course Information"); // Fifth parameter is the number of the chapter catPart = new Chapter(new Paragraph(anchor), 1); subPara = new Paragraph(null, smallBold); subCatPart = catPart.addSection(subPara); // add a table subPara.setAlignment(Element.ALIGN_LEFT); addEmptyLine(subPara, 3); createTable(subCatPart, info.courseDetails); // now add all this to the document document.add(catPart); }
From source file:BusinessLogic.Controller.HandleCertificate.java
public void downloadCertificate(ContractDAO contrDAO, CertificateDAO certificateDAO, UserDAO usDAO, HttpServletResponse response, int idUser, int option) throws DocumentException, IOException { User user = usDAO.searchByPkID(idUser); List<Certificate> certificateObject = certificateDAO.searchUserAproved(); List<Certificate> certificateReturn = new ArrayList<Certificate>(); if (certificateObject != null) { certificateReturn.clear();/*w w w.jav a 2s.c o m*/ for (int i = 0; i < certificateObject.size(); i++) { if (certificateObject.get(i).getFkuserID().getPkID().equals(user.getPkID())) { certificateReturn.add(certificateObject.get(i)); } } } Contract contractObject = contrDAO.getUserContract(new User(user.getPkID())); Certificate cert = certificateReturn.get(option); Document document = new Document(); ByteArrayOutputStream baos = new ByteArrayOutputStream(); PdfWriter.getInstance(document, baos); document.open(); Font fuente = new Font(); fuente.setStyle(Font.BOLD); fuente.setColor(BaseColor.BLACK); fuente.setFamily(Font.FontFamily.TIMES_ROMAN.toString()); fuente.setSize(15); Paragraph header = new Paragraph("\n\n\n\n\nEL DEPARTAMENTO DE GESTION HUMANA\n" + "DE TALENTO-HUMANO LTDA\n\n\n\n\n" + "CERTIFICA QUE:\n\n\n\n\n", fuente); header.setAlignment(Element.ALIGN_CENTER); Calendar fecha = new GregorianCalendar(); int annio = fecha.get(Calendar.YEAR); int mes = fecha.get(Calendar.MONTH) + 1; int dia = fecha.get(Calendar.DAY_OF_MONTH); Paragraph endtext = new Paragraph("\n\nSe expide la presente certificacion a solicitud" + " del interesado a la fecha de : " + dia + "/" + mes + "/" + annio + "\n\n\nCordialmente\n\n\nEdwin Alexander Bohorquez\nGERENTE GENERAL DE TALENTO-HUMANO LTDA"); endtext.setAlignment(Element.ALIGN_LEFT); String typeCertificate = ""; if (cert.getType().toLowerCase().equals("laboral")) { typeCertificate = "Laboral"; document.add(header); List<String> positionlist = new ArrayList<String>(); for (Position cargo : contractObject.getPositionSet()) { positionlist.add(cargo.getName()); } Paragraph body = new Paragraph(user.getName().toUpperCase() + " " + user.getLastname().toUpperCase() + " con cedula de ciudadania No." + user.getIdentifyCard() + ", trabaja en esta empresa" + " desde " + contractObject.getStartDate() + ", desempeandose actualmente como " + positionlist + " con una asignacion mensual de $" + contractObject.getSalary() + ".Su contrato de trabajo es a termino " + contractObject.getType() + "."); body.setAlignment(Element.ALIGN_JUSTIFIED_ALL); document.add(body); document.add(endtext); } else if (cert.getType().toLowerCase().equals("nmina")) { typeCertificate = "Nomina"; Paragraph Payroll_header = new Paragraph("DEPARTAMENTO DE CONTABILIDAD\n" + "TALENTO-HUMANO LTDA\n\n" + "LIQUIDACION DE NOMINA:\n" + "Nombre del empleado : " + user.getName() + " " + user.getLastname() + "\n" + "Cedula : " + user.getIdentifyCard() + "\n\n", fuente); Payroll_header.setAlignment(Element.ALIGN_CENTER); document.add(Payroll_header); double commissions = 10000; double extra_hours = 50000; double transportation_aid = 63600; double totalAccrued = contractObject.getSalary() + commissions + extra_hours + transportation_aid; PdfPTable basetable = new PdfPTable(2); PdfPCell headertable = new PdfPCell(new Paragraph("Tabla Base", fuente)); headertable.setColspan(2); basetable.addCell(headertable); PdfPCell cell1 = new PdfPCell(new Paragraph("Salario Basico : ")); PdfPCell cell2 = new PdfPCell(new Paragraph(String.valueOf(contractObject.getSalary()))); PdfPCell cell3 = new PdfPCell(new Paragraph("Comisiones : ")); PdfPCell cell4 = new PdfPCell(new Paragraph(String.valueOf(commissions))); PdfPCell cell5 = new PdfPCell(new Paragraph("Horas Extras : ")); PdfPCell cell6 = new PdfPCell(new Paragraph(String.valueOf(extra_hours))); PdfPCell cell7 = new PdfPCell(new Paragraph("Auxilio de transporte : ")); PdfPCell cell8 = new PdfPCell(new Paragraph(String.valueOf(transportation_aid))); PdfPCell ce9 = new PdfPCell(new Paragraph("Total Devengado : ")); PdfPCell ce10 = new PdfPCell(new Paragraph(" $ " + String.valueOf(totalAccrued))); basetable.setWidthPercentage(100F); basetable.setHorizontalAlignment(Element.ALIGN_CENTER); basetable.addCell(cell1); basetable.addCell(cell2); basetable.addCell(cell3); basetable.addCell(cell4); basetable.addCell(cell5); basetable.addCell(cell6); basetable.addCell(cell7); basetable.addCell(cell8); basetable.addCell(ce9); basetable.addCell(ce10); document.add(basetable); PdfPTable tableliquidation = new PdfPTable(2); PdfPCell title = new PdfPCell( new Paragraph("Liquidacion. Deducciones de nomina(Conceptos a cargo del empleado) ", fuente)); title.setColspan(2); tableliquidation.addCell(title); PdfPCell cell9 = new PdfPCell(new Paragraph("Salud (4%) : ")); PdfPCell cell10 = new PdfPCell(new Paragraph(String.valueOf(contractObject.getSalary() * 0.04))); PdfPCell cell11 = new PdfPCell(new Paragraph("Pension (4%) : ")); PdfPCell cell12 = new PdfPCell(new Paragraph(String.valueOf(contractObject.getSalary() * 0.04))); tableliquidation.setWidthPercentage(100F); tableliquidation.setHorizontalAlignment(Element.ALIGN_CENTER); tableliquidation.addCell(cell9); tableliquidation.addCell(cell10); tableliquidation.addCell(cell11); tableliquidation.addCell(cell12); document.add(tableliquidation); PdfPTable tablesocialSecurity = new PdfPTable(2); PdfPCell title2 = new PdfPCell(new Paragraph("Seguridad Social a cargo del empleador", fuente)); title2.setColspan(2); tablesocialSecurity.addCell(title2); PdfPCell cell13 = new PdfPCell(new Paragraph("Salud (8.5%) : ")); PdfPCell cell14 = new PdfPCell(new Paragraph(String.valueOf(contractObject.getSalary() * 0.085))); PdfPCell cell15 = new PdfPCell(new Paragraph("Pension (12%) : ")); PdfPCell cell16 = new PdfPCell(new Paragraph(String.valueOf(contractObject.getSalary() * 0.12))); PdfPCell cell17 = new PdfPCell(new Paragraph("A.R.P : ")); PdfPCell cell18 = new PdfPCell(new Paragraph(String.valueOf(contractObject.getSalary() * 0.00522))); tablesocialSecurity.setWidthPercentage(100F); tablesocialSecurity.setHorizontalAlignment(Element.ALIGN_CENTER); tablesocialSecurity.addCell(cell13); tablesocialSecurity.addCell(cell14); tablesocialSecurity.addCell(cell15); tablesocialSecurity.addCell(cell16); tablesocialSecurity.addCell(cell17); tablesocialSecurity.addCell(cell18); document.add(tablesocialSecurity); PdfPTable social_benefits = new PdfPTable(2); PdfPCell title3 = new PdfPCell(new Paragraph("Prestaciones Sociales", fuente)); title3.setColspan(2); social_benefits.addCell(title3); PdfPCell cell19 = new PdfPCell(new Paragraph("Prima de servicios : ")); PdfPCell cell20 = new PdfPCell(new Paragraph(String.valueOf(totalAccrued * 0.0833))); PdfPCell cell21 = new PdfPCell(new Paragraph("Cesantias : ")); PdfPCell cell22 = new PdfPCell(new Paragraph(String.valueOf(totalAccrued * 0.0833))); PdfPCell cell23 = new PdfPCell(new Paragraph("Intereses sobre las cesantias : ")); PdfPCell cell24 = new PdfPCell(new Paragraph(String.valueOf(totalAccrued * 0.0833 * 0.12))); PdfPCell cell25 = new PdfPCell(new Paragraph("Vacaciones : ")); PdfPCell cell26 = new PdfPCell(new Paragraph(String.valueOf(contractObject.getSalary() * 0.0417))); social_benefits.setWidthPercentage(100F); social_benefits.setHorizontalAlignment(Element.ALIGN_CENTER); social_benefits.addCell(cell19); social_benefits.addCell(cell20); social_benefits.addCell(cell21); social_benefits.addCell(cell22); social_benefits.addCell(cell23); social_benefits.addCell(cell24); social_benefits.addCell(cell25); social_benefits.addCell(cell26); document.add(social_benefits); PdfPTable fiscal_contributions = new PdfPTable(2); PdfPCell title4 = new PdfPCell(new Paragraph("Aportes Parafiscales", fuente)); title4.setColspan(2); fiscal_contributions.addCell(title4); PdfPCell cell27 = new PdfPCell(new Paragraph("Cajas de compensacion familiar (4%) : ")); PdfPCell cell28 = new PdfPCell( new Paragraph(String.valueOf((contractObject.getSalary() + extra_hours + commissions) * 0.04))); PdfPCell cell29 = new PdfPCell(new Paragraph("I.CB.F (3%) : ")); PdfPCell cell30 = new PdfPCell( new Paragraph(String.valueOf((contractObject.getSalary() + extra_hours + commissions) * 0.03))); PdfPCell cell31 = new PdfPCell(new Paragraph("Sena (2%) : ")); PdfPCell cell32 = new PdfPCell( new Paragraph(String.valueOf((contractObject.getSalary() + extra_hours + commissions) * 0.02))); fiscal_contributions.setWidthPercentage(100F); fiscal_contributions.setHorizontalAlignment(Element.ALIGN_CENTER); fiscal_contributions.addCell(cell27); fiscal_contributions.addCell(cell28); fiscal_contributions.addCell(cell29); fiscal_contributions.addCell(cell30); fiscal_contributions.addCell(cell31); fiscal_contributions.addCell(cell32); document.add(fiscal_contributions); PdfPTable totalValue = new PdfPTable(2); PdfPCell title5 = new PdfPCell(new Paragraph("Neto a pagar al empleado", fuente)); title5.setColspan(2); totalValue.addCell(title5); PdfPCell cell33 = new PdfPCell(new Paragraph(" Total devengado - salud - pension")); cell33.setColspan(2); PdfPCell cell34 = new PdfPCell(new Paragraph( " $ " + String.valueOf(totalAccrued - contractObject.getSalary() * 0.08), fuente)); cell34.setColspan(2); totalValue.setWidthPercentage(100F); totalValue.setHorizontalAlignment(Element.ALIGN_CENTER); totalValue.addCell(cell33); totalValue.addCell(cell34); document.add(totalValue); document.add(endtext); } else if (cert.getType().toLowerCase().equals("salud")) { typeCertificate = "Salud"; document.add(header); Paragraph body = new Paragraph(user.getName().toUpperCase() + " " + user.getLastname().toUpperCase() + " con cedula de ciudadania No." + user.getIdentifyCard() + ", esta afiliado desde " + contractObject.getStartHealthDate() + " a la empresa de salud " + contractObject.getHealthEnterprise() + "."); body.setAlignment(Element.ALIGN_JUSTIFIED_ALL); document.add(body); document.add(endtext); } else if (cert.getType().toLowerCase().equals("pensin")) { typeCertificate = "Pension"; document.add(header); Paragraph body = new Paragraph(user.getName().toUpperCase() + " " + user.getLastname().toUpperCase() + " con cedula de ciudadania No." + user.getIdentifyCard() + ", esta afiliado a la empresa de pension " + contractObject.getPensionEnterprise() + ".La fecha de inicio de pension es " + contractObject.getStartPensionDate() + "."); body.setAlignment(Element.ALIGN_JUSTIFIED_ALL); document.add(body); document.add(endtext); } document.close(); response.setHeader("Expires", "0"); response.setHeader("Cache-Control", "must-revalidate, post-check=0, pre-check=0"); response.setHeader("Pragma", "public"); response.setContentType("application/octet-strem"); File f = new File("Certificado" + typeCertificate + ".pdf"); response.setHeader("Content-Disposition", "attachment;filename=" + f.getName()); response.setContentLength(baos.size()); System.out.println("Hasta aca crea el pdf bien"); OutputStream os = response.getOutputStream(); System.out.println("Ac'a ya deberia haber descargado"); baos.writeTo(os); os.flush(); os.close(); }
From source file:bussiness.ReportHandler.java
private void BuildHeaderPrescription(Document veterinaryPrescription, String clientName, String petName) throws DocumentException, IOException { BaseFont baseFont = BaseFont.createFont("Cookie.ttf", BaseFont.WINANSI, BaseFont.EMBEDDED); Font font = new Font(baseFont); font.setStyle(Font.BOLDITALIC); font.setSize(35);//from ww w . j a v a2 s . c om Doctor doctor = SessionManager.getLoggedDoctor(); Paragraph p1 = new Paragraph("Dr. " + doctor.getName(), font); p1.setAlignment(Element.ALIGN_CENTER); veterinaryPrescription.add(p1); // veterinaryPrescription.add(new Chunk("\n")); Font font2 = new Font(); font2.setSize(20); Paragraph p2 = new Paragraph("CEDULA PROFESIONAL " + doctor.getIdentityCard(), font2); p2.setAlignment(Element.ALIGN_CENTER); veterinaryPrescription.add(p2); veterinaryPrescription.add(new Chunk("\n")); Paragraph p3 = new Paragraph("Nombre del cliente: " + clientName, font2); veterinaryPrescription.add(p3); Paragraph p4 = new Paragraph("Nombre de la mascota: " + petName, font2); veterinaryPrescription.add(p4); }
From source file:bussiness.ReportHandler.java
private void BuildFooterPrescription(Document veterinaryPrescription, String comments) throws DocumentException { Font font2 = new Font(); font2.setSize(20);/*from w w w.ja va 2 s.c o m*/ Paragraph p = new Paragraph(comments, font2); p.setAlignment(Element.ALIGN_JUSTIFIED); veterinaryPrescription.add(p); }
From source file:bussiness.ReportHandler.java
private void BuildFooterSaleReport(Document documento) throws DocumentException { documento.add(new Chunk("\n")); documento.add(new Chunk("\n")); documento.add(new Chunk("\n")); Paragraph p2 = new Paragraph("GRACIAS POR SU PREFERENCIA"); p2.setAlignment(Element.ALIGN_CENTER); Paragraph p3 = new Paragraph("VUELVA PRONTO"); p3.setAlignment(Element.ALIGN_CENTER); documento.add(p2);//w ww . ja v a 2s .c o m documento.add(p3); }
From source file:by.bsuir.group172301.matskevich.tour.util.PDFCreator.java
public static void writeChartToPDF(JFreeChart chart, int width, int height, String fileName, int col1, int col2, double perc) { PdfWriter writer = null;/*from www. j a va 2s . co m*/ Document document = new Document(); try { writer = PdfWriter.getInstance(document, new FileOutputStream(fileName)); document.open(); Paragraph paragraph = new Paragraph(); // We add one empty line paragraph = new Paragraph("Results:"); paragraph.setAlignment(Element.ALIGN_CENTER); document.add(paragraph); paragraph = new Paragraph("Test before: " + col1); document.add(paragraph); paragraph = new Paragraph("Test after: " + col2); document.add(paragraph); paragraph = new Paragraph("Percentage: " + perc); document.add(paragraph); PdfContentByte contentByte = writer.getDirectContent(); PdfTemplate template = contentByte.createTemplate(width, height); Graphics2D graphics2d = template.createGraphics(width, height, new DefaultFontMapper()); Rectangle2D rectangle2d = new Rectangle2D.Double(0, 0, width, height); chart.draw(graphics2d, rectangle2d); graphics2d.dispose(); contentByte.addTemplate(template, 150, 250); } catch (Exception e) { e.printStackTrace(); } document.close(); }
From source file:cimav.restrh.services.JustificacionREST.java
@GET @Path("pdficar") @Produces("application/pdf") public Response pdficar(@DefaultValue("0") @QueryParam("id") Integer id_param) { Justificacion justi = (Justificacion) JustificacionREST.this.find(id_param); String diasCorresponde = "corresponde a " + justi.getNumDiasPlazo() + " das"; if (justi.getNumDiasPlazo() == 1) { diasCorresponde = "corresponde a un da"; }/*w w w . j a v a2s . com*/ // <editor-fold defaultstate="collapsed" desc="Constantes de texto"> HashMap<String, String> mapa = new HashMap(); mapa.put("texto1_I", "No existan bienes o servicios alternativos o sustitutos tcnicamente razonables, o bien, que en el " + "mercado slo existe un posible oferente, o se trate de una persona que posee la titularidad o el " + "licenciamiento exclusivo de patentes, derechos de autor, u otros derechos exclusivos, o por " + "tratarse de obras de arte."); mapa.put("texto1_III", "Existan circunstancias que puedan provocar prdidas o costos adicionales importantes, " + "cuantificados y justificados."); mapa.put("texto1_XIV", "Se trate de los servicios prestados por una persona fsica a que se refiere la fraccin " + "VII del artculo 3 de esta Ley, siempre que stos sean realizados por ella misma sin " + "requerir de la utilizacin de ms de un especialista o tcnico."); mapa.put("texto1_XV", "Se trate de servicios de mantenimiento de bienes en los que no sea posible precisar " + "su alcance, establecer las cantidades de trabajo o determinar las especificaciones " + "correspondientes."); mapa.put("texto1_XVII", "Se trate de equipos especializados, sustancias y materiales de origen qumico, fsico " + "qumico o bioqumico para ser utilizadas en actividades experimentales requeridas " + "en proyectos de investigacin cientfica y desarrollo tecnolgico, siempre que dichos " + "proyectos se encuentren autorizados por quien determine el titular de la dependencia " + "o el rgano de gobierno de la entidad."); mapa.put("plazo_0", "El plazo en que se requiere el suministro de los " + justi.getBienServicioTxt() + ", corresponde al periodo del " + justi.getFechaInicio().getDayOfMonth() + " de " + justi.getFechaInicio().getMonth().getDisplayName(TextStyle.FULL, new Locale("es", "ES")) + " de " + justi.getFechaInicio().getYear() + " y hasta el " + justi.getFechaTermino().getDayOfMonth() + " de " + justi.getFechaTermino().getMonth().getDisplayName(TextStyle.FULL, new Locale("es", "ES")) + " de " + justi.getFechaTermino().getYear() + ". Las condiciones en las que se " + "entregarn los " + justi.getBienServicioTxt() + " son las siguientes:\n\n " + justi.getCondicionesPago()); mapa.put("plazo_1", "La fecha en que se requiere el suministro de los " + justi.getBienServicioTxt() + ", corresponde al da " + justi.getFechaTermino().getDayOfMonth() + " de " + justi.getFechaTermino().getMonth().getDisplayName(TextStyle.FULL, new Locale("es", "ES")) + " de " + justi.getFechaTermino().getYear() + ". Las condiciones en las que se " + "entregarn los " + justi.getBienServicioTxt() + " son las siguientes:\n\n " + justi.getCondicionesPago()); mapa.put("plazo_2", "El plazo en que se requiere el suministro de los " + justi.getBienServicioTxt() + ", " + diasCorresponde + " despus de la elaboracin de este documento." + " Las condiciones en las que se " + "entregarn los " + justi.getBienServicioTxt() + " son las siguientes:\n\n " + justi.getCondicionesPago()); mapa.put("nota_1", "Asimismo se hace constar mediante el sello y firma del responsable del rea de " + "Almacn, la No Existencia de Bienes o Nivel de Inventario que demuestra que se " + "cumpli con lo establecido en el artculo 27 del RLAASP."); mapa.put("transparencia_unico", "Para la integracin del procedimiento de contratacin por adjudicacin directa, los servidores " + "pblicos de las reas requirentes han tenido acceso de manera oportuna, clara y completa de " + "las caractersticas requeridas de los " + justi.getBienServicioTxt() + " con el fin de demostrar que es " + "el nico proveedor que proporciona los " + justi.getBienServicioTxt() + " que se pretenden contratar, en " + "el entendido que para garantizar la transparencia del procedimiento de contratacin, la " + "informacin respectiva ser incorporada al Sistema de Compras Gubernamentales " + "(CompraNet), en los trminos de las disposiciones legales aplicables, " + "Lo anterior de acuerdo con lo establecido en el numeral 4.2.4 (ADJUDICACIN DIRECTA) y " + "numeral 4.2.4.1.1 (Verificar Acreditamiento de Excepcin) del Acuerdo por el que se modifica el " + "Manual Administrativo de Aplicacin General en Materia de Adquisiciones, Arrendamientos y " + "Servicios del Sector Pblico, publicado en el Diario Oficial de la Federacin el 21 de noviembre " + "de 2012."); mapa.put("transparencia_no_unico", "Todas las personas que han presentado cotizacin para la integracin del procedimiento de " + "contratacin por adjudicacin directa, han tenido acceso de manera oportuna, clara y completa " + "de las caractersticas requeridas de los " + justi.getBienServicioTxt() + ", en el entendido que para " + "garantizar la transparencia del procedimiento de contratacin, la informacin respectiva ser " + "incorporada al Sistema de Compras Gubernamentales (CompraNet), en los trminos de las " + "disposiciones legales aplicables. " + "Lo anterior de acuerdo con lo establecido en el numeral 4.2.4 (ADJUDICACIN DIRECTA) y " + "numeral 4.2.4.1.1 (Verificar Acreditamiento de Excepcin) del Acuerdo por el que se modifica el " + "Manual Administrativo de Aplicacin General en Materia de Adquisiciones, Arrendamientos y " + "Servicios del Sector Pblico, publicado en el Diario Oficial de la Federacin el 21 de noviembre " + "de 2012."); // </editor-fold> StreamingOutput streamingOutput = new StreamingOutput() { public void write(OutputStream outputStream) throws IOException, WebApplicationException { try { String masIva = ""; if (justi.getIva() != 0) { masIva = " ms IVA"; } String datosBanco = ""; if (justi.getDatosBanco() != null) { datosBanco = ", datos bancarios: " + justi.getDatosBanco(); } //Create Document instance. Document document = new Document(); PdfWriter.getInstance(document, outputStream); document.addAuthor("Generador adquisiciones | " + justi.getEmpleado().getCuentaCimav()); String fileName1 = (justi.getRequisicion() + "-" + justi.getEmpleado().getCuentaCimav()) .replace(" ", "").replace(",", ""); document.addTitle("Justificacin: " + fileName1); document.addSubject("Justificacin de Requisicin"); document.open(); Paragraph parrafo = new Paragraph("Centro de Investigacin en Materiales Avanzados S. C.", new Font(Font.FontFamily.TIMES_ROMAN, 17, Font.BOLD)); parrafo.setAlignment(Element.ALIGN_CENTER); document.add(parrafo); parrafo = new Paragraph( "JUSTIFICACIN PARA ACREDITAR Y FUNDAR PROCEDIMIENTOS DE " + "CONTRATACIN POR ADJUDICACIN DIRECTA, COMO EXCEPCIN AL DE " + "LICITACIN PBLICA EN EL SUPUESTO DEL ARTICULO 41 FRACCION " + justi.getRomano() + " DE LA " + "LEY DE ADQUISICIONES, ARRENDAMIENTOS Y SERVICIOS DEL SECTOR " + "PBLICO.", new Font(Font.FontFamily.TIMES_ROMAN, 12, Font.BOLD)); parrafo.setSpacingAfter(20); parrafo.setIndentationLeft(30); parrafo.setLeading(15); parrafo.setSpacingBefore(20); parrafo.setAlignment(Element.ALIGN_JUSTIFIED); document.add(parrafo); parrafo = new Paragraph("COMIT DE ADQUISICIONES, ARRENDAMIENTOS Y SERVICIOS"); parrafo.setAlignment(Element.ALIGN_CENTER); parrafo.setSpacingBefore(20); parrafo.setIndentationLeft(80); parrafo.setIndentationRight(80); document.add(parrafo); parrafo = new Paragraph("P R E S E N T E:", new Font(Font.FontFamily.TIMES_ROMAN, 12, Font.BOLD)); parrafo.setIndentationLeft(30); parrafo.setSpacingBefore(20); document.add(parrafo); parrafo = new Paragraph("Oficio nmero: ", new Font(Font.FontFamily.TIMES_ROMAN, 12, Font.NORMAL)); parrafo.setIndentationLeft(300); parrafo.setAlignment(Element.ALIGN_JUSTIFIED_ALL); parrafo.setLeading(15); parrafo.setSpacingBefore(20); Chunk frase = new Chunk(justi.getRequisicion() + "\n", new Font(Font.FontFamily.TIMES_ROMAN, 12, Font.BOLD)); parrafo.add(frase); frase = new Chunk( "Asunto: Se emite justificacin por la que se " + "acredita y funda la contratacin por adjudicacin directa que se indica.", new Font(Font.FontFamily.TIMES_ROMAN, 12, Font.NORMAL)); parrafo.add(frase); document.add(parrafo); parrafo = new Paragraph("", new Font(Font.FontFamily.TIMES_ROMAN, 12, Font.NORMAL)); parrafo.setSpacingAfter(20); parrafo.setIndentationLeft(30); parrafo.setLeading(15); parrafo.setSpacingBefore(20); parrafo.setAlignment(Element.ALIGN_JUSTIFIED); frase = new Chunk( "En cumplimiento a lo establecido en el segundo prrafo del artculo 40 de la Ley de " + "Adquisiciones, Arrendamientos y Servicios del Sector Pblico, as como en el artculo 71 del " + "Reglamento de la Ley de Adquisiciones, Arrendamientos y Servicios del Sector Pblico, y con el " + "carcter de Titular del ?rea Requirente, por este conducto hago constar el acreditamiento del o " + "de los criterios, razones, fundamentos y motivos para no llevar a cabo el procedimiento de " + "licitacin pblica y celebrar la contratacin a travs del procedimiento de adjudicacin directa en " + "los trminos establecidos en el artculo 41 Fraccin " + justi.getRomano() + " de la Ley de Adquisiciones, " + "Arrendamientos y Servicios del Sector Pblico", new Font(Font.FontFamily.TIMES_ROMAN, 12, Font.NORMAL)); parrafo.setSpacingAfter(20); parrafo.setIndentationLeft(30); parrafo.setLeading(15); parrafo.setSpacingBefore(20); parrafo.setAlignment(Element.ALIGN_JUSTIFIED); parrafo.add(frase); /* frase = new Chunk("Las dependencias y " + "entidades, bajo su responsabilidad, podrn contratar adquisiciones, arrendamientos y " + "servicios, sin sujetarse al procedimiento de licitacin pblica, a travs de los " + "procedimientos de invitacin a cuando menos tres personas o de adjudicacin directa, " + "cuando:\n" + mapa.get("texto1_" + justi.getRomano()), new Font(Font.FontFamily.TIMES_ROMAN, 12, Font.BOLD)); parrafo.setSpacingAfter(20); parrafo.setIndentationLeft(30); parrafo.setLeading(15); parrafo.setSpacingBefore(20); parrafo.setAlignment(Element.ALIGN_JUSTIFIED); parrafo.add(frase); */ document.add(parrafo); parrafo = new Paragraph("Para tal efecto presento la siguiente informacin:", new Font(Font.FontFamily.TIMES_ROMAN, 12, Font.NORMAL)); parrafo.setSpacingAfter(20); parrafo.setIndentationLeft(60); parrafo.setLeading(15); parrafo.setSpacingBefore(20); parrafo.setAlignment(Element.ALIGN_JUSTIFIED); document.add(parrafo); parrafo = new Paragraph("I.- DESCRIPCIN DE LOS " + justi.getBienServicioTxt().toUpperCase(), new Font(Font.FontFamily.TIMES_ROMAN, 12, Font.BOLD)); parrafo.setAlignment(Element.ALIGN_CENTER); parrafo.setSpacingAfter(10); document.add(parrafo); parrafo = new Paragraph( "El/Los " + justi.getBienServicioTxt() + " que se pretende contratar, son los siguientes:", new Font(Font.FontFamily.TIMES_ROMAN, 12, Font.NORMAL)); parrafo.setAlignment(Element.ALIGN_JUSTIFIED); parrafo.setIndentationLeft(30); document.add(parrafo); parrafo = new Paragraph(justi.getDescripcion(), new Font(Font.FontFamily.TIMES_ROMAN, 12, Font.NORMAL)); parrafo.setAlignment(Element.ALIGN_JUSTIFIED); parrafo.setSpacingBefore(20); parrafo.setLeading(15); parrafo.setIndentationLeft(30); document.add(parrafo); parrafo = new Paragraph( "II.- PLAZOS Y CONDICIONES DEL SUMINISTRO DE LOS " + justi.getBienServicioTxt().toUpperCase(), new Font(Font.FontFamily.TIMES_ROMAN, 12, Font.BOLD)); parrafo.setAlignment(Element.ALIGN_CENTER); parrafo.setSpacingBefore(20); document.add(parrafo); parrafo = new Paragraph(mapa.get("plazo_" + justi.getPlazo()), new Font(Font.FontFamily.TIMES_ROMAN, 12, Font.NORMAL)); parrafo.setAlignment(Element.ALIGN_JUSTIFIED); parrafo.setSpacingBefore(20); parrafo.setLeading(15); parrafo.setIndentationLeft(30); document.add(parrafo); parrafo = new Paragraph("III.- RESULTADO DE LA INVESTIGACIN DE MERCADO", new Font(Font.FontFamily.TIMES_ROMAN, 12, Font.BOLD)); parrafo.setAlignment(Element.ALIGN_CENTER); parrafo.setSpacingBefore(20); document.add(parrafo); parrafo = new Paragraph( "La Investigacin de Mercado fue realizada en los trminos de los artculos 28, 29 y 30 del " + "Reglamento de la Ley de Adquisiciones, Arrendamientos y Servicios del Sector Pblico, en " + "forma conjunta por el ?rea Requirente y el ?rea Contratante, en la cual se verific previo al " + "inicio del procedimiento de contratacin, la existencia de oferta, en la cantidad, calidad y " + "oportunidad requeridas; la existencia de proveedores a nivel nacional o internacional con " + "posibilidad de cumplir con las necesidades de la contratacin, conocer el precio prevaleciente al " + "momento de llevar a cabo la Investigacin de mercado as como en la informacin disponible " + "en el Sistema informtico denominado COMPRANET:", new Font(Font.FontFamily.TIMES_ROMAN, 12, Font.NORMAL)); parrafo.setAlignment(Element.ALIGN_JUSTIFIED); parrafo.setSpacingBefore(20); parrafo.setSpacingAfter(20); parrafo.setLeading(15); parrafo.setIndentationLeft(30); document.add(parrafo); PdfPTable table = new PdfPTable(2); // 3 columns. table.setWidths(new int[] { 100, 50 }); if (justi.getEsUnico()) { PdfPCell cell1 = new PdfPCell( new Paragraph("PROVEEDOR", new Font(Font.FontFamily.TIMES_ROMAN, 10, Font.BOLD))); PdfPCell cell2 = new PdfPCell(new Paragraph("IMPORTE SIN IVA", new Font(Font.FontFamily.TIMES_ROMAN, 10, Font.BOLD))); cell1.setBorder(PdfPCell.NO_BORDER); cell2.setBorder(PdfPCell.NO_BORDER); cell2.setHorizontalAlignment(Element.ALIGN_RIGHT); table.addCell(cell1); table.addCell(cell2); cell1 = new PdfPCell(new Paragraph(justi.getProveedorUno().toUpperCase(), new Font(Font.FontFamily.TIMES_ROMAN, 10, Font.NORMAL))); cell2 = new PdfPCell(new Paragraph(montoFormatComas(justi.getMontoUno(), justi), new Font(Font.FontFamily.TIMES_ROMAN, 10, Font.NORMAL))); cell1.setBorder(PdfPCell.NO_BORDER); cell2.setBorder(PdfPCell.NO_BORDER); cell2.setHorizontalAlignment(Element.ALIGN_RIGHT); table.addCell(cell1); table.addCell(cell2); document.add(table); /* Si es nico, no lleva motivo de seleccin parrafo = new Paragraph(justi.getMotivoSeleccion().toUpperCase(), new Font(Font.FontFamily.TIMES_ROMAN, 12, Font.NORMAL)); parrafo.setAlignment(Element.ALIGN_JUSTIFIED); parrafo.setSpacingBefore(20); parrafo.setLeading(15); parrafo.setIndentationLeft(30); document.add(parrafo); */ parrafo = new Paragraph( "Concluyendo que en conjunto es la nica oferta en cuanto a obtener las mejores condiciones, calidad, " + "precio, oportunidad y financiamiento, por ser el nico proveedor que proporcione los " + justi.getBienServicioTxt() + " que se pretende contratar la de " + justi.getProveedorUno().toUpperCase() + ". La referida " + "Investigacin de Mercado se acompaa a la presente justificacin para determinar que el " + "procedimiento de contratacin por adjudicacin directa es el idneo.", new Font(Font.FontFamily.TIMES_ROMAN, 12, Font.NORMAL)); parrafo.setAlignment(Element.ALIGN_JUSTIFIED); parrafo.setSpacingBefore(20); parrafo.setLeading(15); parrafo.setIndentationLeft(30); document.add(parrafo); } else { PdfPCell cell1 = new PdfPCell( new Paragraph("PROVEEDOR", new Font(Font.FontFamily.TIMES_ROMAN, 10, Font.BOLD))); PdfPCell cell2 = new PdfPCell(new Paragraph("IMPORTE SIN IVA", new Font(Font.FontFamily.TIMES_ROMAN, 10, Font.BOLD))); cell1.setBorder(PdfPCell.NO_BORDER); cell2.setBorder(PdfPCell.NO_BORDER); cell2.setHorizontalAlignment(Element.ALIGN_RIGHT); table.addCell(cell1); table.addCell(cell2); cell1 = new PdfPCell(new Paragraph(justi.getProveedorUno().toUpperCase(), new Font(Font.FontFamily.TIMES_ROMAN, 10, Font.BOLD))); cell2 = new PdfPCell(new Paragraph(montoFormatComas(justi.getMontoUno(), justi), new Font(Font.FontFamily.TIMES_ROMAN, 10, Font.BOLD))); cell1.setBorder(PdfPCell.NO_BORDER); cell2.setBorder(PdfPCell.NO_BORDER); cell2.setHorizontalAlignment(Element.ALIGN_RIGHT); table.addCell(cell1); table.addCell(cell2); cell1 = new PdfPCell(new Paragraph(justi.getProveedorDos().toUpperCase(), new Font(Font.FontFamily.TIMES_ROMAN, 10, Font.NORMAL))); cell2 = new PdfPCell(new Paragraph(montoFormatComas(justi.getMontoDos(), justi), new Font(Font.FontFamily.TIMES_ROMAN, 10, Font.NORMAL))); cell1.setBorder(PdfPCell.NO_BORDER); cell2.setBorder(PdfPCell.NO_BORDER); cell2.setHorizontalAlignment(Element.ALIGN_RIGHT); table.addCell(cell1); table.addCell(cell2); if (justi.getProveedorTres() != null && justi.getProveedorTres().trim().length() > 0) { cell1 = new PdfPCell(new Paragraph(justi.getProveedorTres().toUpperCase(), new Font(Font.FontFamily.TIMES_ROMAN, 10, Font.NORMAL))); cell2 = new PdfPCell(new Paragraph(montoFormatComas(justi.getMontoTres(), justi), new Font(Font.FontFamily.TIMES_ROMAN, 10, Font.NORMAL))); cell2.setHorizontalAlignment(Element.ALIGN_RIGHT); cell1.setBorder(PdfPCell.NO_BORDER); cell2.setBorder(PdfPCell.NO_BORDER); table.addCell(cell1); table.addCell(cell2); } document.add(table); parrafo = new Paragraph("Motivo de la seleccin: " + justi.getMotivoSeleccion(), new Font(Font.FontFamily.TIMES_ROMAN, 12, Font.NORMAL)); parrafo.setAlignment(Element.ALIGN_JUSTIFIED); parrafo.setIndentationLeft(30); document.add(parrafo); parrafo = new Paragraph( "Siendo la oferta que en conjunto presenta las mejores condiciones en cuanto a calidad, precio, oportunidad " + "y financiamiento, la de " + justi.getProveedorUno().toUpperCase() + ". " + "La referida Investigacin de Mercado se acompaa a la presente justificacin para determinar " + "que el procedimiento de contratacin por adjudicacin directa es el idneo.", new Font(Font.FontFamily.TIMES_ROMAN, 12, Font.NORMAL)); parrafo.setSpacingBefore(20); parrafo.setLeading(15); parrafo.setAlignment(Element.ALIGN_JUSTIFIED); parrafo.setIndentationLeft(30); document.add(parrafo); } parrafo = new Paragraph("IV.- PROCEDIMIENTO DE CONTRATACIN PROPUESTO", new Font(Font.FontFamily.TIMES_ROMAN, 12, Font.BOLD)); parrafo.setAlignment(Element.ALIGN_CENTER); parrafo.setSpacingBefore(20); document.add(parrafo); parrafo = new Paragraph("", new Font(Font.FontFamily.TIMES_ROMAN, 12, Font.NORMAL)); parrafo.setSpacingAfter(20); parrafo.setIndentationLeft(30); parrafo.setLeading(15); parrafo.setSpacingBefore(20); parrafo.setAlignment(Element.ALIGN_JUSTIFIED); frase = new Chunk( "El procedimiento de contratacin propuesto es el de adjudicacin directa, en virtud de que en el " + "presente caso la adjudicacin se llevara a cabo conforme la fraccin " + justi.getRomano() + " del artculo 41 el cual " + "menciona que este tipo de adjudicacin se puede llevar a cabo siempre y cuando: \n", new Font(Font.FontFamily.TIMES_ROMAN, 12, Font.NORMAL)); parrafo.setSpacingAfter(20); parrafo.setIndentationLeft(30); parrafo.setLeading(15); parrafo.setSpacingBefore(20); parrafo.setAlignment(Element.ALIGN_JUSTIFIED); parrafo.add(frase); frase = new Chunk(mapa.get("texto1_" + justi.getRomano()), new Font(Font.FontFamily.TIMES_ROMAN, 12, Font.BOLD)); parrafo.setSpacingAfter(20); parrafo.setIndentationLeft(30); parrafo.setLeading(15); parrafo.setSpacingBefore(20); parrafo.setAlignment(Element.ALIGN_JUSTIFIED); parrafo.add(frase); frase = new Chunk(" Actualizndose el supuesto de excepcin a la licitacin pblica " + "establecido en la fraccin " + justi.getRomano() + " del artculo 41 de la Ley de Adquisiciones, Arrendamientos y " + "Servicios del Sector Pblico, en relacin con lo establecido en el artculo 72 de su Reglamento.", new Font(Font.FontFamily.TIMES_ROMAN, 12, Font.NORMAL)); parrafo.setSpacingAfter(20); parrafo.setIndentationLeft(30); parrafo.setLeading(15); parrafo.setSpacingBefore(20); parrafo.setAlignment(Element.ALIGN_JUSTIFIED); parrafo.add(frase); document.add(parrafo); parrafo = new Paragraph("IV.1. MOTIVACIN Y FUNDAMENTACIN LEGAL:", new Font(Font.FontFamily.TIMES_ROMAN, 12, Font.BOLD)); parrafo.setSpacingBefore(20); parrafo.setIndentationLeft(30); document.add(parrafo); parrafo = new Paragraph("", new Font(Font.FontFamily.TIMES_ROMAN, 12, Font.NORMAL)); parrafo.setSpacingAfter(20); parrafo.setIndentationLeft(60); parrafo.setLeading(15); parrafo.setSpacingBefore(20); parrafo.setAlignment(Element.ALIGN_JUSTIFIED); frase = new Chunk("A)", new Font(Font.FontFamily.TIMES_ROMAN, 12, Font.BOLD)); parrafo.add(frase); frase = new Chunk(" MOTIVOS: ", new Font(Font.FontFamily.TIMES_ROMAN, 12, Font.BOLD)); parrafo.add(frase); frase = new Chunk("La contratacin de los " + justi.getBienServicioTxt() + " objeto de la presente justificacin " + "es necesaria para satisfacer los requerimientos del proyecto identificado por: " + justi.getProyecto() + ". " + justi.getRazonCompra() + "." + " \nPor lo anterior, la " + "contratacin propuesta se adeca al supuesto de excepcin establecido en la Ley " + "de Adquisiciones, Arrendamientos y Servicios del Sector Pblico en su artculo 41, " + "fraccin " + justi.getRomano() + "; adems de que se renen los requisitos previstos en el artculo 72 del " + "Reglamento de la Ley de Adquisiciones, Arrendamientos y Servicios del Sector " + "Pblico, tal y como se desprende de la informacin presentada en esta justificacin, " + "as como de la Investigacin de Mercado; " + "por lo que resulta procedente la contratacin bajo el procedimiento de adjudicacin " + "directa previsto en el artculo 26, fraccin III de la Ley antes mencionada.", new Font(Font.FontFamily.TIMES_ROMAN, 12, Font.NORMAL)); parrafo.add(frase); document.add(parrafo); parrafo = new Paragraph("", new Font(Font.FontFamily.TIMES_ROMAN, 12, Font.NORMAL)); parrafo.setSpacingAfter(20); parrafo.setIndentationLeft(60); parrafo.setLeading(15); parrafo.setSpacingBefore(20); parrafo.setAlignment(Element.ALIGN_JUSTIFIED); frase = new Chunk("B)", new Font(Font.FontFamily.TIMES_ROMAN, 12, Font.BOLD)); parrafo.add(frase); frase = new Chunk(" FUNDAMENTOS: ", new Font(Font.FontFamily.TIMES_ROMAN, 12, Font.BOLD)); parrafo.add(frase); frase = new Chunk("La contratacin se encuentra debidamente fundada en el artculo " + "134 de la Constitucin Poltica de los Estados Unidos Mexicanos; en los artculos 26 " + "fraccin III, 40 y 41 fraccin " + justi.getRomano() + " de la Ley de Adquisiciones, Arrendamientos y " + "Servicios del Sector Pblico; as como en los artculos 71 y 72 del Reglamento de la " + "Ley de Adquisiciones, Arrendamientos y Servicios del Sector Pblico.", new Font(Font.FontFamily.TIMES_ROMAN, 12, Font.NORMAL)); parrafo.add(frase); document.add(parrafo); parrafo = new Paragraph("V.- MONTO ESTIMADO Y FORMA DE PAGO PROPUESTO:", new Font(Font.FontFamily.TIMES_ROMAN, 12, Font.BOLD)); parrafo.setAlignment(Element.ALIGN_CENTER); parrafo.setSpacingBefore(20); document.add(parrafo); parrafo = new Paragraph("V.1. MONTO ESTIMADO:", new Font(Font.FontFamily.TIMES_ROMAN, 12, Font.BOLD)); parrafo.setSpacingBefore(20); parrafo.setIndentationLeft(30); document.add(parrafo); DecimalFormat decimalFormat = new DecimalFormat("0.00"); parrafo = new Paragraph("El monto estimado de la contratacin es la cantidad de " + montoFormatComas(justi.getSubTotal(), justi) + " (" + new Numero_a_Letra().Convertir(decimalFormat.format(justi.getSubTotal()), true) + " " + /*codigoDivisa(justi)*/ justi.getMoneda().getCode() + ")" + masIva + ", mismo que " + "result el ms conveniente de acuerdo con la Investigacin de Mercado" + ", mediante la cual se verific previo al inicio del procedimiento " + "de contratacin, la existencia de oferta de los " + justi.getBienServicioTxt() + " en la cantidad, " + "calidad y oportunidad requeridos en los trminos del artculo 28 del Reglamento de la Ley de " + "Adquisiciones, Arrendamientos y Servicios del Sector Pblico.", new Font(Font.FontFamily.TIMES_ROMAN, 12, Font.NORMAL)); parrafo.setSpacingAfter(20); parrafo.setIndentationLeft(30); parrafo.setLeading(15); parrafo.setSpacingBefore(20); parrafo.setAlignment(Element.ALIGN_JUSTIFIED); document.add(parrafo); table = new PdfPTable(3); // 3 columns. table.setWidths(new int[] { 30, 10, 10 }); PdfPCell cell1 = new PdfPCell( new Paragraph("Subtotal:", new Font(Font.FontFamily.TIMES_ROMAN, 10, Font.NORMAL))); PdfPCell cell2 = new PdfPCell(new Paragraph(montoFormatComas(justi.getSubTotal(), justi), new Font(Font.FontFamily.TIMES_ROMAN, 10, Font.NORMAL))); PdfPCell cell0 = new PdfPCell( new Paragraph("", new Font(Font.FontFamily.TIMES_ROMAN, 10, Font.NORMAL))); cell0.setBorder(PdfPCell.NO_BORDER); table.addCell(cell0); cell1.setBorder(PdfPCell.NO_BORDER); cell1.setHorizontalAlignment(Element.ALIGN_RIGHT); cell2.setBorder(PdfPCell.NO_BORDER); cell2.setHorizontalAlignment(Element.ALIGN_RIGHT); table.addCell(cell1); table.addCell(cell2); cell1 = new PdfPCell( new Paragraph("Iva:", new Font(Font.FontFamily.TIMES_ROMAN, 10, Font.NORMAL))); cell2 = new PdfPCell(new Paragraph(montoFormatComas(justi.getIva(), justi), new Font(Font.FontFamily.TIMES_ROMAN, 10, Font.NORMAL))); cell0 = new PdfPCell(new Paragraph("", new Font(Font.FontFamily.TIMES_ROMAN, 10, Font.NORMAL))); cell0.setBorder(PdfPCell.NO_BORDER); table.addCell(cell0); cell1.setBorder(PdfPCell.NO_BORDER); cell1.setHorizontalAlignment(Element.ALIGN_RIGHT); cell2.setBorder(PdfPCell.NO_BORDER); cell2.setHorizontalAlignment(Element.ALIGN_RIGHT); table.addCell(cell1); table.addCell(cell2); cell1 = new PdfPCell( new Paragraph("Total:", new Font(Font.FontFamily.TIMES_ROMAN, 10, Font.BOLD))); cell2 = new PdfPCell(new Paragraph(montoFormatComas(justi.getImporte(), justi), new Font(Font.FontFamily.TIMES_ROMAN, 10, Font.BOLD))); cell0 = new PdfPCell(new Paragraph("", new Font(Font.FontFamily.TIMES_ROMAN, 10, Font.NORMAL))); cell0.setBorder(PdfPCell.NO_BORDER); table.addCell(cell0); cell1.setBorder(PdfPCell.NO_BORDER); cell1.setHorizontalAlignment(Element.ALIGN_RIGHT); cell2.setBorder(PdfPCell.NO_BORDER); cell2.setHorizontalAlignment(Element.ALIGN_RIGHT); table.addCell(cell1); table.addCell(cell2); document.add(table); parrafo = new Paragraph("V.1. FORMA DE PAGO PROPUESTA:", new Font(Font.FontFamily.TIMES_ROMAN, 12, Font.BOLD)); parrafo.setSpacingBefore(20); parrafo.setIndentationLeft(30); document.add(parrafo); parrafo = new Paragraph("El monto total ser pagado en " + justi.getNumPagos() + " pago/s de " + montoFormatComas(justi.getSubTotal() / justi.getNumPagos(), justi) + " (" + new Numero_a_Letra().Convertir( decimalFormat.format(justi.getSubTotal() / (justi.getNumPagos())).toString(), true) + " " + /*codigoDivisa(justi)*/ justi.getMoneda().getCode() + ")" + masIva + ". Los pagos se realizarn previa verificacin de la entrega y calidad de los " + justi.getBienServicioTxt() + " as como previo envo en formatos .pdf y .xml del Comprobante Fiscal " + "Digital por Internet (CFDI) correspondiente que rena los requisitos fiscales respectivos. Los " + "pagos se efectuarn mediante " + justi.getFormaPago(), new Font(Font.FontFamily.TIMES_ROMAN, 12, Font.NORMAL)); parrafo.setSpacingAfter(20); parrafo.setIndentationLeft(30); parrafo.setLeading(15); parrafo.setSpacingBefore(20); parrafo.setAlignment(Element.ALIGN_JUSTIFIED); document.add(parrafo); parrafo = new Paragraph("VI.- PERSONA PROPUESTA PARA LA ADJUDICACIN DIRECTA:", new Font(Font.FontFamily.TIMES_ROMAN, 12, Font.BOLD)); parrafo.setAlignment(Element.ALIGN_CENTER); parrafo.setSpacingBefore(20); document.add(parrafo); parrafo = new Paragraph( "Por lo anteriormente expuesto y fundado, se propone a " + justi.getProveedorUno().toUpperCase() + ", con domicilio ubicado en " + justi.getDomicilio() + ", Registro Federal de Contribuyentes: " + justi.getRfc() + ", correo electrnico: " + justi.getCorreo() + " y nmero telefnico " + justi.getTelefono() + datosBanco, new Font(Font.FontFamily.TIMES_ROMAN, 12, Font.NORMAL)); parrafo.setSpacingAfter(20); parrafo.setIndentationLeft(30); parrafo.setLeading(15); parrafo.setSpacingBefore(20); parrafo.setAlignment(Element.ALIGN_JUSTIFIED); document.add(parrafo); parrafo = new Paragraph( "VII.- ACREDITAMIENTO DEL O LOS CRITERIOS EN LOS QUE SE FUNDA Y MOTIVA LA " + "SELECCIN DEL PROCEDIMIENTO DE EXCEPCIN A LA LICITACIN PBLICA:", new Font(Font.FontFamily.TIMES_ROMAN, 12, Font.BOLD)); parrafo.setAlignment(Element.ALIGN_CENTER); parrafo.setLeading(15); parrafo.setIndentationLeft(30); parrafo.setSpacingBefore(20); document.add(parrafo); parrafo = new Paragraph( "El procedimiento de contratacin por adjudicacin directa es el idneo, al actualizarse el " + "supuesto de excepcin al procedimiento de licitacin pblica previsto en el artculo 41, fraccin " + justi.getRomano() + " de la Ley de Adquisiciones, Arrendamientos y Servicios del Sector Pblico, aunado a que se " + "corrobor la capacidad y experiencia de la persona propuesta, quien por ser proveedor nico " + "present las mejores condiciones en cuanto a precio, calidad, financiamiento, oportunidad y " + "dems circunstancias pertinentes a efecto de asegurar a esta Entidad las mejores condiciones " + "para su contratacin, tal y como se acredita con la informacin presentada en esta justificacin, " + "as como con la Investigacin de Mercado.\n\n" + "El acreditamiento del o los criterios en los que se funda la excepcin de licitacin pblica, son " + "los siguientes:", new Font(Font.FontFamily.TIMES_ROMAN, 12, Font.NORMAL)); parrafo.setSpacingAfter(20); parrafo.setIndentationLeft(30); parrafo.setLeading(15); parrafo.setSpacingBefore(20); parrafo.setAlignment(Element.ALIGN_JUSTIFIED); document.add(parrafo); parrafo = new Paragraph("", new Font(Font.FontFamily.TIMES_ROMAN, 12, Font.NORMAL)); parrafo.setSpacingAfter(20); parrafo.setIndentationLeft(30); parrafo.setLeading(15); parrafo.setSpacingBefore(20); parrafo.setAlignment(Element.ALIGN_JUSTIFIED); frase = new Chunk(" - Economa\n", new Font(Font.FontFamily.TIMES_ROMAN, 12, Font.BOLD)); parrafo.add(frase); frase = new Chunk( "Con la Investigacin de Mercado se establecieron precios y dems condiciones de calidad, " + "financiamiento y oportunidad, respecto de los " + justi.getBienServicioTxt() + " requeridos, con lo cual " + "se asegura cumplir con los principios del artculo 134 de la Constitucin Poltica de los Estados " + "Unidos Mexicanos y de la Ley de Adquisiciones, Arrendamientos y Servicios del Sector Pblico, " + "en cuanto a precio, calidad, financiamiento, oportunidad y dems circunstancias pertinentes, por " + "lo que el procedimiento de adjudicacin directa permite en contraposicin al procedimiento de " + "licitacin pblica, obtener con mayor oportunidad los " + justi.getBienServicioTxt() + " requeridos al " + "menor costo econmico para el CIMAV, S.C. segn lo detallado en la investigacin de mercado " + "que se realiz, generando ahorro de recursos por estar proponiendo la adjudicacin al " + "proveedor nico cuya propuesta se considera aceptable en cuanto a su solvencia. " + "Lo anterior de acuerdo con lo establecido en el numeral 4.2.4 (ADJUDICACIN DIRECTA) y " + "numeral 4.2.4.1.1 (Verificar Acreditamiento de Excepcin) del Acuerdo por el que se modifica el " + "Manual Administrativo de Aplicacin General en Materia de Adquisiciones, Arrendamientos y " + "Servicios del Sector Pblico, publicado en el Diario Oficial de la Federacin el 21 de noviembre " + "de 2012.", new Font(Font.FontFamily.TIMES_ROMAN, 12, Font.NORMAL)); parrafo.add(frase); document.add(parrafo); parrafo = new Paragraph("", new Font(Font.FontFamily.TIMES_ROMAN, 12, Font.NORMAL)); parrafo.setSpacingAfter(20); parrafo.setIndentationLeft(30); parrafo.setLeading(15); parrafo.setSpacingBefore(20); parrafo.setAlignment(Element.ALIGN_JUSTIFIED); frase = new Chunk(" - Eficacia\n", new Font(Font.FontFamily.TIMES_ROMAN, 12, Font.BOLD)); parrafo.add(frase); frase = new Chunk( "Con el procedimiento de contratacin por adjudicacin directa, se lograr obtener con " + "oportunidad los " + justi.getBienServicioTxt() + " atendiendo a las caractersticas requeridas en " + "contraposicin con el procedimiento de licitacin pblica, dado que se reducen tiempos y se " + "generan economas; aunado a que la persona propuesta cuenta con experiencia y capacidad " + "para satisfacer las necesidades requeridas, adems de que es el nico que ofrece las mejores " + "condiciones disponibles en cuanto a precio, calidad y oportunidad, con lo que se lograra el " + "cumplimiento de los objetivos y resultados deseados en el tiempo requerido, situacin que se " + "puede demostrar en base a la investigacin de mercado. " + "Lo anterior de acuerdo con lo establecido en el numeral 4.2.4 (ADJUDICACIN DIRECTA) y " + "numeral 4.2.4.1.1 (Verificar Acreditamiento de Excepcin) del Acuerdo por el que se modifica el " + "Manual Administrativo de Aplicacin General en Materia de Adquisiciones, Arrendamientos y " + "Servicios del Sector Pblico, publicado en el Diario Oficial de la Federacin el 21 de noviembre " + "de 2012.", new Font(Font.FontFamily.TIMES_ROMAN, 12, Font.NORMAL)); parrafo.add(frase); document.add(parrafo); parrafo = new Paragraph("", new Font(Font.FontFamily.TIMES_ROMAN, 12, Font.NORMAL)); parrafo.setSpacingAfter(20); parrafo.setIndentationLeft(30); parrafo.setLeading(15); parrafo.setSpacingBefore(20); parrafo.setAlignment(Element.ALIGN_JUSTIFIED); frase = new Chunk(" - Eficiencia\n", new Font(Font.FontFamily.TIMES_ROMAN, 12, Font.BOLD)); parrafo.add(frase); frase = new Chunk( "Con el procedimiento de adjudicacin directa, a diferencia del procedimiento de licitacin " + "pblica, se logra el uso racional de recursos con los que cuenta la Entidad para realizar la " + "contratacin, obteniendo las mejores condiciones de precio, calidad y oportunidad, evitando la " + "prdida de tiempo y recursos al Estado, lo cual se demuestra con la investigacin de mercado " + "que se realiz, quedando evidencia de su resultado ya que los recursos disponibles con los que " + "cuenta el CIMAV se aplican conforme a los lineamientos de racionalidad y austeridad " + "presupuestaria. " + "Lo anterior de acuerdo con lo establecido en el numeral 4.2.4 (ADJUDICACIN DIRECTA) y " + "numeral 4.2.4.1.1 (Verificar Acreditamiento de Excepcin) del Acuerdo por el que se modifica el " + "Manual Administrativo de Aplicacin General en Materia de Adquisiciones, Arrendamientos y " + "Servicios del Sector Pblico, publicado en el Diario Oficial de la Federacin el 21 de noviembre " + "de 2012.", new Font(Font.FontFamily.TIMES_ROMAN, 12, Font.NORMAL)); parrafo.add(frase); document.add(parrafo); parrafo = new Paragraph("", new Font(Font.FontFamily.TIMES_ROMAN, 12, Font.NORMAL)); parrafo.setSpacingAfter(20); parrafo.setIndentationLeft(30); parrafo.setLeading(15); parrafo.setSpacingBefore(20); parrafo.setAlignment(Element.ALIGN_JUSTIFIED); frase = new Chunk(" - Imparcialidad\n", new Font(Font.FontFamily.TIMES_ROMAN, 12, Font.BOLD)); parrafo.add(frase); frase = new Chunk( "El tipo de adjudicacin que se propone, se llev a cabo sin prejuicios ni situaciones que " + "pudieran afectar la imparcialidad, y sin que medie algn inters personal de los servidores " + "pblicos involucrados en la contratacin o de cualquier otra ndole que pudiera otorgar " + "condiciones ventajosas a alguna persona, en relacin con los dems ni limitar la libre " + "participacin, esto debido a que es proveedor nico, dicha situacin queda demostrada " + "conforme al resultado que se da con base a la investigacin de mercado. " + "Lo anterior de acuerdo con lo establecido en el numeral 4.2.4 (ADJUDICACIN DIRECTA) y " + "numeral 4.2.4.1.1 (Verificar Acreditamiento de Excepcin) del Acuerdo por el que se modifica el " + "Manual Administrativo de Aplicacin General en Materia de Adquisiciones, Arrendamientos y " + "Servicios del Sector Pblico, publicado en el Diario Oficial de la Federacin el 21 de noviembre " + "de 2012.", new Font(Font.FontFamily.TIMES_ROMAN, 12, Font.NORMAL)); parrafo.add(frase); document.add(parrafo); parrafo = new Paragraph("", new Font(Font.FontFamily.TIMES_ROMAN, 12, Font.NORMAL)); parrafo.setSpacingAfter(20); parrafo.setIndentationLeft(30); parrafo.setLeading(15); parrafo.setSpacingBefore(20); parrafo.setAlignment(Element.ALIGN_JUSTIFIED); frase = new Chunk(" - Honradez\n", new Font(Font.FontFamily.TIMES_ROMAN, 12, Font.BOLD)); parrafo.add(frase); frase = new Chunk( "La seleccin del procedimiento de adjudicacin directa tiene como nico fin contratar bajo " + "las mejores condiciones los " + justi.getBienServicioTxt() + " requeridos, actuando con rectitud, " + "responsabilidad e integridad y con apego estricto al marco jurdico aplicable, evitando as " + "incurrir en actos de corrupcin y conflictos de inters, ya que por parte de los servidores " + "pblicos que intervinieron en este procedimiento quedo evidenciado que no se ha favorecido a " + "persona alguna interesada en la contratacin ya que en base a la investigacin de mercado " + "queda demostrado que es proveedor nico.\n\n" + "Lo anterior de acuerdo con lo establecido en el numeral 4.2.4 (ADJUDICACIN DIRECTA) y " + "numeral 4.2.4.1.1 (Verificar Acreditamiento de Excepcin) del Acuerdo por el que se modifica el " + "Manual Administrativo de Aplicacin General en Materia de Adquisiciones, Arrendamientos y " + "Servicios del Sector Pblico, publicado en el Diario Oficial de la Federacin el 21 de noviembre " + "de 2012.", new Font(Font.FontFamily.TIMES_ROMAN, 12, Font.NORMAL)); parrafo.add(frase); document.add(parrafo); if (justi.getEsUnico()) { parrafo = new Paragraph("", new Font(Font.FontFamily.TIMES_ROMAN, 12, Font.NORMAL)); parrafo.setSpacingAfter(20); parrafo.setIndentationLeft(30); parrafo.setLeading(15); parrafo.setSpacingBefore(20); parrafo.setAlignment(Element.ALIGN_JUSTIFIED); frase = new Chunk(" - Transparencia\n", new Font(Font.FontFamily.TIMES_ROMAN, 12, Font.BOLD)); parrafo.add(frase); frase = new Chunk(mapa.get("transparencia_unico"), new Font(Font.FontFamily.TIMES_ROMAN, 12, Font.NORMAL)); parrafo.add(frase); document.add(parrafo); } else { parrafo = new Paragraph("", new Font(Font.FontFamily.TIMES_ROMAN, 12, Font.NORMAL)); parrafo.setSpacingAfter(20); parrafo.setIndentationLeft(30); parrafo.setLeading(15); parrafo.setSpacingBefore(20); parrafo.setAlignment(Element.ALIGN_JUSTIFIED); frase = new Chunk(" - Transparencia\n", new Font(Font.FontFamily.TIMES_ROMAN, 12, Font.BOLD)); parrafo.add(frase); frase = new Chunk(mapa.get("transparencia_no_unico"), new Font(Font.FontFamily.TIMES_ROMAN, 12, Font.NORMAL)); parrafo.add(frase); document.add(parrafo); } parrafo = new Paragraph("VIII.- LUGAR Y FECHA DE EMISIN:", new Font(Font.FontFamily.TIMES_ROMAN, 12, Font.BOLD)); parrafo.setAlignment(Element.ALIGN_CENTER); parrafo.setLeading(15); parrafo.setSpacingBefore(20); document.add(parrafo); parrafo = new Paragraph("En la Ciudad de Chihuahua, Estado de Chihuahua a los " + justi.getFechaElaboracion().getDayOfMonth() + " das del mes de " + justi.getFechaElaboracion().getMonth().getDisplayName(TextStyle.FULL, new Locale("es", "ES")) + " de " + justi.getFechaElaboracion().getYear() + ", se emite la presente justificacin para los efectos legales a que haya lugar.", new Font(Font.FontFamily.TIMES_ROMAN, 12, Font.NORMAL)); parrafo.setAlignment(Element.ALIGN_JUSTIFIED); parrafo.setLeading(15); parrafo.setIndentationLeft(30); parrafo.setSpacingBefore(20); document.add(parrafo); parrafo = new Paragraph( "En cumplimiento a lo establecido en el penltimo prrafo del artculo 71 del Reglamento " + "de la Ley de Adquisiciones, Arrendamientos y Servicios del Sector Pblico, se acompaa a la " + "presente como ANEXO DOS?, la Requisicin o Solicitud de Contratacin (Requisicin) A la " + "cual se deber anexar, mediante sello del departamento de Presupuesto, la Constancia con la " + "que se acredita la existencia de recursos para iniciar el procedimiento de contratacin.", new Font(Font.FontFamily.TIMES_ROMAN, 12, Font.NORMAL)); parrafo.setAlignment(Element.ALIGN_JUSTIFIED); parrafo.setLeading(15); parrafo.setIndentationLeft(30); parrafo.setSpacingBefore(20); document.add(parrafo); if (justi.getEsUnico()) { parrafo = new Paragraph(mapa.get("nota_1"), new Font(Font.FontFamily.TIMES_ROMAN, 13, Font.BOLD)); parrafo.setAlignment(Element.ALIGN_JUSTIFIED); parrafo.setLeading(15); parrafo.setIndentationLeft(30); parrafo.setSpacingBefore(20); document.add(parrafo); } parrafo = new Paragraph("ATENTAMENTE", new Font(Font.FontFamily.TIMES_ROMAN, 12, Font.BOLD)); parrafo.setAlignment(Element.ALIGN_CENTER); parrafo.setLeading(15); parrafo.setSpacingBefore(60); document.add(parrafo); parrafo = new Paragraph( justi.getAutoriza().getName() + "\n" + justi.getAutorizaCargo().toUpperCase(), new Font(Font.FontFamily.TIMES_ROMAN, 12, Font.BOLD)); parrafo.setAlignment(Element.ALIGN_CENTER); parrafo.setLeading(15); parrafo.setSpacingBefore(60); document.add(parrafo); document.close(); outputStream.close(); } catch (DocumentException ex) { Logger.getLogger(JustificacionREST.class.getName()).log(Level.SEVERE, null, ex); } } }; ResponseBuilder response = Response.ok(streamingOutput); String fileName = ("inline; filename=" + justi.getRequisicion() + "-" + justi.getEmpleado().getCuentaCimav() + ".pdf").replace(" ", "").replace(",", "-"); response.header("Content-Disposition", fileName); return response.build(); }