List of usage examples for com.itextpdf.text PageSize A4
Rectangle A4
To view the source code for com.itextpdf.text PageSize A4.
Click Source Link
From source file:relatorios.RelatorioFuncionario.java
public static void gerarRelatorio() throws ClassNotFoundException { // criao do objeto documento Document document = new Document(PageSize.A4, 30, 20, 20, 30); Connection conecta; // o objeto que conecta com o banco de dados PreparedStatement pst;// w w w.j av a 2 s.c o m ResultSet rs; conecta = ConectaBd.conectabd(); OutputStream output; try { output = new FileOutputStream("relatorios/Relatrio de Funcionarios.pdf"); try { PdfWriter.getInstance(document, output); document.open(); // adicionando um pargrafo ao documento document.add(new Paragraph(" Relatrio de Funcionarios")); document.add(new Paragraph("\n")); Font bfBold10 = new Font(Font.FontFamily.TIMES_ROMAN, 10, Font.BOLD, new BaseColor(0, 0, 0)); Font bfBold12 = new Font(Font.FontFamily.TIMES_ROMAN, 8, Font.NORMAL, new BaseColor(0, 0, 0)); Font bf8 = new Font(Font.FontFamily.TIMES_ROMAN, 8); PdfPTable tabela = new PdfPTable(3); PdfPCell cell; cell = new PdfPCell(new Phrase("Nome", bfBold10)); tabela.addCell(cell); cell = new PdfPCell(new Phrase("Telefone", bfBold10)); tabela.addCell(cell); cell = new PdfPCell(new Phrase("Usuario", bfBold10)); tabela.addCell(cell); String sql = "Select * from funcionarios order by codigo Asc"; //orderna pelo numero do codigo ascendentemente try { pst = conecta.prepareStatement(sql); rs = pst.executeQuery(); while (rs.next()) { String fornec = rs.getString("nome"); cell = new PdfPCell(new Phrase(fornec, bf8)); tabela.addCell(cell); fornec = rs.getString("telefone"); cell = new PdfPCell(new Phrase(fornec, bf8)); tabela.addCell(cell); fornec = rs.getString("usuario"); cell = new PdfPCell(new Phrase(fornec, bf8)); tabela.addCell(cell); } } catch (SQLException error) { JOptionPane.showMessageDialog(null, error); } document.add(tabela); document.close(); } catch (DocumentException de) { System.err.println(de.getMessage()); document.close(); } } catch (FileNotFoundException ex) { Logger.getLogger(RelatorioFornecedor.class.getName()).log(Level.SEVERE, null, ex); System.err.println(ex.getMessage()); } }
From source file:relatorios.RelatorioProdutos.java
public static void gerarRelatorio() throws ClassNotFoundException { // criao do objeto documento Document document = new Document(PageSize.A4, 30, 20, 20, 30); Connection conecta; // o objeto que conecta com o banco de dados PreparedStatement pst;// ww w. ja v a 2s .c om ResultSet rs; conecta = ConectaBd.conectabd(); OutputStream output; try { output = new FileOutputStream("relatorios/Relatrio de Produtos.pdf"); try { PdfWriter.getInstance(document, output); document.open(); // adicionando um pargrafo ao documento document.add(new Paragraph(" Relatrio de Produtos")); document.add(new Paragraph("\n")); Font bfBold10 = new Font(Font.FontFamily.TIMES_ROMAN, 10, Font.BOLD, new BaseColor(0, 0, 0)); Font bfBold12 = new Font(Font.FontFamily.TIMES_ROMAN, 8, Font.NORMAL, new BaseColor(0, 0, 0)); Font bf8 = new Font(Font.FontFamily.TIMES_ROMAN, 8); PdfPTable tabela = new PdfPTable(4); PdfPCell cell; cell = new PdfPCell(new Phrase("Nome", bfBold10)); tabela.addCell(cell); cell = new PdfPCell(new Phrase("Valor de Compra", bfBold10)); tabela.addCell(cell); cell = new PdfPCell(new Phrase("Valor de Venda", bfBold10)); tabela.addCell(cell); cell = new PdfPCell(new Phrase("Qtde. em Estoque", bfBold10)); tabela.addCell(cell); String sql = "Select * from produtos_float order by codigo Asc"; //orderna pelo numero do codigo ascendentemente try { pst = conecta.prepareStatement(sql); rs = pst.executeQuery(); while (rs.next()) { String fornec = rs.getString("descricao"); cell = new PdfPCell(new Phrase(fornec, bf8)); tabela.addCell(cell); fornec = rs.getString("valor_compra"); cell = new PdfPCell(new Phrase(fornec, bf8)); tabela.addCell(cell); fornec = rs.getString("valor_venda"); cell = new PdfPCell(new Phrase(fornec, bf8)); tabela.addCell(cell); fornec = rs.getString("estoque"); cell = new PdfPCell(new Phrase(fornec, bf8)); tabela.addCell(cell); } } catch (SQLException error) { JOptionPane.showMessageDialog(null, error); } document.add(tabela); document.close(); } catch (DocumentException de) { System.err.println(de.getMessage()); document.close(); } } catch (FileNotFoundException ex) { Logger.getLogger(RelatorioProdutos.class.getName()).log(Level.SEVERE, null, ex); System.err.println(ex.getMessage()); } }
From source file:relatorios.RelatorioVenda.java
public static void gerarRelatorio(String sql) throws ClassNotFoundException { // criao do objeto documento Document document = new Document(PageSize.A4, 30, 20, 20, 30); Connection conecta; // o objeto que conecta com o banco de dados PreparedStatement pst;//w ww. j ava2 s . com ResultSet rs; conecta = ConectaBd.conectabd(); OutputStream output; try { output = new FileOutputStream("relatorios/Relatrio de Venda.pdf"); try { PdfWriter.getInstance(document, output); document.open(); // adicionando um pargrafo ao documento document.add(new Paragraph(" Relatrio de Venda")); document.add(new Paragraph("\n")); Font bfBold10 = new Font(Font.FontFamily.TIMES_ROMAN, 10, Font.BOLD, new BaseColor(0, 0, 0)); Font bfBold12 = new Font(Font.FontFamily.TIMES_ROMAN, 8, Font.NORMAL, new BaseColor(0, 0, 0)); Font bf8 = new Font(Font.FontFamily.TIMES_ROMAN, 6); PdfPTable tabela = new PdfPTable(6); PdfPCell cell; cell = new PdfPCell(new Phrase("Cliente", bfBold10)); tabela.addCell(cell); cell = new PdfPCell(new Phrase("Produto", bfBold10)); tabela.addCell(cell); cell = new PdfPCell(new Phrase("Qtde do Produto", bfBold10)); tabela.addCell(cell); cell = new PdfPCell(new Phrase("Valor por Unidade", bfBold10)); tabela.addCell(cell); cell = new PdfPCell(new Phrase("Valor Total", bfBold10)); tabela.addCell(cell); cell = new PdfPCell(new Phrase("Data", bfBold10)); tabela.addCell(cell); try { pst = conecta.prepareStatement(sql); rs = pst.executeQuery(); while (rs.next()) { String fornec = rs.getString("cliente"); cell = new PdfPCell(new Phrase(fornec, bf8)); tabela.addCell(cell); fornec = rs.getString("produto"); cell = new PdfPCell(new Phrase(fornec, bf8)); tabela.addCell(cell); fornec = rs.getString("quantidade"); cell = new PdfPCell(new Phrase(fornec, bf8)); tabela.addCell(cell); fornec = rs.getString("valorunitariovenda"); cell = new PdfPCell(new Phrase(fornec, bf8)); tabela.addCell(cell); fornec = rs.getString("valortotalvenda"); cell = new PdfPCell(new Phrase(fornec, bf8)); tabela.addCell(cell); fornec = rs.getString("data_venda"); cell = new PdfPCell(new Phrase(fornec, bf8)); tabela.addCell(cell); } } catch (SQLException error) { JOptionPane.showMessageDialog(null, error); } document.add(tabela); document.close(); } catch (DocumentException de) { System.err.println(de.getMessage()); document.close(); } } catch (FileNotFoundException ex) { Logger.getLogger(RelatorioVenda.class.getName()).log(Level.SEVERE, null, ex); System.err.println(ex.getMessage()); } }
From source file:Report.RelatorioAluno.java
/** * funcao para gerar o stream do relatorio * * @return ByteArrayOutputStream// w w w .j a v a2 s .co m */ public ByteArrayOutputStream relatorioAlunosMatriculados() { ByteArrayOutputStream baos = new ByteArrayOutputStream(); FacesContext faces = FacesContext.getCurrentInstance(); // pega o contexto da aplicacao realPath = faces.getExternalContext().getRealPath("/"); //realPath = "C:/Users/Alessandro/Desktop/TCC2/SisGES/build/web"; try { BaseFont fHelvetica = BaseFont.createFont(BaseFont.HELVETICA, "Cp1252", false); //---------------------------------------------------------------------- // creation of the document with a certain size and certain margins // may want to use PageSize.LETTER instead Document document = new Document(PageSize.A4, 40, 40, 20, 50); document.addAuthor("SisGES"); // optional document.addSubject("Relatrio"); // opcional document.addKeywords("SisGES"); document.addCreator("iText"); //---------------------------------------------------------------------- // creation of the different writers //PdfWriter writer = PdfWriter.getInstance(document, new FileOutputStream("web/resources/report/alunosMatriculados.pdf")); PdfWriter writer = PdfWriter.getInstance(document, baos); writer.setBoxSize("header", new Rectangle(36, 54, 559, 788)); //---------------------------------------------------------------------- // ADICIONA HEADER E FOOTER //---------------------------------------------------------------------- HeaderFooter headerFooter = new HeaderFooter(); writer.setPageEvent(headerFooter); //---------------------------------------------------------------------- // ABRE DOCUMENTO PARA ESCRITA //---------------------------------------------------------------------- document.open(); //---------------------------------------------------------------------- //ADICIONAR LOGO NO DOCUMENTO //---------------------------------------------------------------------- Image logoUfu = Image.getInstance(realPath + "/resources/images/logoUFU.png"); logoUfu.scaleAbsolute(57, 56);//(largura,altura) logoUfu.isImgTemplate(); //add no template //logoUfu.setAbsolutePosition(30, 745); //x ,y por referencia do rodape document.add(logoUfu); Image logoFacom = Image.getInstance(realPath + "/resources/images/logoFacom.png"); logoFacom.scaleAbsolute(62, 55);//(largura,altura) logoFacom.setAbsolutePosition(92, 767); //x ,y por referencia do rodape //logoFacom.isImgTemplate(); //add no template document.add(logoFacom); //---------------------------------------------------------------------- //ADICIONAR CABEALHO //---------------------------------------------------------------------- PdfContentByte univ = writer.getDirectContentUnder(); univ.beginText(); univ.setFontAndSize(fHelvetica, 10); univ.setTextMatrix(349, 805); // x e y univ.showText("UNIVERSIDADE FEDERAL DE UBERLNDIA"); univ.setTextMatrix(405, 790); // x e y univ.showText("FACULDADE DE COMPUTAO"); univ.setTextMatrix(403, 775); // x e y univ.showText("COORDENADORIA DE ESTGIO "); univ.endText(); PdfContentByte univEnd = writer.getDirectContentUnder(); univEnd.beginText(); univEnd.setFontAndSize(fHelvetica, 7); univEnd.setTextMatrix(326, 761); // x e y univEnd.showText("Campus Universitrio - Santa Mnica - CEP 38408-100 - Uberlndia - MG"); univEnd.setTextMatrix(432, 750); // x e y univEnd.showText("Telefone: (34) 3239-4144 ou 3239-4393"); univEnd.endText(); //---------------------------------------------------------------------- //ADICIONAR TITULO //---------------------------------------------------------------------- PdfContentByte titulo = writer.getDirectContentUnder(); titulo.beginText(); titulo.setFontAndSize(fHelvetica, 16); titulo.setTextMatrix(210, 700); // x e y titulo.showText("Alunos Matrculados"); titulo.endText(); //---------------------------------------------------------------------- //---------------------------------------------------------------------- AlunoDAO aDAO = new AlunoDAO(); List<Aluno> allAlunos = aDAO.getAllAlunos(); aDAO.closeSession(); PdfPTable table = new PdfPTable(5); table.setTotalWidth(100f); table.setWidthPercentage(100); float[] widths = { 10, 30, 30, 13, 17 };//largura das colunas table.setWidths(widths); table.setHeaderRows(1); Paragraph cabecalho = new Paragraph("Matricula"); PdfPCell cellMatricula = new PdfPCell(cabecalho); // celula cabecalho.getFont().setStyle(Font.BOLD); cabecalho.getFont().setSize(8); cellMatricula.setBackgroundColor(BaseColor.LIGHT_GRAY); cellMatricula.setBorderColor(BaseColor.LIGHT_GRAY); cellMatricula.setHorizontalAlignment(Element.ALIGN_CENTER); table.addCell(cellMatricula); cabecalho = new Paragraph("Nome"); cabecalho.getFont().setStyle(Font.BOLD); cabecalho.getFont().setSize(8); PdfPCell cellNome = new PdfPCell(cabecalho); // celula cellNome.setBackgroundColor(BaseColor.LIGHT_GRAY); cellNome.setBorderColor(BaseColor.LIGHT_GRAY); cellNome.setHorizontalAlignment(Element.ALIGN_CENTER); table.addCell(cellNome); cabecalho = new Paragraph("Email"); cabecalho.getFont().setStyle(Font.BOLD); cabecalho.getFont().setSize(8); PdfPCell cellEmail = new PdfPCell(cabecalho); // celula cellEmail.setBackgroundColor(BaseColor.LIGHT_GRAY); cellEmail.setBorderColor(BaseColor.LIGHT_GRAY); cellEmail.setHorizontalAlignment(Element.ALIGN_CENTER); table.addCell(cellEmail); cabecalho = new Paragraph("Telefone"); cabecalho.getFont().setStyle(Font.BOLD); cabecalho.getFont().setSize(8); PdfPCell cellTelefone = new PdfPCell(cabecalho); // celula cellTelefone.setBackgroundColor(BaseColor.LIGHT_GRAY); cellTelefone.setBorderColor(BaseColor.LIGHT_GRAY); cellTelefone.setHorizontalAlignment(Element.ALIGN_CENTER); table.addCell(cellTelefone); cabecalho = new Paragraph("Curso"); cabecalho.getFont().setStyle(Font.BOLD); cabecalho.getFont().setSize(8); PdfPCell cellCurso = new PdfPCell(cabecalho); // celula cellCurso.setBackgroundColor(BaseColor.LIGHT_GRAY); cellCurso.setBorderColor(BaseColor.LIGHT_GRAY); cellCurso.setHorizontalAlignment(Element.ALIGN_CENTER); table.addCell(cellCurso); for (int i = 0; i < allAlunos.size(); i++) { Aluno aluno = allAlunos.get(i); Paragraph texto = new Paragraph(aluno.getMatricula()); cellMatricula = new PdfPCell(texto); // celula cellMatricula.setBorderColor(BaseColor.LIGHT_GRAY); texto.getFont().setSize(8); table.addCell(cellMatricula); texto = new Paragraph(aluno.getNome()); texto.getFont().setSize(8); cellNome = new PdfPCell(texto); // celula cellNome.setBorderColor(BaseColor.LIGHT_GRAY); table.addCell(cellNome); texto = new Paragraph(aluno.getEmail()); texto.getFont().setSize(8); cellEmail = new PdfPCell(texto); // celula cellEmail.setBorderColor(BaseColor.LIGHT_GRAY); table.addCell(cellEmail); texto = new Paragraph(aluno.getTelefone()); texto.getFont().setSize(8); cellTelefone = new PdfPCell(texto); // celula cellTelefone.setBorderColor(BaseColor.LIGHT_GRAY); table.addCell(cellTelefone); texto = new Paragraph(aluno.getCursoidcurso().getNomecurso()); texto.getFont().setSize(8); cellCurso = new PdfPCell(texto); // celula cellCurso.setBorderColor(BaseColor.LIGHT_GRAY); table.addCell(cellCurso); } table.setSpacingBefore(100); table.setSpacingAfter(10); table.completeRow(); document.add(table); //add nova pagina document.newPage(); //close document document.close(); } catch (DocumentException | IOException ex) { Logger.getLogger(RelatorioAluno.class.getName()).log(Level.SEVERE, null, ex); } catch (Exception ex) { Logger.getLogger(RelatorioAluno.class.getName()).log(Level.SEVERE, null, ex); } //return stream return baos; }
From source file:Report.RelatorioBanca.java
/** * funcao para gerar o stream do relatorio * * @param banca/* ww w . ja v a 2 s .c o m*/ * @param listaConvidados * @param coordenador * @param campus * @return ByteArrayOutputStream */ public ByteArrayOutputStream relatorioAtaDeDefesa(Banca banca, List<Convidado> listaConvidados, Professor coordenador, Campus campus) { ByteArrayOutputStream baos = new ByteArrayOutputStream(); FacesContext faces = FacesContext.getCurrentInstance(); //pega o contexto da aplicacao String realPath = faces.getExternalContext().getRealPath("/"); try { BaseFont fHelvetica = BaseFont.createFont(BaseFont.HELVETICA, "Cp1252", false); //---------------------------------------------------------------------- // creation of the document with a certain size and certain margins // may want to use PageSize.LETTER instead Document document = new Document(PageSize.A4, 40, 40, 20, 50); document.addAuthor("SisGES"); // optional document.addSubject("Relatrio"); // opcional document.addKeywords("SisGES"); document.addCreator("iText"); //---------------------------------------------------------------------- // creation of the different writers //PdfWriter writer = PdfWriter.getInstance(document, new FileOutputStream("web/resources/report/alunosMatriculados.pdf")); PdfWriter writer = PdfWriter.getInstance(document, baos); writer.setBoxSize("header", new Rectangle(36, 54, 559, 788)); //---------------------------------------------------------------------- // ADICIONA HEADER E FOOTER //---------------------------------------------------------------------- HeaderFooter headerFooter = new HeaderFooter(); headerFooter.setY(760f); writer.setPageEvent(headerFooter); //---------------------------------------------------------------------- // ABRE DOCUMENTO PARA ESCRITA //---------------------------------------------------------------------- document.open(); //---------------------------------------------------------------------- //ADICIONAR LOGO NO DOCUMENTO //---------------------------------------------------------------------- Image logoUfu = Image.getInstance(realPath + "/resources/images/logoUFUAta.png"); logoUfu.scaleAbsolute(155, 39);//(largura,altura) logoUfu.isImgTemplate(); //add no template document.add(logoUfu); //---------------------------------------------------------------------- //ADICIONAR CABEALHO //---------------------------------------------------------------------- PdfContentByte univ = writer.getDirectContentUnder(); univ.beginText(); univ.setFontAndSize(fHelvetica, 10); univ.setTextMatrix(349, 816); // x e y univ.showText("UNIVERSIDADE FEDERAL DE UBERLNDIA"); univ.setTextMatrix(405, 802); // x e y univ.showText("FACULDADE DE COMPUTAO"); univ.setTextMatrix(403, 788); // x e y univ.showText("COORDENADORIA DE ESTGIO "); univ.endText(); String info = "Campus Universitrio - " + campus.getNomecampus() + " - CEP " + campus.getCep() + " - " + campus.getCidade() + " - " + campus.getEstadosigla().toUpperCase(); Chunk txtCampus = new Chunk(info); Paragraph paragraph0 = new Paragraph(); paragraph0.setSpacingBefore(-10); paragraph0.setFont(new Font(fHelvetica, 7)); paragraph0.add(txtCampus); paragraph0.setAlignment(Element.ALIGN_RIGHT); document.add(paragraph0); info = "Telefone: " + coordenador.getTelefone() + " Email: " + coordenador.getEmail(); Chunk txtCoordenador = new Chunk(info); Paragraph paragraph1 = new Paragraph(); paragraph1.setSpacingBefore(-5); paragraph1.setSpacingAfter(10); paragraph1.setFont(new Font(fHelvetica, 7)); paragraph1.add(txtCoordenador); paragraph1.setAlignment(Element.ALIGN_RIGHT); document.add(paragraph1); // PdfContentByte univ = writer.getDirectContentUnder(); // univ.beginText(); // univ.setFontAndSize(fHelvetica, 12); // univ.setTextMatrix(200, 815); // x e y // univ.showText("UNIVERSIDADE FEDERAL DE UBERLNDIA"); // univ.setTextMatrix(235, 800); // x e y // univ.showText("FACULDADE DE COMPUTAO"); // univ.endText(); // // PdfContentByte univEnd = writer.getDirectContentUnder(); // univEnd.beginText(); // univEnd.setFontAndSize(fHelvetica, 7); // univEnd.setTextMatrix(210, 785); // x e y // univEnd.showText("Campus Universitrio - Santa Mnica - CEP 38408-100 - Uberlndia - MG"); // univEnd.setTextMatrix(260, 775); // x e y // univEnd.showText("Telefone: (34) 3239-4144 ou 3239-4393"); // univEnd.endText(); //---------------------------------------------------------------------- //ADICIONAR TITULO //---------------------------------------------------------------------- PdfContentByte curso = writer.getDirectContentUnder(); curso.beginText(); curso.setFontAndSize(fHelvetica, 14); curso.setTextMatrix(140, 720); // x e y String cursoAluno; //curso.showText("Curso de Bacharelado em Cincia da Computao"); cursoAluno = banca.getTrabalhoidtrabalho().getAlunomatricula().getCursoidcurso().getNomecurso(); if (cursoAluno.contains("sistema")) { cursoAluno = "Bacharelado em Sistemas de Informao"; } else { cursoAluno = "Bacharelado em Cincia da Computao"; } curso.showText("Curso de " + cursoAluno); curso.endText(); PdfContentByte titulo = writer.getDirectContentUnder(); titulo.beginText(); titulo.setFontAndSize(fHelvetica, 12); titulo.setTextMatrix(160, 660); // x e y titulo.showText("Ata de Defesa de Trabalho de Estgio Supervisionado"); titulo.endText(); //----------------------------------------------------------------------] String texto = "Ata da ___________ de defesa de Trabalho de Estgio Supervisionado, do Curso de Bacharelado " + "em Cincia da Computao, realizada em " + CalendarFormat.getDataBRtoDate(banca.getDatabanca()) + ", na " + banca.getLocalbanca() + ", s " + CalendarFormat.parseDateToTimeString(banca.getHorario()) + " horas, pelo aluno " + banca.getTrabalhoidtrabalho().getAlunomatricula().getNome() + " (" + banca.getTrabalhoidtrabalho().getAlunomatricula().getMatricula() + "). O trabalho " + "intitulado \"" + banca.getTrabalhoidtrabalho().getTitulo() + "\" foi apresentado pelo aluno em sesso pblica " + "com cerca de 1 hora de durao. Na ocasio, o aluno foi arguido oralmente pelos membros " + "da banca, sendo considerado ________________________ (aprovado/reprovado)."; Chunk chunk1 = new Chunk(texto); Paragraph paragraph = new Paragraph(); paragraph.setFont(new Font(fHelvetica, 12)); paragraph.setSpacingBefore(170); paragraph.add(chunk1); paragraph.setAlignment(Element.ALIGN_JUSTIFIED); document.add(paragraph); document.add(Chunk.NEWLINE); texto = "Carga horria total do estgio: ____________ horas (preenchido pela coordenao de estgios)"; Paragraph paragraph2 = new Paragraph(); paragraph2.setSpacingBefore(15); paragraph2.setFont(new Font(fHelvetica, 10)); paragraph2.add(texto); paragraph2.setAlignment(Element.ALIGN_JUSTIFIED); document.add(paragraph2); document.add(Chunk.NEWLINE); Paragraph paragraph3 = new Paragraph(); paragraph3.setSpacingBefore(25); paragraph3.add("Uberlndia, " + CalendarFormat.getDataPorExtenso(banca.getDatabanca()) + "."); paragraph3.setAlignment(Element.ALIGN_JUSTIFIED); document.add(paragraph3); document.add(Chunk.NEWLINE); //---------------------------------------------------------------------- PdfContentByte tituloMembros = writer.getDirectContentUnder(); tituloMembros.beginText(); tituloMembros.setFontAndSize(fHelvetica, 12); tituloMembros.setTextMatrix(220, 350); // x e y tituloMembros.showText("Membros da Banca Examinadora"); tituloMembros.endText(); //---------------------------------------------------------------------- float x = 160f; float y = 300f; // distancia do fim da pagina //retorna orientador //----------------------------------------------------- //linha PdfContentByte linhaOrientador = writer.getDirectContentUnder(); linhaOrientador.setLineWidth(1f); // mostrar linha linhaOrientador.setGrayStroke(0.5f); // 0 = preto, 1 = branco linhaOrientador.moveTo(x, y); linhaOrientador.lineTo(450f, y); // ate onde a linha vai linhaOrientador.stroke(); //------------------------------------------------------ //nome orientador PdfContentByte orientador = writer.getDirectContentUnder(); orientador.beginText(); orientador.setFontAndSize(fHelvetica, 12); orientador.setTextMatrix(x, y - 20); // x e y orientador.showText("Prof.Orientador - " + banca.getTrabalhoidtrabalho().getProfessorsiape().getNome()); orientador.setTextMatrix(x, y - 35); // x e y orientador.showText("Presidente da banca"); orientador.endText(); y = y - 100; //retorna convidados for (int i = 0; i < listaConvidados.size(); i++) { Convidado convidado = listaConvidados.get(i); if (convidado.getConfirmado() == true) { //----------------------------------------------------- //linha PdfContentByte linha = writer.getDirectContentUnder(); linha.setLineWidth(1f); // mostrar linha linha.setGrayStroke(0.5f); // 0 = preto, 1 = branco linha.moveTo(x, y); linha.lineTo(450f, y); // ate onde a linha vai linha.stroke(); //------------------------------------------------------ //nome convidado PdfContentByte conv = writer.getDirectContentUnder(); conv.beginText(); conv.setFontAndSize(fHelvetica, 12); conv.setTextMatrix(x, y - 20); // x e y conv.showText("Prof.Convidado - " + convidado.getProfessorsiape().getNome()); conv.endText(); //------------------------------------------------------ y = y - 80; } } //add nova pagina document.newPage(); //close document document.close(); } catch (DocumentException | IOException ex) { Logger.getLogger(RelatorioBanca.class.getName()).log(Level.SEVERE, null, ex); } //return stream return baos; }
From source file:Report.RelatorioBanca.java
/** * funcao para gerar o stream do relatorio de participaes em banca * * @param prof//from w w w. j a v a 2 s . com * @param listaOrientador * @param listaConvidado * @param dtinicial * @param dtfinal * @param coordenador * @param campus * @return ByteArrayOutputStream */ public ByteArrayOutputStream relatorioParticipacaoEmBanca(Professor prof, List<Banca> listaOrientador, List<Convidado> listaConvidado, Date dtinicial, Date dtfinal, Professor coordenador, Campus campus) { ByteArrayOutputStream baos = new ByteArrayOutputStream(); FacesContext faces = FacesContext.getCurrentInstance(); //pega o contexto da aplicacao String realPath = faces.getExternalContext().getRealPath("/"); try { BaseFont fHelvetica = BaseFont.createFont(BaseFont.HELVETICA, "Cp1252", false); //---------------------------------------------------------------------- //creation of the document with a certain size and certain margins //may want to use PageSize.LETTER instead Document document = new Document(PageSize.A4, 40, 40, 20, 50); document.addAuthor("SisGES"); // optional document.addSubject("Relatrio"); // opcional document.addKeywords("SisGES"); document.addCreator("iText"); //---------------------------------------------------------------------- // creation of the different writers //PdfWriter writer = PdfWriter.getInstance(document, new FileOutputStream("web/resources/report/alunosMatriculados.pdf")); PdfWriter writer = PdfWriter.getInstance(document, baos); writer.setBoxSize("header", new Rectangle(36, 54, 559, 788)); //---------------------------------------------------------------------- // ADICIONA HEADER E FOOTER //---------------------------------------------------------------------- HeaderFooter headerFooter = new HeaderFooter(); headerFooter.setY(760f); writer.setPageEvent(headerFooter); //---------------------------------------------------------------------- //ABRE DOCUMENTO PARA ESCRITA //---------------------------------------------------------------------- document.open(); //---------------------------------------------------------------------- //ADICIONAR LOGO NO DOCUMENTO //---------------------------------------------------------------------- Image logoUfu = Image.getInstance(realPath + "/resources/images/logoUFUAta.png"); logoUfu.scaleAbsolute(155, 39);//(largura,altura) logoUfu.isImgTemplate(); //add no template document.add(logoUfu); //---------------------------------------------------------------------- //ADICIONAR CABEALHO //---------------------------------------------------------------------- PdfContentByte univ = writer.getDirectContentUnder(); univ.beginText(); univ.setFontAndSize(fHelvetica, 10); univ.setTextMatrix(349, 816); // x e y univ.showText("UNIVERSIDADE FEDERAL DE UBERLNDIA"); univ.setTextMatrix(405, 802); // x e y univ.showText("FACULDADE DE COMPUTAO"); univ.setTextMatrix(403, 788); // x e y univ.showText("COORDENADORIA DE ESTGIO "); univ.endText(); String info = "Campus Universitrio - " + campus.getNomecampus() + " - CEP " + campus.getCep() + " - " + campus.getCidade() + " - " + campus.getEstadosigla().toUpperCase(); Chunk txtCampus = new Chunk(info); Paragraph paragraph0 = new Paragraph(); paragraph0.setSpacingBefore(-10); paragraph0.setFont(new Font(fHelvetica, 7)); paragraph0.add(txtCampus); paragraph0.setAlignment(Element.ALIGN_RIGHT); document.add(paragraph0); info = "Telefone: " + coordenador.getTelefone() + " Email: " + coordenador.getEmail(); Chunk txtCoordenador = new Chunk(info); Paragraph paragraph1 = new Paragraph(); paragraph1.setSpacingBefore(-5); paragraph1.setSpacingAfter(10); paragraph1.setFont(new Font(fHelvetica, 7)); paragraph1.add(txtCoordenador); paragraph1.setAlignment(Element.ALIGN_RIGHT); document.add(paragraph1); // PdfContentByte univ = writer.getDirectContentUnder(); // univ.beginText(); // univ.setFontAndSize(fHelvetica, 12); // univ.setTextMatrix(200, 815); // x e y // univ.showText("UNIVERSIDADE FEDERAL DE UBERLNDIA"); // univ.setTextMatrix(235, 800); // x e y // univ.showText("FACULDADE DE COMPUTAO"); // univ.endText(); // // PdfContentByte univEnd = writer.getDirectContentUnder(); // univEnd.beginText(); // univEnd.setFontAndSize(fHelvetica, 7); // univEnd.setTextMatrix(210, 785); // x e y // univEnd.showText("Campus Universitrio - Santa Mnica - CEP 38408-100 - Uberlndia - MG"); // univEnd.setTextMatrix(260, 775); // x e y // univEnd.showText("Telefone: (34) 3239-4144 ou 3239-4393"); // univEnd.endText(); //---------------------------------------------------------------------- //ADICIONAR TITULO //---------------------------------------------------------------------- PdfContentByte t1 = writer.getDirectContentUnder(); t1.beginText(); t1.setFontAndSize(fHelvetica, 14); t1.setTextMatrix(210, 735); // x e y t1.showText("Participao em Bancas"); t1.endText(); PdfContentByte t2 = writer.getDirectContentUnder(); t2.beginText(); t2.setFontAndSize(fHelvetica, 12); t2.setTextMatrix(190, 710); // x e y String periodo = CalendarFormat.getDataBRtoDate(dtinicial) + " at " + CalendarFormat.getDataBRtoDate(dtfinal); t2.showText("Perodo: " + periodo); t2.endText(); PdfContentByte t3 = writer.getDirectContentUnder(); t3.beginText(); t3.setFontAndSize(fHelvetica, 12); t3.setTextMatrix(40, 675); // x e y t3.showText("Professor: " + prof.getNome()); t3.endText(); //---------------------------------------------------------------------- //TABELA PdfPTable table = new PdfPTable(6); //espao do inicio da pagina table.setSpacingBefore(100f); table.setTotalWidth(110f); table.setWidthPercentage(100); float[] widths = { 13, 25, 22, 18, 12, 10 };//largura das 2 colunas table.setWidths(widths); table.setHeaderRows(1); //CABEALHO DA TABELA Paragraph cabecalho = new Paragraph("Matricula do Aluno"); PdfPCell cell1 = new PdfPCell(cabecalho); // celula cabecalho.getFont().setStyle(Font.BOLD); cabecalho.getFont().setSize(8); cell1.setBackgroundColor(BaseColor.LIGHT_GRAY); cell1.setBorderColor(BaseColor.LIGHT_GRAY); cell1.setHorizontalAlignment(Element.ALIGN_CENTER); table.addCell(cell1); cabecalho = new Paragraph("Nome do Aluno"); cabecalho.getFont().setStyle(Font.BOLD); cabecalho.getFont().setSize(8); PdfPCell cell2 = new PdfPCell(cabecalho); // celula cell2.setBackgroundColor(BaseColor.LIGHT_GRAY); cell2.setBorderColor(BaseColor.LIGHT_GRAY); cell2.setHorizontalAlignment(Element.ALIGN_CENTER); table.addCell(cell2); cabecalho = new Paragraph("Ttulo do Trabalho"); cabecalho.getFont().setStyle(Font.BOLD); cabecalho.getFont().setSize(8); PdfPCell cell3 = new PdfPCell(cabecalho); // celula cell3.setBackgroundColor(BaseColor.LIGHT_GRAY); cell3.setBorderColor(BaseColor.LIGHT_GRAY); cell3.setHorizontalAlignment(Element.ALIGN_CENTER); table.addCell(cell3); cabecalho = new Paragraph("Nome do Orientador"); cabecalho.getFont().setStyle(Font.BOLD); cabecalho.getFont().setSize(8); PdfPCell cell4 = new PdfPCell(cabecalho); // celula cell4.setBackgroundColor(BaseColor.LIGHT_GRAY); cell4.setBorderColor(BaseColor.LIGHT_GRAY); cell4.setHorizontalAlignment(Element.ALIGN_CENTER); table.addCell(cell4); cabecalho = new Paragraph("Papel do Professor"); cabecalho.getFont().setStyle(Font.BOLD); cabecalho.getFont().setSize(8); PdfPCell cell5 = new PdfPCell(cabecalho); // celula cell5.setBackgroundColor(BaseColor.LIGHT_GRAY); cell5.setBorderColor(BaseColor.LIGHT_GRAY); cell5.setHorizontalAlignment(Element.ALIGN_CENTER); table.addCell(cell5); cabecalho = new Paragraph("Data Defesa"); cabecalho.getFont().setStyle(Font.BOLD); cabecalho.getFont().setSize(8); PdfPCell cell6 = new PdfPCell(cabecalho); // celula cell6.setBackgroundColor(BaseColor.LIGHT_GRAY); cell6.setBorderColor(BaseColor.LIGHT_GRAY); cell6.setHorizontalAlignment(Element.ALIGN_CENTER); table.addCell(cell6); for (int i = 0; i < listaOrientador.size(); i++) { Banca b = listaOrientador.get(i); Paragraph texto = new Paragraph(b.getTrabalhoidtrabalho().getAlunomatricula().getMatricula()); texto.getFont().setSize(8); cell1 = new PdfPCell(texto); // celula cell1.setBorderColor(BaseColor.LIGHT_GRAY); table.addCell(cell1); texto = new Paragraph(b.getTrabalhoidtrabalho().getAlunomatricula().getNome()); texto.getFont().setSize(8); cell2 = new PdfPCell(texto); // celula cell2.setBorderColor(BaseColor.LIGHT_GRAY); table.addCell(cell2); texto = new Paragraph(b.getTrabalhoidtrabalho().getTitulo()); texto.getFont().setSize(8); cell3 = new PdfPCell(texto); // celula cell3.setBorderColor(BaseColor.LIGHT_GRAY); table.addCell(cell3); texto = new Paragraph(b.getTrabalhoidtrabalho().getProfessorsiape().getNome()); texto.getFont().setSize(8); cell4 = new PdfPCell(texto); // celula cell4.setBorderColor(BaseColor.LIGHT_GRAY); table.addCell(cell4); texto = new Paragraph("Orientador"); texto.getFont().setSize(8); cell5 = new PdfPCell(texto); // celula cell5.setBorderColor(BaseColor.LIGHT_GRAY); table.addCell(cell5); texto = new Paragraph(CalendarFormat.getDataBRtoDate(b.getDatabanca())); texto.getFont().setSize(8); cell6 = new PdfPCell(texto); // celula cell6.setBorderColor(BaseColor.LIGHT_GRAY); table.addCell(cell6); switch (i % 2) { case 0: cell1.setBorderColor(BaseColor.LIGHT_GRAY); cell1.setBackgroundColor(BaseColor.LIGHT_GRAY); break; case 1: break; } } for (int i = 0; i < listaConvidado.size(); i++) { Convidado c = listaConvidado.get(i); Paragraph texto = new Paragraph( c.getBancaidbanca().getTrabalhoidtrabalho().getAlunomatricula().getMatricula()); texto.getFont().setSize(8); cell1 = new PdfPCell(texto); // celula cell1.setBorderColor(BaseColor.LIGHT_GRAY); table.addCell(cell1); texto = new Paragraph(c.getBancaidbanca().getTrabalhoidtrabalho().getAlunomatricula().getNome()); texto.getFont().setSize(8); cell2 = new PdfPCell(texto); // celula cell2.setBorderColor(BaseColor.LIGHT_GRAY); table.addCell(cell2); texto = new Paragraph(c.getBancaidbanca().getTrabalhoidtrabalho().getTitulo()); texto.getFont().setSize(8); cell3 = new PdfPCell(texto); // celula cell3.setBorderColor(BaseColor.LIGHT_GRAY); table.addCell(cell3); texto = new Paragraph(c.getBancaidbanca().getTrabalhoidtrabalho().getProfessorsiape().getNome()); texto.getFont().setSize(8); cell4 = new PdfPCell(texto); // celula cell4.setBorderColor(BaseColor.LIGHT_GRAY); table.addCell(cell4); texto = new Paragraph("Convidado"); texto.getFont().setSize(8); cell5 = new PdfPCell(texto); // celula cell5.setBorderColor(BaseColor.LIGHT_GRAY); table.addCell(cell5); texto = new Paragraph(CalendarFormat.getDataBRtoDate(c.getBancaidbanca().getDatabanca())); texto.getFont().setSize(8); cell6 = new PdfPCell(texto); // celula cell6.setBorderColor(BaseColor.LIGHT_GRAY); table.addCell(cell6); } //add a tabela document.add(table); //----------------------------------------------------- // distancia do fim da pagina float y = 70f; float x = 160f; //----------------------------------------------------- //linha PdfContentByte linha = writer.getDirectContentUnder(); linha.setLineWidth(1f); // mostrar linha linha.setGrayStroke(0.5f); // 0 = preto, 1 = branco linha.moveTo(x, y); linha.lineTo(450f, y); // ate onde a linha vai linha.stroke(); //------------------------------------------------------ //assinatura PdfContentByte a1 = writer.getDirectContentUnder(); a1.beginText(); a1.setFontAndSize(fHelvetica, 10); a1.setTextMatrix(x + 50, y - 15); // x e y a1.showText("Coordenao de Estgio Supervisionado"); a1.endText(); //------------------------------------------------------ //assinatura PdfContentByte a2 = writer.getDirectContentUnder(); a2.beginText(); a2.setFontAndSize(fHelvetica, 10); a2.setTextMatrix(x + 50, y - 27); // x e y a2.showText("FACOM/UFU"); a2.endText(); //---------------------------------------------------------------------- /*String texto = "Ata da defesa de Trabalho de Estgio Supervisionado, do Curso de Bacharelado" + "em Cincia da Computao, realizada em " + CalendarFormat.getDataBRtoDate(banca.getDatabanca()) + ", na " + banca.getLocalbanca() + ", s " + CalendarFormat.parseDateToTimeString(banca.getHorario()) + " horas, pelo aluno " + banca.getTrabalhoidtrabalho().getAlunomatricula().getNome() + " (" + banca.getTrabalhoidtrabalho().getAlunomatricula().getMatricula() + "). O trabalho " + "intitulado \"" + banca.getTrabalhoidtrabalho().getTitulo() + "\" foi apresentado pelo aluno em sesso pblica " + "com cerca de 1 hora de durao. Na ocasio, o aluno foi arguido oralmente pelos membros " + "da banca, sendo considerado ________________________ (aprovado/reprovado)."; */ //Chunk chunk1 = new Chunk(texto); //Paragraph paragraph = new Paragraph(); // paragraph.setSpacingBefore(180); //paragraph.add(chunk1); //paragraph.setAlignment(Element.ALIGN_JUSTIFIED); //document.add(paragraph); //document.add(Chunk.NEWLINE); //Paragraph paragraph2 = new Paragraph(); //paragraph2.setSpacingBefore(25); //paragraph2.add("Uberlndia, " + CalendarFormat.getDataPorExtenso(banca.getDatabanca()) + "."); //paragraph2.setAlignment(Element.ALIGN_JUSTIFIED); ///document.add(paragraph2); //document.add(Chunk.NEWLINE); //---------------------------------------------------------------------- //---------------------------------------------------------------------- //float x = 160f; //float y = 340f; // distancia do fim da pagina //retorna orientador //----------------------------------------------------- //linha //PdfContentByte linhaOrientador = writer.getDirectContentUnder(); //linhaOrientador.setLineWidth(1f); // mostrar linha //linhaOrientador.setGrayStroke(0.5f); // 0 = preto, 1 = branco //linhaOrientador.moveTo(x, y); //linhaOrientador.lineTo(450f, y); // ate onde a linha vai //linhaOrientador.stroke(); //------------------------------------------------------ //nome orientador //PdfContentByte orientador = writer.getDirectContentUnder(); //orientador.beginText(); //orientador.setFontAndSize(fHelvetica, 12); //orientador.setTextMatrix(x, y - 20); // x e y //orientador.showText("Prof.Orientador - " + banca.getTrabalhoidtrabalho().getProfessorsiape().getNome()); //orientador.setTextMatrix(x, y - 35); // x e y //orientador.showText("Presidente da banca"); //orientador.endText(); /* y = y - 100; //retorna convidados for (int i = 0; i < listaConvidados.size(); i++) { Convidado convidado = listaConvidados.get(i); if (convidado.getConfirmado() == true) { //----------------------------------------------------- //linha PdfContentByte linha = writer.getDirectContentUnder(); linha.setLineWidth(1f); // mostrar linha linha.setGrayStroke(0.5f); // 0 = preto, 1 = branco linha.moveTo(x, y); linha.lineTo(450f, y); // ate onde a linha vai linha.stroke(); //------------------------------------------------------ //nome convidado PdfContentByte conv = writer.getDirectContentUnder(); conv.beginText(); conv.setFontAndSize(fHelvetica, 12); conv.setTextMatrix(x, y - 20); // x e y conv.showText("Prof.Convidado - " + convidado.getProfessorsiape().getNome()); conv.endText(); //------------------------------------------------------ y = y - 80; } } */ //---------------------------------------------------------------------- //AlunoDAO aDAO = new AlunoDAO(); //List<Aluno> allAlunos = aDAO.getAllAlunos(); //aDAO.closeSession(); // PdfPTable table = new PdfPTable(5); // table.setSpacingBefore(35f); // table.setTotalWidth(100f); // table.setWidthPercentage(100); // float[] widths = {10, 30, 30, 13, 17};//largura das 2 colunas // table.setWidths(widths); // table.setHeaderRows(1); // // Paragraph cabecalho = new Paragraph("Matricula"); // PdfPCell cellMatricula = new PdfPCell(cabecalho); // celula // cabecalho.getFont().setStyle(Font.BOLD); // cabecalho.getFont().setSize(8); // cellMatricula.setBackgroundColor(BaseColor.LIGHT_GRAY); // cellMatricula.setBorderColor(BaseColor.LIGHT_GRAY); // cellMatricula.setHorizontalAlignment(Element.ALIGN_CENTER); // table.addCell(cellMatricula); // // cabecalho = new Paragraph("Nome"); // cabecalho.getFont().setStyle(Font.BOLD); // cabecalho.getFont().setSize(8); // PdfPCell cellNome = new PdfPCell(cabecalho); // celula // cellNome.setBackgroundColor(BaseColor.LIGHT_GRAY); // cellNome.setBorderColor(BaseColor.LIGHT_GRAY); // cellNome.setHorizontalAlignment(Element.ALIGN_CENTER); // table.addCell(cellNome); // // cabecalho = new Paragraph("Email"); // cabecalho.getFont().setStyle(Font.BOLD); // cabecalho.getFont().setSize(8); // PdfPCell cellEmail = new PdfPCell(cabecalho); // celula // cellEmail.setBackgroundColor(BaseColor.LIGHT_GRAY); // cellEmail.setBorderColor(BaseColor.LIGHT_GRAY); // cellEmail.setHorizontalAlignment(Element.ALIGN_CENTER); // table.addCell(cellEmail); // // cabecalho = new Paragraph("Telefone"); // cabecalho.getFont().setStyle(Font.BOLD); // cabecalho.getFont().setSize(8); // PdfPCell cellTelefone = new PdfPCell(cabecalho); // celula // cellTelefone.setBackgroundColor(BaseColor.LIGHT_GRAY); // cellTelefone.setBorderColor(BaseColor.LIGHT_GRAY); // cellTelefone.setHorizontalAlignment(Element.ALIGN_CENTER); // table.addCell(cellTelefone); // // cabecalho = new Paragraph("Curso"); // cabecalho.getFont().setStyle(Font.BOLD); // cabecalho.getFont().setSize(8); // PdfPCell cellCurso = new PdfPCell(cabecalho); // celula // cellCurso.setBackgroundColor(BaseColor.LIGHT_GRAY); // cellCurso.setBorderColor(BaseColor.LIGHT_GRAY); // cellCurso.setHorizontalAlignment(Element.ALIGN_CENTER); // table.addCell(cellCurso); // for (int i = 0; i < allAlunos.size(); i++) { // Aluno aluno = allAlunos.get(i); // Paragraph texto = new Paragraph(aluno.getMatricula()); // cellMatricula = new PdfPCell(texto); // celula // cellMatricula.setBorderColor(BaseColor.LIGHT_GRAY); // texto.getFont().setSize(8); // table.addCell(cellMatricula); // texto = new Paragraph(aluno.getNome()); // texto.getFont().setSize(8); // cellNome = new PdfPCell(texto); // celula // cellNome.setBorderColor(BaseColor.LIGHT_GRAY); // table.addCell(cellNome); // texto = new Paragraph(aluno.getEmail()); // texto.getFont().setSize(8); // cellEmail = new PdfPCell(texto); // celula // cellEmail.setBorderColor(BaseColor.LIGHT_GRAY); // table.addCell(cellEmail); // texto = new Paragraph(aluno.getTelefone()); // texto.getFont().setSize(8); // cellTelefone = new PdfPCell(texto); // celula // cellTelefone.setBorderColor(BaseColor.LIGHT_GRAY); // table.addCell(cellTelefone); // texto = new Paragraph(aluno.getCursoidcurso().getNomecurso()); // texto.getFont().setSize(8); // cellCurso = new PdfPCell(texto); // celula // cellCurso.setBorderColor(BaseColor.LIGHT_GRAY); // table.addCell(cellCurso); // // switch (i % 2) { // case 0: // cellMatricula.setBorderColor(BaseColor.LIGHT_GRAY); // cellMatricula.setBackgroundColor(BaseColor.LIGHT_GRAY); // break; // case 1: // // break; // } // // } //add nova pagina document.newPage(); //close document document.close(); } catch (DocumentException | IOException ex) { Logger.getLogger(RelatorioBanca.class.getName()).log(Level.SEVERE, null, ex); } //return stream com dados return baos; }
From source file:Report.RelatorioCurso.java
/** * Funo para gerar o stream do relatrio anual de atividades * * @param proforiseparada// w w w . java2s. c o m * @param sm * @param sa * @param am * @param aa * @param dtinicial * @param dtfinal * @param ano * @param cursoNome * @param coordenador * @param campus * @return ByteArrayOutputStream */ public ByteArrayOutputStream relatorioAnualDeAtividades(ArrayList<Professororientacaoseparada> proforiseparada, ArrayList<Sumariomatricula> sm, ArrayList<Sumarioaprovado> sa, ArrayList<Alunomatriculado> am, ArrayList<Alunoaprovado> aa, Date dtinicial, Date dtfinal, String ano, String cursoNome, Professor coordenador, Campus campus) { ByteArrayOutputStream baos = new ByteArrayOutputStream(); FacesContext faces = FacesContext.getCurrentInstance(); // pega o contexto da aplicacao realPath = faces.getExternalContext().getRealPath("/"); //realPath = "C:/Users/Alessandro/Desktop/TCC2/SisGES/build/web"; try { BaseFont fHelvetica = BaseFont.createFont(BaseFont.HELVETICA, "Cp1252", false); BaseFont fHelveticaBOLD = BaseFont.createFont(BaseFont.HELVETICA_BOLD, "Cp1252", false); //---------------------------------------------------------------------- // creation of the document with a certain size and certain margins // may want to use PageSize.LETTER instead Document document = new Document(PageSize.A4, 40, 40, 20, 50); document.addAuthor("SisGES"); // optional document.addSubject("Relatrio"); // opcional document.addKeywords("SisGES"); document.addCreator("iText"); //---------------------------------------------------------------------- // creation of the different writers //PdfWriter writer = PdfWriter.getInstance(document, new FileOutputStream("web/resources/report/alunosMatriculados.pdf")); PdfWriter writer = PdfWriter.getInstance(document, baos); writer.setBoxSize("header", new Rectangle(36, 54, 559, 788)); //---------------------------------------------------------------------- // ADICIONA HEADER E FOOTER //---------------------------------------------------------------------- HeaderFooter headerFooter = new HeaderFooter(); writer.setPageEvent(headerFooter); //---------------------------------------------------------------------- // ABRE DOCUMENTO PARA ESCRITA //---------------------------------------------------------------------- document.open(); //---------------------------------------------------------------------- //ADICIONAR LOGO NO DOCUMENTO //---------------------------------------------------------------------- Image logoUfu = Image.getInstance(realPath + "/resources/images/logoUFU.png"); logoUfu.scaleAbsolute(57, 56);//(largura,altura) logoUfu.isImgTemplate(); //add no template //logoUfu.setAbsolutePosition(30, 745); //x ,y por referencia do rodape document.add(logoUfu); Image logoFacom = Image.getInstance(realPath + "/resources/images/logoFacom.png"); logoFacom.scaleAbsolute(62, 55);//(largura,altura) logoFacom.setAbsolutePosition(92, 767); //x ,y por referencia do rodape //logoFacom.isImgTemplate(); //add no template document.add(logoFacom); //---------------------------------------------------------------------- //ADICIONAR CABEALHO //---------------------------------------------------------------------- PdfContentByte univ = writer.getDirectContentUnder(); univ.beginText(); univ.setFontAndSize(fHelvetica, 10); univ.setTextMatrix(349, 805); // x e y univ.showText("UNIVERSIDADE FEDERAL DE UBERLNDIA"); univ.setTextMatrix(405, 790); // x e y univ.showText("FACULDADE DE COMPUTAO"); univ.setTextMatrix(403, 775); // x e y univ.showText("COORDENADORIA DE ESTGIO "); univ.endText(); String info = "Campus Universitrio - " + campus.getNomecampus() + " - CEP " + campus.getCep() + " - " + campus.getCidade() + " - " + campus.getEstadosigla().toUpperCase(); Chunk txtCampus = new Chunk(info); Paragraph paragraph0 = new Paragraph(); paragraph0.setSpacingBefore(-10); paragraph0.setFont(new Font(fHelvetica, 7)); paragraph0.add(txtCampus); paragraph0.setAlignment(Element.ALIGN_RIGHT); document.add(paragraph0); info = "Telefone: " + coordenador.getTelefone() + " Email: " + coordenador.getEmail(); Chunk txtCoordenador = new Chunk(info); Paragraph paragraph1 = new Paragraph(); paragraph1.setSpacingBefore(-5); paragraph1.setSpacingAfter(10); paragraph1.setFont(new Font(fHelvetica, 7)); paragraph1.add(txtCoordenador); paragraph1.setAlignment(Element.ALIGN_RIGHT); document.add(paragraph1); //---------------------------------------------------------------------- //ADICIONAR TITULO //---------------------------------------------------------------------- PdfContentByte t1 = writer.getDirectContentUnder(); t1.beginText(); t1.setFontAndSize(fHelveticaBOLD, 12); t1.setTextMatrix(175, 700); // x e y t1.showText("RELATRIO ANUAL DE ATIVIDADES - " + ano); t1.endText(); PdfContentByte t2 = writer.getDirectContentUnder(); t2.beginText(); t2.setFontAndSize(fHelveticaBOLD, 12); t2.setTextMatrix(160, 680); // x e y if (cursoNome.contains("sistema") || cursoNome.contains("Sistemas") || cursoNome.contains("Sistema")) { t2.showText("BACHARELADO EM SISTEMAS DE INFORMAO"); cursoNome = "Sistemas de Informao"; } else if (cursoNome.contains("cincia") || cursoNome.contains("Cincias") || cursoNome.contains("Cincia")) { t2.showText("BACHARELADO EM CINCIA DA COMPUTAO"); cursoNome = "Cincia da Computao"; } else { t2.showText("BACHARELADO EM " + cursoNome.toUpperCase()); } t2.endText(); Paragraph p0 = new Paragraph("1. Introduo"); p0.setSpacingBefore(95); p0.getFont().setStyle(Font.BOLD); p0.getFont().setSize(12); document.add(p0); //---------------------------------------------------------------------- String textoIntro = "Este documento tem o objetivo de apresentar as atividades da coordenao de estgio " + "supervisionado da Faculdade de Computao da Universidade Federal de Uberlndia. As principais " + "atividades desenvolvidas foram:"; Chunk chunk1 = new Chunk(textoIntro); Paragraph paragraph = new Paragraph(); paragraph.setSpacingBefore(20); paragraph.setSpacingAfter(10); paragraph.setFont(new Font(fHelvetica, 12)); paragraph.add(chunk1); paragraph.setAlignment(Element.ALIGN_JUSTIFIED); document.add(paragraph); //lista List overview = new List(false, 10); overview.setAutoindent(true); overview.add("Aprovao dos documentos de matricula do estgio supervisionado;"); overview.add("Alocao de professores orientadores de estgio;"); overview.add( "Matrcula de alunos do curso de " + cursoNome + " na disciplina de estgio supervisionado;"); overview.add("Acompanhamento das atividades do estagirio na empresa;"); overview.add("Aprovao do Relatrio parcial/final do estagirio."); document.add(overview); String textoIntro2 = "Os resultados das atividades listadas so apresentados nas prximas sees."; Chunk chunk2 = new Chunk(textoIntro2); Paragraph paragraph2 = new Paragraph(); paragraph2.setSpacingBefore(10); paragraph2.setSpacingAfter(10); paragraph2.setFont(new Font(fHelvetica, 12)); paragraph2.add(chunk2); paragraph2.setAlignment(Element.ALIGN_JUSTIFIED); document.add(paragraph2); Paragraph p01 = new Paragraph("2. Sumrio das Atividades"); p01.setSpacingBefore(5); p01.getFont().setStyle(Font.BOLD); p01.getFont().setSize(12); document.add(p01); //---------------------------------------------------------------------- //FAZER SUMARIO //---------------------------------------------------------------------- PdfPTable tabelaSumario = new PdfPTable(4); tabelaSumario.setTotalWidth(100f); tabelaSumario.setWidthPercentage(100); float[] widths = { 40, 20, 20, 20 };//largura das colunas tabelaSumario.setWidths(widths); tabelaSumario.setHeaderRows(1); Paragraph l1 = new Paragraph(" "); l1.getFont().setStyle(Font.BOLD); l1.getFont().setSize(8); PdfPCell cell1 = new PdfPCell(l1); // celula cell1.setBackgroundColor(BaseColor.WHITE); cell1.setBorderColor(BaseColor.WHITE); cell1.setHorizontalAlignment(Element.ALIGN_CENTER); tabelaSumario.addCell(cell1); l1 = new Paragraph("Matrculas"); l1.getFont().setStyle(Font.BOLD); l1.getFont().setSize(8); PdfPCell cell2 = new PdfPCell(l1); // celula cell2.setBackgroundColor(BaseColor.LIGHT_GRAY); cell2.setBorderColor(BaseColor.LIGHT_GRAY); cell2.setHorizontalAlignment(Element.ALIGN_CENTER); tabelaSumario.addCell(cell2); l1 = new Paragraph("Aprovaes"); l1.getFont().setStyle(Font.BOLD); l1.getFont().setSize(8); PdfPCell cell3 = new PdfPCell(l1); // celula cell3.setBackgroundColor(BaseColor.LIGHT_GRAY); cell3.setBorderColor(BaseColor.LIGHT_GRAY); cell3.setHorizontalAlignment(Element.ALIGN_CENTER); tabelaSumario.addCell(cell3); l1 = new Paragraph("Reprovaes"); l1.getFont().setStyle(Font.BOLD); l1.getFont().setSize(8); PdfPCell cell4 = new PdfPCell(l1); // celula cell4.setBackgroundColor(BaseColor.LIGHT_GRAY); cell4.setBorderColor(BaseColor.LIGHT_GRAY); cell4.setHorizontalAlignment(Element.ALIGN_CENTER); tabelaSumario.addCell(cell4); int i = 0; for (Sumariomatricula m : sm) { Sumarioaprovado a = sa.get(i); Paragraph texto = new Paragraph(m.getTipoestagio()); cell1 = new PdfPCell(texto); // celula cell1.setBorderColor(BaseColor.LIGHT_GRAY); cell1.setHorizontalAlignment(Element.ALIGN_LEFT); texto.getFont().setSize(8); tabelaSumario.addCell(cell1); if (m.getMatriculas() != null) { texto = new Paragraph(String.valueOf(m.getMatriculas())); cell1 = new PdfPCell(texto); // celula cell1.setBorderColor(BaseColor.LIGHT_GRAY); cell1.setHorizontalAlignment(Element.ALIGN_CENTER); texto.getFont().setSize(8); tabelaSumario.addCell(cell1); } else { texto = new Paragraph(String.valueOf(0)); cell1 = new PdfPCell(texto); // celula cell1.setBorderColor(BaseColor.LIGHT_GRAY); cell1.setHorizontalAlignment(Element.ALIGN_CENTER); texto.getFont().setSize(8); tabelaSumario.addCell(cell1); } if (m.getTipoestagio().equalsIgnoreCase("Estgio Obrigatrio") && a.getTipoestagio().equalsIgnoreCase("Estgio Obrigatrio")) { if (a.getAprovados() != null) { //aprovados texto = new Paragraph(String.valueOf(a.getAprovados())); cell1 = new PdfPCell(texto); // celula cell1.setBorderColor(BaseColor.LIGHT_GRAY); cell1.setHorizontalAlignment(Element.ALIGN_CENTER); texto.getFont().setSize(8); tabelaSumario.addCell(cell1); } else { texto = new Paragraph(String.valueOf(0)); cell1 = new PdfPCell(texto); // celula cell1.setBorderColor(BaseColor.LIGHT_GRAY); cell1.setHorizontalAlignment(Element.ALIGN_CENTER); texto.getFont().setSize(8); tabelaSumario.addCell(cell1); } //reprovados texto = new Paragraph(String.valueOf(0)); cell1 = new PdfPCell(texto); // celula cell1.setBorderColor(BaseColor.LIGHT_GRAY); cell1.setHorizontalAlignment(Element.ALIGN_CENTER); texto.getFont().setSize(8); tabelaSumario.addCell(cell1); } else if (m.getTipoestagio().equalsIgnoreCase("Estgio No Obrigatrio") && a.getTipoestagio().equalsIgnoreCase("Estgio No Obrigatrio")) { if (a.getAprovados() != null) { //aprovados texto = new Paragraph(String.valueOf(a.getAprovados())); cell1 = new PdfPCell(texto); // celula cell1.setBorderColor(BaseColor.LIGHT_GRAY); cell1.setHorizontalAlignment(Element.ALIGN_CENTER); texto.getFont().setSize(8); tabelaSumario.addCell(cell1); } else { texto = new Paragraph(String.valueOf(0)); cell1 = new PdfPCell(texto); // celula cell1.setBorderColor(BaseColor.LIGHT_GRAY); cell1.setHorizontalAlignment(Element.ALIGN_CENTER); texto.getFont().setSize(8); tabelaSumario.addCell(cell1); } //reprovados texto = new Paragraph(String.valueOf(0)); cell1 = new PdfPCell(texto); // celula cell1.setBorderColor(BaseColor.LIGHT_GRAY); cell1.setHorizontalAlignment(Element.ALIGN_CENTER); texto.getFont().setSize(8); tabelaSumario.addCell(cell1); } i++; } tabelaSumario.setSpacingBefore(20); tabelaSumario.setSpacingAfter(20); tabelaSumario.completeRow(); document.add(tabelaSumario); //---------------------------------------------------------------------- //ALUNOS MATRICULADOS //---------------------------------------------------------------------- Paragraph p1 = new Paragraph("3. Alunos Matriculados"); p1.setSpacingBefore(5); p1.getFont().setStyle(Font.BOLD); p1.getFont().setSize(12); document.add(p1); p01 = new Paragraph("Estgio Obrigatrio"); p01.setSpacingBefore(5); p01.getFont().setStyle(Font.BOLD); p01.getFont().setSize(10); document.add(p01); //---------------------------------------------------------------------- //FAZER TABELA ALUNOS MATRICULADOS ESTAGIO OBRIGATORIO //---------------------------------------------------------------------- PdfPTable tabelaAlunoMatriculadoEO = new PdfPTable(4); tabelaAlunoMatriculadoEO.setTotalWidth(100f); tabelaAlunoMatriculadoEO.setWidthPercentage(100); float[] widthsEO = { 20, 30, 30, 20 };//largura das colunas tabelaAlunoMatriculadoEO.setWidths(widthsEO); tabelaAlunoMatriculadoEO.setHeaderRows(1); l1 = new Paragraph("Matrculas"); l1.getFont().setStyle(Font.BOLD); l1.getFont().setSize(8); cell1 = new PdfPCell(l1); // celula cell1.setBackgroundColor(BaseColor.LIGHT_GRAY); cell1.setBorderColor(BaseColor.LIGHT_GRAY); cell1.setHorizontalAlignment(Element.ALIGN_CENTER); tabelaAlunoMatriculadoEO.addCell(cell1); l1 = new Paragraph("Nome"); l1.getFont().setStyle(Font.BOLD); l1.getFont().setSize(8); cell1 = new PdfPCell(l1); // celula cell1.setBackgroundColor(BaseColor.LIGHT_GRAY); cell1.setBorderColor(BaseColor.LIGHT_GRAY); cell1.setHorizontalAlignment(Element.ALIGN_CENTER); tabelaAlunoMatriculadoEO.addCell(cell1); l1 = new Paragraph("Orientador"); l1.getFont().setStyle(Font.BOLD); l1.getFont().setSize(8); cell1 = new PdfPCell(l1); // celula cell1.setBackgroundColor(BaseColor.LIGHT_GRAY); cell1.setBorderColor(BaseColor.LIGHT_GRAY); cell1.setHorizontalAlignment(Element.ALIGN_CENTER); tabelaAlunoMatriculadoEO.addCell(cell1); l1 = new Paragraph("Data de Matrcula"); l1.getFont().setStyle(Font.BOLD); l1.getFont().setSize(8); cell1 = new PdfPCell(l1); // celula cell1.setBackgroundColor(BaseColor.LIGHT_GRAY); cell1.setBorderColor(BaseColor.LIGHT_GRAY); cell1.setHorizontalAlignment(Element.ALIGN_CENTER); tabelaAlunoMatriculadoEO.addCell(cell1); for (int j = 0; j < am.size(); j++) { Alunomatriculado amat = am.get(j); if (amat.getTipoestagio().equalsIgnoreCase("Estgio Obrigatrio") || amat.getTipoestagio().equalsIgnoreCase("Estgio Obrigatorio") || amat.getTipoestagio().equalsIgnoreCase("Estagio Obrigatorio")) { Paragraph texto = new Paragraph(amat.getMatricula()); cell1 = new PdfPCell(texto); // celula cell1.setBorderColor(BaseColor.LIGHT_GRAY); cell1.setHorizontalAlignment(Element.ALIGN_CENTER); texto.getFont().setSize(8); tabelaAlunoMatriculadoEO.addCell(cell1); texto = new Paragraph(amat.getNome()); cell1 = new PdfPCell(texto); // celula cell1.setBorderColor(BaseColor.LIGHT_GRAY); cell1.setHorizontalAlignment(Element.ALIGN_CENTER); texto.getFont().setSize(8); tabelaAlunoMatriculadoEO.addCell(cell1); texto = new Paragraph(amat.getOrientador()); cell1 = new PdfPCell(texto); // celula cell1.setBorderColor(BaseColor.LIGHT_GRAY); cell1.setHorizontalAlignment(Element.ALIGN_CENTER); texto.getFont().setSize(8); tabelaAlunoMatriculadoEO.addCell(cell1); texto = new Paragraph(CalendarFormat.getDataBRtoDate(amat.getDatamatricula())); cell1 = new PdfPCell(texto); // celula cell1.setBorderColor(BaseColor.LIGHT_GRAY); cell1.setHorizontalAlignment(Element.ALIGN_CENTER); texto.getFont().setSize(8); tabelaAlunoMatriculadoEO.addCell(cell1); } } tabelaAlunoMatriculadoEO.setSpacingBefore(20); tabelaAlunoMatriculadoEO.setSpacingAfter(20); tabelaAlunoMatriculadoEO.completeRow(); document.add(tabelaAlunoMatriculadoEO); //---------------------------------------------------------------------- //FAZER TABELA ALUNOS MATRICULADOS ESTAGIO NO OBRIGATORIO //---------------------------------------------------------------------- p01 = new Paragraph("Estgio No Obrigatrio"); p01.setSpacingBefore(5); p01.getFont().setStyle(Font.BOLD); p01.getFont().setSize(10); document.add(p01); PdfPTable tabelaAlunoMatriculadoENO = new PdfPTable(4); tabelaAlunoMatriculadoENO.setTotalWidth(100f); tabelaAlunoMatriculadoENO.setWidthPercentage(100); float[] widthsENO = { 20, 30, 30, 20 };//largura das colunas tabelaAlunoMatriculadoENO.setWidths(widthsENO); tabelaAlunoMatriculadoENO.setHeaderRows(1); l1 = new Paragraph("Matrculas"); l1.getFont().setStyle(Font.BOLD); l1.getFont().setSize(8); cell1 = new PdfPCell(l1); // celula cell1.setBackgroundColor(BaseColor.LIGHT_GRAY); cell1.setBorderColor(BaseColor.LIGHT_GRAY); cell1.setHorizontalAlignment(Element.ALIGN_CENTER); tabelaAlunoMatriculadoENO.addCell(cell1); l1 = new Paragraph("Nome"); l1.getFont().setStyle(Font.BOLD); l1.getFont().setSize(8); cell1 = new PdfPCell(l1); // celula cell1.setBackgroundColor(BaseColor.LIGHT_GRAY); cell1.setBorderColor(BaseColor.LIGHT_GRAY); cell1.setHorizontalAlignment(Element.ALIGN_CENTER); tabelaAlunoMatriculadoENO.addCell(cell1); l1 = new Paragraph("Orientador"); l1.getFont().setStyle(Font.BOLD); l1.getFont().setSize(8); cell1 = new PdfPCell(l1); // celula cell1.setBackgroundColor(BaseColor.LIGHT_GRAY); cell1.setBorderColor(BaseColor.LIGHT_GRAY); cell1.setHorizontalAlignment(Element.ALIGN_CENTER); tabelaAlunoMatriculadoENO.addCell(cell1); l1 = new Paragraph("Data de Matrcula"); l1.getFont().setStyle(Font.BOLD); l1.getFont().setSize(8); cell1 = new PdfPCell(l1); // celula cell1.setBackgroundColor(BaseColor.LIGHT_GRAY); cell1.setBorderColor(BaseColor.LIGHT_GRAY); cell1.setHorizontalAlignment(Element.ALIGN_CENTER); tabelaAlunoMatriculadoENO.addCell(cell1); for (int k = 0; k < am.size(); k++) { Alunomatriculado amat = am.get(k); if (amat.getTipoestagio().equalsIgnoreCase("Estgio No Obrigatrio") || amat.getTipoestagio().equalsIgnoreCase("Estgio No Obrigatorio") || amat.getTipoestagio().equalsIgnoreCase("Estagio No Obrigatorio")) { Paragraph texto = new Paragraph(amat.getMatricula()); cell1 = new PdfPCell(texto); // celula cell1.setBorderColor(BaseColor.LIGHT_GRAY); cell1.setHorizontalAlignment(Element.ALIGN_CENTER); texto.getFont().setSize(8); tabelaAlunoMatriculadoENO.addCell(cell1); texto = new Paragraph(amat.getNome()); cell1 = new PdfPCell(texto); // celula cell1.setBorderColor(BaseColor.LIGHT_GRAY); cell1.setHorizontalAlignment(Element.ALIGN_CENTER); texto.getFont().setSize(8); tabelaAlunoMatriculadoENO.addCell(cell1); texto = new Paragraph(amat.getOrientador()); cell1 = new PdfPCell(texto); // celula cell1.setBorderColor(BaseColor.LIGHT_GRAY); cell1.setHorizontalAlignment(Element.ALIGN_CENTER); texto.getFont().setSize(8); tabelaAlunoMatriculadoENO.addCell(cell1); texto = new Paragraph(CalendarFormat.getDataBRtoDate(amat.getDatamatricula())); cell1 = new PdfPCell(texto); // celula cell1.setBorderColor(BaseColor.LIGHT_GRAY); cell1.setHorizontalAlignment(Element.ALIGN_CENTER); texto.getFont().setSize(8); tabelaAlunoMatriculadoENO.addCell(cell1); } } tabelaAlunoMatriculadoENO.setSpacingBefore(20); tabelaAlunoMatriculadoENO.setSpacingAfter(20); tabelaAlunoMatriculadoENO.completeRow(); document.add(tabelaAlunoMatriculadoENO); //add nova pagina //document.newPage(); //---------------------------------------------------------------------- //ALUNOS APROVADOS EM ESTAGIO OBRIGATORIO //---------------------------------------------------------------------- p1 = new Paragraph("4. Alunos Aprovados em Estgio Obrigatrio"); p1.setSpacingBefore(20); p1.getFont().setStyle(Font.BOLD); p1.getFont().setSize(12); document.add(p1); PdfPTable tabelaAlunoAprovadoEO = new PdfPTable(5); tabelaAlunoAprovadoEO.setTotalWidth(100f); tabelaAlunoAprovadoEO.setWidthPercentage(100); float[] widthsAprovadoEO = { 20, 30, 30, 10, 10 };//largura das colunas tabelaAlunoAprovadoEO.setWidths(widthsAprovadoEO); tabelaAlunoAprovadoEO.setHeaderRows(1); l1 = new Paragraph("Matrculas"); l1.getFont().setStyle(Font.BOLD); l1.getFont().setSize(8); cell1 = new PdfPCell(l1); // celula cell1.setBackgroundColor(BaseColor.LIGHT_GRAY); cell1.setBorderColor(BaseColor.LIGHT_GRAY); cell1.setHorizontalAlignment(Element.ALIGN_CENTER); tabelaAlunoAprovadoEO.addCell(cell1); l1 = new Paragraph("Nome"); l1.getFont().setStyle(Font.BOLD); l1.getFont().setSize(8); cell1 = new PdfPCell(l1); // celula cell1.setBackgroundColor(BaseColor.LIGHT_GRAY); cell1.setBorderColor(BaseColor.LIGHT_GRAY); cell1.setHorizontalAlignment(Element.ALIGN_CENTER); tabelaAlunoAprovadoEO.addCell(cell1); l1 = new Paragraph("Orientador"); l1.getFont().setStyle(Font.BOLD); l1.getFont().setSize(8); cell1 = new PdfPCell(l1); // celula cell1.setBackgroundColor(BaseColor.LIGHT_GRAY); cell1.setBorderColor(BaseColor.LIGHT_GRAY); cell1.setHorizontalAlignment(Element.ALIGN_CENTER); tabelaAlunoAprovadoEO.addCell(cell1); l1 = new Paragraph("Data de Matrcula"); l1.getFont().setStyle(Font.BOLD); l1.getFont().setSize(8); cell1 = new PdfPCell(l1); // celula cell1.setBackgroundColor(BaseColor.LIGHT_GRAY); cell1.setBorderColor(BaseColor.LIGHT_GRAY); cell1.setHorizontalAlignment(Element.ALIGN_CENTER); tabelaAlunoAprovadoEO.addCell(cell1); l1 = new Paragraph("Data de Finalizao"); l1.getFont().setStyle(Font.BOLD); l1.getFont().setSize(8); cell1 = new PdfPCell(l1); // celula cell1.setBackgroundColor(BaseColor.LIGHT_GRAY); cell1.setBorderColor(BaseColor.LIGHT_GRAY); cell1.setHorizontalAlignment(Element.ALIGN_CENTER); tabelaAlunoAprovadoEO.addCell(cell1); for (int t = 0; t < aa.size(); t++) { Alunoaprovado aprov = aa.get(t); if (aprov.getTipoestagio().equalsIgnoreCase("Estgio Obrigatrio") || aprov.getTipoestagio().equalsIgnoreCase("Estgio Obrigatorio") || aprov.getTipoestagio().equalsIgnoreCase("Estagio Obrigatorio")) { Paragraph texto = new Paragraph(aprov.getMatricula()); cell1 = new PdfPCell(texto); // celula cell1.setBorderColor(BaseColor.LIGHT_GRAY); cell1.setHorizontalAlignment(Element.ALIGN_CENTER); texto.getFont().setSize(8); tabelaAlunoAprovadoEO.addCell(cell1); texto = new Paragraph(aprov.getNome()); cell1 = new PdfPCell(texto); // celula cell1.setBorderColor(BaseColor.LIGHT_GRAY); cell1.setHorizontalAlignment(Element.ALIGN_CENTER); texto.getFont().setSize(8); tabelaAlunoAprovadoEO.addCell(cell1); texto = new Paragraph(aprov.getOrientador()); cell1 = new PdfPCell(texto); // celula cell1.setBorderColor(BaseColor.LIGHT_GRAY); cell1.setHorizontalAlignment(Element.ALIGN_CENTER); texto.getFont().setSize(8); tabelaAlunoAprovadoEO.addCell(cell1); texto = new Paragraph(CalendarFormat.getDataBRtoDate(aprov.getDatamatricula())); cell1 = new PdfPCell(texto); // celula cell1.setBorderColor(BaseColor.LIGHT_GRAY); cell1.setHorizontalAlignment(Element.ALIGN_CENTER); texto.getFont().setSize(8); tabelaAlunoAprovadoEO.addCell(cell1); texto = new Paragraph(CalendarFormat.getDataBRtoDate(aprov.getDatafinalizacao())); cell1 = new PdfPCell(texto); // celula cell1.setBorderColor(BaseColor.LIGHT_GRAY); cell1.setHorizontalAlignment(Element.ALIGN_CENTER); texto.getFont().setSize(8); tabelaAlunoAprovadoEO.addCell(cell1); } } tabelaAlunoAprovadoEO.setSpacingBefore(20); tabelaAlunoAprovadoEO.setSpacingAfter(20); tabelaAlunoAprovadoEO.completeRow(); document.add(tabelaAlunoAprovadoEO); //---------------------------------------------------------------------- //ALUNOS APROVADOS EM ESTAGIO OBRIGATORIO //---------------------------------------------------------------------- p1 = new Paragraph("5. Participao dos professores FACOM"); p1.setSpacingBefore(20); p1.getFont().setStyle(Font.BOLD); p1.getFont().setSize(12); document.add(p1); // PdfPTable tabelaProfOriSeparada = new PdfPTable(3); tabelaProfOriSeparada.setTotalWidth(100f); tabelaProfOriSeparada.setWidthPercentage(100); float[] widths0 = { 60, 20, 20 };//largura das colunas tabelaProfOriSeparada.setWidths(widths0); tabelaProfOriSeparada.setHeaderRows(1); l1 = new Paragraph("Professor"); l1.getFont().setStyle(Font.BOLD); l1.getFont().setSize(8); cell1 = new PdfPCell(l1); // celula cell1.setBackgroundColor(BaseColor.LIGHT_GRAY); cell1.setBorderColor(BaseColor.LIGHT_GRAY); cell1.setHorizontalAlignment(Element.ALIGN_CENTER); tabelaProfOriSeparada.addCell(cell1); l1 = new Paragraph("Orientaes Estgio Obrigatrio"); l1.getFont().setStyle(Font.BOLD); l1.getFont().setSize(8); cell1 = new PdfPCell(l1); // celula cell1.setBackgroundColor(BaseColor.LIGHT_GRAY); cell1.setBorderColor(BaseColor.LIGHT_GRAY); cell1.setHorizontalAlignment(Element.ALIGN_CENTER); tabelaProfOriSeparada.addCell(cell1); l1 = new Paragraph("Orientaes Estgio No Obrigatrio"); l1.getFont().setStyle(Font.BOLD); l1.getFont().setSize(8); cell1 = new PdfPCell(l1); // celula cell1.setBackgroundColor(BaseColor.LIGHT_GRAY); cell1.setBorderColor(BaseColor.LIGHT_GRAY); cell1.setHorizontalAlignment(Element.ALIGN_CENTER); tabelaProfOriSeparada.addCell(cell1); for (int ii = 0; ii < proforiseparada.size(); ii++) { Professororientacaoseparada profoe = proforiseparada.get(ii); Paragraph texto = new Paragraph(profoe.getNome()); cell1 = new PdfPCell(texto); // celula cell1.setBorderColor(BaseColor.LIGHT_GRAY); cell1.setHorizontalAlignment(Element.ALIGN_LEFT); texto.getFont().setSize(8); tabelaProfOriSeparada.addCell(cell1); texto = new Paragraph(profoe.getOrientacoesestobrigatorio().toString()); cell1 = new PdfPCell(texto); // celula cell1.setBorderColor(BaseColor.LIGHT_GRAY); cell1.setHorizontalAlignment(Element.ALIGN_CENTER); texto.getFont().setSize(8); tabelaProfOriSeparada.addCell(cell1); texto = new Paragraph(profoe.getOrientacoesestnaoobrigatorio().toString()); cell1 = new PdfPCell(texto); // celula cell1.setBorderColor(BaseColor.LIGHT_GRAY); cell1.setHorizontalAlignment(Element.ALIGN_CENTER); texto.getFont().setSize(8); tabelaProfOriSeparada.addCell(cell1); } tabelaProfOriSeparada.setSpacingBefore(20); tabelaProfOriSeparada.setSpacingAfter(20); tabelaProfOriSeparada.completeRow(); document.add(tabelaProfOriSeparada); //---------------------------------------------------------------------- p1 = new Paragraph("6. Observaes e Consideraes Finais"); p1.setSpacingBefore(20); p1.getFont().setStyle(Font.BOLD); p1.getFont().setSize(12); document.add(p1); String text6 = "O processo de matrcula, acompanhamento, composio de bancas e " + "defesas ocorreu sem nenhum problema ou acontecimento excepcional."; chunk1 = new Chunk(text6); paragraph = new Paragraph(); paragraph.setSpacingBefore(20); paragraph.setSpacingAfter(10); paragraph.setFont(new Font(fHelvetica, 12)); paragraph.add(chunk1); paragraph.setAlignment(Element.ALIGN_JUSTIFIED); document.add(paragraph); document.add(Chunk.NEWLINE); document.add(Chunk.NEWLINE); document.add(Chunk.NEWLINE); //----------------------------------------------------- Paragraph paragraphCab = new Paragraph(); paragraphCab.setSpacingBefore(25); paragraphCab.add("Uberlndia, " + CalendarFormat.getDataPorExtenso(CalendarFormat.getDataSO()) + "."); paragraphCab.setAlignment(Element.ALIGN_JUSTIFIED); document.add(paragraphCab); document.add(Chunk.NEWLINE); //----------------------------------------------------- // distancia do fim da pagina float y = 120f; float x = 160f; //----------------------------------------------------- //linha PdfContentByte linha = writer.getDirectContentUnder(); linha.setLineWidth(1f); // mostrar linha linha.setGrayStroke(0.5f); // 0 = preto, 1 = branco linha.moveTo(x, y); linha.lineTo(450f, y); // ate onde a linha vai linha.stroke(); //assinatura PdfContentByte a0 = writer.getDirectContentUnder(); a0.beginText(); a0.setFontAndSize(fHelvetica, 10); a0.setTextMatrix(x + 50, y - 15); // x e y a0.showText("Prof. " + coordenador.getNome()); a0.endText(); PdfContentByte a1 = writer.getDirectContentUnder(); a1.beginText(); a1.setFontAndSize(fHelvetica, 10); a1.setTextMatrix(x + 50, y - 30); // x e y a1.showText("Coordenao de Estgio Supervisionado"); a1.endText(); //assinatura PdfContentByte a2 = writer.getDirectContentUnder(); a2.beginText(); a2.setFontAndSize(fHelvetica, 10); a2.setTextMatrix(x + 50, y - 45); // x e y a2.showText("SIAPE: " + coordenador.getSiape()); a2.endText(); //---------------------------------------------------------------------- //FIM DO DOCUMENTO //add nova pagina document.newPage(); //close document document.close(); //---------------------------------------------------------------------- } catch (DocumentException | IOException ex) { Logger.getLogger(RelatorioAluno.class.getName()).log(Level.SEVERE, null, ex); } //return stream return baos; }
From source file:Report.RelatorioProfessor.java
/** * Funo para gerar o stream do relatorio de orientaes por professor * * @param lOrientacao/*from ww w . j ava2 s .com*/ * @param dtinicial * @param dtfinal * @param coordenador * @param campus * @return ByteArrayOutputStream */ public ByteArrayOutputStream relatorioProfessorOrientacao(List<Professororientacao> lOrientacao, Date dtinicial, Date dtfinal, Professor coordenador, Campus campus) { ByteArrayOutputStream baos = new ByteArrayOutputStream(); FacesContext faces = FacesContext.getCurrentInstance(); //pega o contexto da aplicacao String realPath = faces.getExternalContext().getRealPath("/"); try { BaseFont fHelvetica = BaseFont.createFont(BaseFont.HELVETICA, "Cp1252", false); //---------------------------------------------------------------------- //creation of the document with a certain size and certain margins //may want to use PageSize.LETTER instead Document document = new Document(PageSize.A4, 40, 40, 20, 50); document.addAuthor("SisGES"); // optional document.addSubject("Relatrio"); // opcional document.addKeywords("SisGES"); document.addCreator("iText"); //---------------------------------------------------------------------- // creation of the different writers //PdfWriter writer = PdfWriter.getInstance(document, new FileOutputStream("web/resources/report/alunosMatriculados.pdf")); PdfWriter writer = PdfWriter.getInstance(document, baos); writer.setBoxSize("header", new Rectangle(36, 54, 559, 788)); //---------------------------------------------------------------------- // ADICIONA HEADER E FOOTER //---------------------------------------------------------------------- HeaderFooter headerFooter = new HeaderFooter(); headerFooter.setY(760f); writer.setPageEvent(headerFooter); //---------------------------------------------------------------------- //ABRE DOCUMENTO PARA ESCRITA //---------------------------------------------------------------------- document.open(); //---------------------------------------------------------------------- //ADICIONAR LOGO NO DOCUMENTO //---------------------------------------------------------------------- Image logoUfu = Image.getInstance(realPath + "/resources/images/logoUFUAta.png"); logoUfu.scaleAbsolute(155, 39);//(largura,altura) logoUfu.isImgTemplate(); //add no template document.add(logoUfu); //---------------------------------------------------------------------- //ADICIONAR CABEALHO //---------------------------------------------------------------------- PdfContentByte univ = writer.getDirectContentUnder(); univ.beginText(); univ.setFontAndSize(fHelvetica, 10); univ.setTextMatrix(349, 816); // x e y univ.showText("UNIVERSIDADE FEDERAL DE UBERLNDIA"); univ.setTextMatrix(405, 802); // x e y univ.showText("FACULDADE DE COMPUTAO"); univ.setTextMatrix(403, 788); // x e y univ.showText("COORDENADORIA DE ESTGIO "); univ.endText(); String info = "Campus Universitrio - " + campus.getNomecampus() + " - CEP " + campus.getCep() + " - " + campus.getCidade() + " - " + campus.getEstadosigla().toUpperCase(); Chunk txtCampus = new Chunk(info); Paragraph paragraph0 = new Paragraph(); paragraph0.setSpacingBefore(-10); paragraph0.setFont(new Font(fHelvetica, 7)); paragraph0.add(txtCampus); paragraph0.setAlignment(Element.ALIGN_RIGHT); document.add(paragraph0); info = "Telefone: " + coordenador.getTelefone() + " Email: " + coordenador.getEmail(); Chunk txtCoordenador = new Chunk(info); Paragraph paragraph1 = new Paragraph(); paragraph1.setSpacingBefore(-5); paragraph1.setSpacingAfter(10); paragraph1.setFont(new Font(fHelvetica, 7)); paragraph1.add(txtCoordenador); paragraph1.setAlignment(Element.ALIGN_RIGHT); document.add(paragraph1); // PdfContentByte univ = writer.getDirectContentUnder(); // univ.beginText(); // univ.setFontAndSize(fHelvetica, 12); // univ.setTextMatrix(200, 815); // x e y // univ.showText("UNIVERSIDADE FEDERAL DE UBERLNDIA"); // univ.setTextMatrix(235, 800); // x e y // univ.showText("FACULDADE DE COMPUTAO"); // univ.endText(); // // PdfContentByte univEnd = writer.getDirectContentUnder(); // univEnd.beginText(); // univEnd.setFontAndSize(fHelvetica, 7); // univEnd.setTextMatrix(210, 785); // x e y // univEnd.showText("Campus Universitrio - Santa Mnica - CEP 38408-100 - Uberlndia - MG"); // univEnd.setTextMatrix(260, 775); // x e y // univEnd.showText("Telefone: (34)3239-4144 ou 3239-4393"); // univEnd.endText(); //---------------------------------------------------------------------- //ADICIONAR TITULO //---------------------------------------------------------------------- PdfContentByte t1 = writer.getDirectContentUnder(); t1.beginText(); t1.setFontAndSize(fHelvetica, 14); t1.setTextMatrix(180, 730); // x e y t1.showText("Participao dos professores FACOM"); t1.endText(); PdfContentByte t2 = writer.getDirectContentUnder(); t2.beginText(); t2.setFontAndSize(fHelvetica, 12); t2.setTextMatrix(195, 705); // x e y String periodo = CalendarFormat.getDataBRtoDate(dtinicial) + " at " + CalendarFormat.getDataBRtoDate(dtfinal); t2.showText("Perodo: " + periodo); t2.endText(); //---------------------------------------------------------------------- //TABELA PdfPTable table = new PdfPTable(4); //espao do inicio da pagina table.setSpacingBefore(100f); table.setTotalWidth(100f); table.setWidthPercentage(100); float[] widths = { 20, 30, 35, 15 };//largura das colunas table.setWidths(widths); table.setHeaderRows(1); //CABEALHO DA TABELA Paragraph cabecalho = new Paragraph("Siape"); PdfPCell cell1 = new PdfPCell(cabecalho); // celula cabecalho.getFont().setStyle(Font.BOLD); cabecalho.getFont().setSize(8); cell1.setBackgroundColor(BaseColor.LIGHT_GRAY); cell1.setBorderColor(BaseColor.LIGHT_GRAY); cell1.setHorizontalAlignment(Element.ALIGN_CENTER); table.addCell(cell1); cabecalho = new Paragraph("Professor"); cabecalho.getFont().setStyle(Font.BOLD); cabecalho.getFont().setSize(8); PdfPCell cell2 = new PdfPCell(cabecalho); // celula cell2.setBackgroundColor(BaseColor.LIGHT_GRAY); cell2.setBorderColor(BaseColor.LIGHT_GRAY); cell2.setHorizontalAlignment(Element.ALIGN_CENTER); table.addCell(cell2); cabecalho = new Paragraph("Email do Professor"); cabecalho.getFont().setStyle(Font.BOLD); cabecalho.getFont().setSize(8); PdfPCell cell4 = new PdfPCell(cabecalho); // celula cell4.setBackgroundColor(BaseColor.LIGHT_GRAY); cell4.setBorderColor(BaseColor.LIGHT_GRAY); cell4.setHorizontalAlignment(Element.ALIGN_CENTER); table.addCell(cell4); cabecalho = new Paragraph("Orientaes"); cabecalho.getFont().setStyle(Font.BOLD); cabecalho.getFont().setSize(8); PdfPCell cell3 = new PdfPCell(cabecalho); // celula cell3.setBackgroundColor(BaseColor.LIGHT_GRAY); cell3.setBorderColor(BaseColor.LIGHT_GRAY); cell3.setHorizontalAlignment(Element.ALIGN_CENTER); table.addCell(cell3); for (int i = 0; i < lOrientacao.size(); i++) { Professororientacao po = lOrientacao.get(i); Paragraph texto = new Paragraph(String.valueOf(po.getSiape())); texto.getFont().setSize(8); cell1 = new PdfPCell(texto); // celula cell1.setBorderColor(BaseColor.LIGHT_GRAY); cell1.setHorizontalAlignment(Element.ALIGN_CENTER); table.addCell(cell1); texto = new Paragraph(po.getNome()); texto.getFont().setSize(8); cell2 = new PdfPCell(texto); // celula cell2.setBorderColor(BaseColor.LIGHT_GRAY); table.addCell(cell2); texto = new Paragraph(po.getEmail()); texto.getFont().setSize(8); cell4 = new PdfPCell(texto); // celula cell4.setBorderColor(BaseColor.LIGHT_GRAY); table.addCell(cell4); texto = new Paragraph(String.valueOf(po.getOrientacoes())); texto.getFont().setSize(8); cell3 = new PdfPCell(texto); // celula cell3.setBorderColor(BaseColor.LIGHT_GRAY); cell3.setHorizontalAlignment(Element.ALIGN_CENTER); table.addCell(cell3); switch (i % 2) { case 0: cell1.setBorderColor(BaseColor.LIGHT_GRAY); cell1.setBackgroundColor(BaseColor.LIGHT_GRAY); break; case 1: break; } } //add a tabela document.add(table); //----------------------------------------------------- // distancia do fim da pagina float y = 70f; float x = 160f; //----------------------------------------------------- //linha PdfContentByte linha = writer.getDirectContentUnder(); linha.setLineWidth(1f); // mostrar linha linha.setGrayStroke(0.5f); // 0 = preto, 1 = branco linha.moveTo(x, y); linha.lineTo(450f, y); // ate onde a linha vai linha.stroke(); //------------------------------------------------------ //assinatura PdfContentByte a1 = writer.getDirectContentUnder(); a1.beginText(); a1.setFontAndSize(fHelvetica, 10); a1.setTextMatrix(x + 50, y - 15); // x e y a1.showText("Coordenao de Estgio Supervisionado"); a1.endText(); //------------------------------------------------------ //assinatura PdfContentByte a2 = writer.getDirectContentUnder(); a2.beginText(); a2.setFontAndSize(fHelvetica, 10); a2.setTextMatrix(x + 50, y - 27); // x e y a2.showText("FACOM/UFU"); a2.endText(); //------------------------------------------------------ //add nova pagina document.newPage(); //close document document.close(); } catch (DocumentException | IOException ex) { Logger.getLogger(RelatorioProfessor.class.getName()).log(Level.SEVERE, null, ex); } //return stream com dados return baos; }
From source file:reporteFertilizacion.ReporteResultadoLaboratorio.java
/** * Processes requests for both HTTP <code>GET</code> and <code>POST</code> * methods./* www. j a va 2s . co m*/ * * @param request servlet request * @param response servlet response * @throws ServletException if a servlet-specific error occurs * @throws IOException if an I/O error occurs */ protected void processRequest(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { response.setContentType("application/pdf"); try { Font font9BoldWhite = FontFactory.getFont(FontFactory.HELVETICA, 9, Font.BOLD, BaseColor.WHITE); Font font7Bold = FontFactory.getFont(FontFactory.HELVETICA, 7, Font.BOLD); Font font7Normal = FontFactory.getFont(FontFactory.HELVETICA, 7, Font.NORMAL); Font font8Bold = FontFactory.getFont(FontFactory.HELVETICA, 8, Font.BOLD); Font font8Normal = FontFactory.getFont(FontFactory.HELVETICA, 8, Font.NORMAL); Font font9Bold = FontFactory.getFont(FontFactory.HELVETICA, 9, Font.BOLD); Font font9Normal = FontFactory.getFont(FontFactory.HELVETICA, 9, Font.NORMAL); Font font10Bold = FontFactory.getFont(FontFactory.HELVETICA, 10, Font.BOLD); Font font10Normal = FontFactory.getFont(FontFactory.HELVETICA, 10, Font.NORMAL); Font font12Bold = FontFactory.getFont(FontFactory.HELVETICA, 12, Font.BOLD); Font font12Normal = FontFactory.getFont(FontFactory.HELVETICA, 12, Font.NORMAL); Font font14Bold = FontFactory.getFont(FontFactory.HELVETICA, 14, Font.BOLD); Font font14Normal = FontFactory.getFont(FontFactory.HELVETICA, 14, Font.NORMAL); Font font18Bold = FontFactory.getFont(FontFactory.HELVETICA, 18, Font.BOLD); Font font22Bold = FontFactory.getFont(FontFactory.HELVETICA, 22, Font.BOLD); //obtencion parametros ********************************************************* FacesContext facesContext = FacesContext.getCurrentInstance(); Map params = facesContext.getExternalContext().getRequestParameterMap(); ObjectId parametroObtenido = new ObjectId(params.get("idMuestra").toString()); ResultadoLaboratorio resLab = ResultadoLaboratorio.getResultadoLaboratorioById(parametroObtenido); MuestraLaboratorio muestra = MuestraLaboratorio.getMuestraLaboratorioById(resLab.getMuestra()); Cliente cli = Cliente.getClienteById( Hacienda.getHaciendaById(muestra.getSiembraCultivo().getIdHacienda()).getIdCliente()); Hacienda hac = Hacienda .getHaciendaById(Hacienda.getHaciendaById(muestra.getSiembraCultivo().getIdHacienda()).getId()); //Lote lot = Lote.getLoteById(muestra.getLote()); //String lot = muestra.getLote(); Cultivo cul = Cultivo.getCultivoById(muestra.getSiembraCultivo().getIdCultivo()); String cliente = cli.getNombre().toUpperCase(); String ubicacion = Canton.getCantonById(cli.getCanton()).getNombre() + " - " + Canton.getCantonById(cli.getCanton()).getLeyendaProvincia() + " - " + Canton.getCantonById(cli.getCanton()).getLeyendaPais(); String codigMuestra = muestra.getCodigo(); String hacienda = hac.getNombre(); String cultivo = cul.getNombre(); //String varie = Variedad.getVariedadById(lot.getIdVariedad()).getNombre(); String varie = muestra.getSiembraCultivo().getLeyendaVariedad(); //String estacionMonitoreo = lot.getEstacion().get(0).getCodigo(); String estacionMonitoreo = muestra.getSiembraCultivo().getUnidadManejo(); //String estacionMonitoreo = muestra.getLoteCompleto().getListadoMonitoreo().get(0).getCodigo(); String tituloProyecto = "Anlisis" + resLab.getLeyendaMatriz(); String tipoMuestra = resLab.getLeyendaMatriz(); String numeroMuestra = Integer.toString( MuestraLaboratorio.getNumberMuestraLaboratorio(muestra.getId(), muestra.getIdSiembraCultivo())); String numeroMonitoreo = numeroMuestra; //String lote = lot.getCodigo(); String lote = ""; int nn = muestra.getSiembraCultivo().getListaLotesSiembra().size(); for (int i = 0; i < nn; i++) { lote = lote.concat(muestra.getSiembraCultivo().getListaLotesSiembra().get(i).getLeyendaLote()); } String muestreador = muestra.getMuestreador(); String fechaMuestreo = muestra.getFechaFormatMuestreo(); String fechaRecepcionMuestra = muestra.getFechaFormatEnvio(); String fechaResultado = resLab.getFechaFormatResultado(); String periodoPrueba = resLab.getFechaFormatRecepcion() + " al " + resLab.getFechaFormatResultado(); String contenidoHoja1 = TextoReporteResultadoLaboratorio.getByReferencia("HOJA 1 TEXTO INFORME") .getDescripcion(); String responsableTecnico = TextoReporteResultadoLaboratorio.getByReferencia("RESPONSABLE TECNICO") .getDescripcion(); String datosLaboratorio = TextoReporteResultadoLaboratorio.getByReferencia("DATOS LABORATORIO") .getDescripcion(); String piePagina = TextoReporteResultadoLaboratorio.getByReferencia("PIE DE PAGINA").getDescripcion(); String contenidoHoja2 = TextoReporteResultadoLaboratorio.getByReferencia("HOJA 2 OBSERVACION") .getDescripcion(); //fin obtencion parametros ***************************************************** /* TODO output your page here. You may use following sample code. */ float left = 60; float right = 30; float top = 0; float bottom = 0; Document document = new Document(PageSize.A4, left, right, top, bottom); PdfWriter writer = PdfWriter.getInstance(document, response.getOutputStream()); //FOOTER TABLE ***************************************************************** PdfPTable table = new PdfPTable(1); table.setTotalWidth(550); PdfPCell cell = new PdfPCell(new Phrase(piePagina, font8Normal)); cell.setBackgroundColor(BaseColor.GREEN); cell.setBorder(PdfPCell.NO_BORDER); table.addCell(cell); cell = new PdfPCell(new Phrase("www.agrorum.com.ec", font9BoldWhite)); cell.setBackgroundColor(BaseColor.ORANGE); cell.setBorder(PdfPCell.NO_BORDER); cell.setHorizontalAlignment(PdfPCell.ALIGN_RIGHT); table.addCell(cell); FooterTable event = new FooterTable(table); writer.setPageEvent(event); //FIN FOOTER TABLE ***************************************************************** document.open(); //HOJA 1 ********************************************************************************************************************************* //IMAGE ********************************************************************************** String relativeWebPathAg = "/images/agrorum.png"; String absoluteDiskPathAg = getServletContext().getRealPath(relativeWebPathAg); Image logoAg = Image.getInstance(absoluteDiskPathAg); logoAg.setAbsolutePosition(10f, 750f); logoAg.scalePercent(80f); document.add(logoAg); String relativeWebPathEu = "/images/eurofins.png"; String absoluteDiskPathEu = getServletContext().getRealPath(relativeWebPathEu); Image logoEu = Image.getInstance(absoluteDiskPathEu); logoEu.setAbsolutePosition(500f, 770f); logoEu.scalePercent(60f); document.add(logoEu); //FIN IMAGE ******************************************************************************** //CLIENTE UBICACION MUESTRA***************************************************************** Paragraph parphRepor = new Paragraph("Reporte de anlisis 1/2", font10Normal); parphRepor.setAlignment(Element.ALIGN_RIGHT); parphRepor.setSpacingBefore(90f); Paragraph parphCli = new Paragraph(cliente, font10Bold); parphCli.setAlignment(Element.ALIGN_LEFT); parphCli.setSpacingBefore(15f); Paragraph parphUbi = new Paragraph(ubicacion, font10Bold); parphUbi.setAlignment(Element.ALIGN_LEFT); parphUbi.setSpacingBefore(15f); //PARRAFO combinado con frases******************************************** Phrase p1 = new Phrase("Cdigo de la Muestra: ", font10Normal); Phrase p2 = new Phrase(codigMuestra, font10Bold); Paragraph parphMue = new Paragraph(p1); parphMue.add(p2); parphMue.setAlignment(Element.ALIGN_LEFT); parphMue.setSpacingBefore(15f); //FIN PARRAFO combinado*************************************************** document.add(parphRepor); document.add(parphCli); document.add(parphUbi); document.add(parphMue); //FIN CLIENTE UBICACION MUESTRA************************************************************* //TABLA *********************************************************************************** PdfPTable tableDatos = new PdfPTable(new float[] { 0.20f, 0.80f }); tableDatos.setWidthPercentage(100); tableDatos.addCell(getCell("Propiedad:", PdfPCell.ALIGN_LEFT, font8Normal)); tableDatos.addCell(getCell(hacienda, PdfPCell.ALIGN_LEFT, font8Bold)); tableDatos.addCell(getCell("Cultivo Actual:", PdfPCell.ALIGN_LEFT, font8Normal)); tableDatos.addCell(getCell(cultivo, PdfPCell.ALIGN_LEFT, font8Bold)); tableDatos.addCell(getCell("Estacin Monitoreo:", PdfPCell.ALIGN_LEFT, font8Normal)); tableDatos.addCell(getCell(estacionMonitoreo, PdfPCell.ALIGN_LEFT, font8Bold)); tableDatos.addCell(getCell("Ttulo Proyecto:", PdfPCell.ALIGN_LEFT, font8Normal)); tableDatos.addCell(getCell(tituloProyecto, PdfPCell.ALIGN_LEFT, font8Bold)); tableDatos.addCell(getCell("Tipo Muestra:", PdfPCell.ALIGN_LEFT, font8Normal)); tableDatos.addCell(getCell(tipoMuestra, PdfPCell.ALIGN_LEFT, font8Bold)); tableDatos.addCell(getCell("Nmero Muestra:", PdfPCell.ALIGN_LEFT, font8Normal)); tableDatos.addCell(getCell(numeroMuestra, PdfPCell.ALIGN_LEFT, font8Bold)); tableDatos.addCell(getCell("Nmero Monitoreo:", PdfPCell.ALIGN_LEFT, font8Normal)); tableDatos.addCell(getCell(numeroMonitoreo, PdfPCell.ALIGN_LEFT, font8Bold)); tableDatos.addCell(getCell("Lote:", PdfPCell.ALIGN_LEFT, font8Normal)); tableDatos.addCell(getCell(lote, PdfPCell.ALIGN_LEFT, font8Bold)); tableDatos.addCell(getCell("Muestreador:", PdfPCell.ALIGN_LEFT, font8Normal)); tableDatos.addCell(getCell(muestreador.toUpperCase(), PdfPCell.ALIGN_LEFT, font8Bold)); tableDatos.addCell(getCell("Fecha Muestreo:", PdfPCell.ALIGN_LEFT, font8Normal)); tableDatos.addCell(getCell(fechaMuestreo, PdfPCell.ALIGN_LEFT, font8Bold)); tableDatos.addCell(getCell("Recepcin Muestra:", PdfPCell.ALIGN_LEFT, font8Normal)); tableDatos.addCell(getCell(fechaRecepcionMuestra, PdfPCell.ALIGN_LEFT, font8Bold)); tableDatos.addCell(getCell("Perodo de Prueba:", PdfPCell.ALIGN_LEFT, font8Normal)); tableDatos.addCell(getCell(periodoPrueba, PdfPCell.ALIGN_LEFT, font8Bold)); tableDatos.setSpacingBefore(20f); document.add(tableDatos); //FIN TABLA ******************************************************************************** //CONTENIDO ******************************************************************************** Paragraph parphCont = new Paragraph(contenidoHoja1, font8Normal); parphCont.setAlignment(Element.ALIGN_JUSTIFIED); parphCont.setSpacingBefore(20f); Paragraph parphLLeida = new Paragraph("LLeida, " + fechaResultado, font8Normal); parphLLeida.setAlignment(Element.ALIGN_LEFT); parphLLeida.setSpacingBefore(20f); Paragraph parphTecnico = new Paragraph(responsableTecnico, font9Bold); parphTecnico.setAlignment(Element.ALIGN_LEFT); parphTecnico.setSpacingBefore(20f); Paragraph parphResponsable = new Paragraph("Responsable Tcnico", font8Normal); parphResponsable.setAlignment(Element.ALIGN_LEFT); parphResponsable.setSpacingBefore(1f); Paragraph parphLaboratorio = new Paragraph(datosLaboratorio, font8Bold); parphLaboratorio.setAlignment(Element.ALIGN_LEFT); parphLaboratorio.setSpacingBefore(30f); document.add(parphCont); document.add(parphLLeida); document.add(parphTecnico); document.add(parphResponsable); document.add(parphLaboratorio); //FIN CONTENIDO **************************************************************************** //FIN HOJA 1 ***************************************************************************************************************************** document.newPage(); //HOJA 2 ********************************************************************************************************************************* //IMAGE ********************************************************************************** String relativeWebPathAg1 = "/images/agrorum.png"; String absoluteDiskPathAg1 = getServletContext().getRealPath(relativeWebPathAg1); Image logoAg1 = Image.getInstance(absoluteDiskPathAg1); logoAg1.setAbsolutePosition(10f, 750f); logoAg1.scalePercent(80f); document.add(logoAg1); String relativeWebPathEu1 = "/images/eurofins.png"; String absoluteDiskPathEu1 = getServletContext().getRealPath(relativeWebPathEu1); Image logoEu1 = Image.getInstance(absoluteDiskPathEu1); logoEu1.setAbsolutePosition(500f, 770f); logoEu1.scalePercent(60f); document.add(logoEu1); Paragraph ini = new Paragraph("", font12Bold); ini.setAlignment(Element.ALIGN_CENTER); ini.setSpacingBefore(100f); PdfPTable cabT = new PdfPTable(new float[] { 1f }); cabT.setWidthPercentage(100); PdfPCell cellCab = new PdfPCell(new Phrase("Informe de Prueba", font12Bold)); cellCab.setPadding(2f); cellCab.setHorizontalAlignment(Element.ALIGN_CENTER); cabT.addCell(cellCab); Paragraph parphRep = new Paragraph("Reporte de anlisis 2/2", font10Normal); parphRep.setAlignment(Element.ALIGN_RIGHT); document.add(ini); document.add(cabT); document.add(parphRep); //TABLA *********************************************************************************** PdfPTable tableDatosH2 = new PdfPTable(new float[] { 0.20f, 0.80f }); tableDatosH2.setWidthPercentage(100); tableDatosH2.addCell(getCell("Cliente:", PdfPCell.ALIGN_LEFT, font8Normal)); tableDatosH2.addCell(getCell(cliente, PdfPCell.ALIGN_LEFT, font8Bold)); tableDatosH2.addCell(getCell(" ", PdfPCell.ALIGN_LEFT, font8Normal)); tableDatosH2.addCell(getCell(" ", PdfPCell.ALIGN_LEFT, font8Bold)); tableDatosH2.addCell(getCell("Propiedad:", PdfPCell.ALIGN_LEFT, font8Normal)); tableDatosH2.addCell(getCell(hacienda, PdfPCell.ALIGN_LEFT, font8Bold)); tableDatosH2.addCell(getCell("Estacin Monitoreo:", PdfPCell.ALIGN_LEFT, font8Normal)); tableDatosH2.addCell(getCell(estacionMonitoreo, PdfPCell.ALIGN_LEFT, font8Bold)); tableDatosH2.addCell(getCell("Nmero Monitoreo:", PdfPCell.ALIGN_LEFT, font8Normal)); tableDatosH2.addCell(getCell(numeroMuestra, PdfPCell.ALIGN_LEFT, font8Bold)); tableDatosH2.addCell(getCell("Codigo Muestra:", PdfPCell.ALIGN_LEFT, font8Normal)); tableDatosH2.addCell(getCell(codigMuestra, PdfPCell.ALIGN_LEFT, font8Bold)); tableDatosH2.addCell(getCell("Matriz:", PdfPCell.ALIGN_LEFT, font8Normal)); tableDatosH2.addCell(getCell(tipoMuestra, PdfPCell.ALIGN_LEFT, font8Bold)); tableDatosH2.addCell(getCell("Cultivo:", PdfPCell.ALIGN_LEFT, font8Normal)); tableDatosH2.addCell(getCell(cultivo, PdfPCell.ALIGN_LEFT, font8Bold)); tableDatosH2.addCell(getCell("Variedad:", PdfPCell.ALIGN_LEFT, font8Normal)); tableDatosH2.addCell(getCell(varie, PdfPCell.ALIGN_LEFT, font8Bold)); tableDatosH2.addCell(getCell("Fecha Muestreo:", PdfPCell.ALIGN_LEFT, font8Normal)); tableDatosH2.addCell(getCell(fechaMuestreo, PdfPCell.ALIGN_LEFT, font8Bold)); tableDatosH2.addCell(getCell("Recepcin Muestra:", PdfPCell.ALIGN_LEFT, font8Normal)); tableDatosH2.addCell(getCell(fechaRecepcionMuestra, PdfPCell.ALIGN_LEFT, font8Bold)); tableDatosH2.addCell(getCell("Perodo de Prueba:", PdfPCell.ALIGN_LEFT, font8Normal)); tableDatosH2.addCell(getCell(periodoPrueba, PdfPCell.ALIGN_LEFT, font8Bold)); tableDatosH2.setSpacingBefore(20f); document.add(tableDatosH2); //FIN TABLA ******************************************************************************** Paragraph parphCont1 = new Paragraph(contenidoHoja2, font8Normal); parphCont1.setAlignment(Element.ALIGN_JUSTIFIED); parphCont1.setSpacingBefore(20f); PdfPTable tableDatosH3 = new PdfPTable(new float[] { 0.30f, 0.70f }); tableDatosH3.setWidthPercentage(100); tableDatosH3.addCell(getCell(datosLaboratorio, PdfPCell.ALIGN_LEFT, font8Bold)); PdfPTable subTable = new PdfPTable(new float[] { 1f }); subTable.setWidthPercentage(100); subTable.addCell(getCell("LLeida, " + fechaResultado, PdfPCell.ALIGN_CENTER, font8Normal)); subTable.addCell(getCell(" ", PdfPCell.ALIGN_CENTER, font8Normal)); subTable.addCell(getCell(" ", PdfPCell.ALIGN_CENTER, font8Normal)); subTable.addCell(getCell(" ", PdfPCell.ALIGN_CENTER, font8Normal)); subTable.addCell(getCell(responsableTecnico, PdfPCell.ALIGN_CENTER, font9Bold)); subTable.addCell(getCell("Responsable Tcnico", PdfPCell.ALIGN_CENTER, font8Normal)); PdfPCell cellsub = new PdfPCell(subTable); cellsub.setBorder(PdfPCell.NO_BORDER); cellsub.setHorizontalAlignment(PdfPCell.ALIGN_CENTER); tableDatosH3.addCell(cellsub); tableDatosH3.setSpacingBefore(20f); document.add(parphCont1); document.add(tableDatosH3); //FIN IMAGE ******************************************************************************** //FIN HOJA 2 ***************************************************************************************************************************** document.close(); } catch (DocumentException de) { throw new IOException(de.getMessage()); } }
From source file:ReportGeneration.GenerateReport.java
public void print() { FileOutputStream fileOut = null; try {//from w w w. j a va2 s .c om Document document = new Document(PageSize.A4.rotate(), 50, 50, 50, 50); //Document document = new Document(); //Create PDF cocument fileOut = new FileOutputStream(new File("report.pdf")); PdfWriter writer = PdfWriter.getInstance(document, fileOut); document.open(); //Open the document for writting PdfPTable table = new PdfPTable(5); //Create a table with 7 columns. 6 the first column //is for labeling the day, and the rest are for displaying actual time table entries. document.add(new Paragraph(" RFID ATTENDANCE SYSTEM ")); table.setWidthPercentage(100); PdfPCell cell; cell = new PdfPCell(); cell.setColspan(1); cell.addElement(new Phrase("S/N")); table.addCell(cell); cell = new PdfPCell(); cell.addElement(new Phrase("Name")); table.addCell(cell); cell = new PdfPCell(); cell.addElement(new Phrase("Matricule Number")); table.addCell(cell); cell = new PdfPCell(); cell.addElement(new Phrase("Date")); table.addCell(cell); cell = new PdfPCell(); cell.addElement(new Phrase("Time")); table.addCell(cell); int i = 0; DateFormat df = new SimpleDateFormat("yyyy-MM-dd"); String date2 = df.format(jXDatePicker2.getDate()).toString(); String date3 = df.format(jXDatePicker3.getDate()).toString(); genReport = DataBase.getInstance(); genReport.connect(); String query = "select `registered personel`.Name, `registered personel`.Matricule_Number, `Attendance Record`.Date, `Attendance Record`.Time from `Registered Personel` join `Attendance Record` on `registered personel`.Tag_ID =`Attendance Record`.`Registered Personel_Tag_ID` where Date>='" + date2 + "' AND Date<='" + date3 + "'"; genReport.query(query); records = genReport.getResultSet(); while (records.next()) { studName = records.getString(1); cell = new PdfPCell(); cell.addElement(new Phrase("" + i)); table.addCell(cell); cell = new PdfPCell(); cell.addElement(new Phrase(records.getString(1))); table.addCell(cell); cell = new PdfPCell(); cell.addElement(new Phrase(records.getString(2))); table.addCell(cell); cell = new PdfPCell(); cell.addElement(new Phrase(records.getString(3))); table.addCell(cell); cell = new PdfPCell(); cell.addElement(new Phrase(records.getString(4))); table.addCell(cell); i++; } document.add(table); document.close(); } catch (Exception ex) { Logger.getLogger(GenerateReport.class.getName()).log(Level.SEVERE, null, ex); } finally { try { fileOut.close(); } catch (IOException ex) { Logger.getLogger(GenerateReport.class.getName()).log(Level.SEVERE, null, ex); } } }