List of usage examples for com.lowagie.text Image getInstance
public static Image getInstance(Image image)
From source file:fr.opensagres.xdocreport.itext.extension.ExtendedImage.java
License:Open Source License
public ExtendedImage(Image image, float offsetY) { super(image); this.image = Image.getInstance(image); this.offsetY = offsetY; }
From source file:fr.univlorraine.mondossierweb.controllers.CalendrierController.java
License:Apache License
/** * // w w w. j a va 2 s. co m * @param document pdf */ public void creerPdfCalendrier(final Document document, Etudiant etudiant) { //configuration des fonts Font normal = FontFactory.getFont(FontFactory.TIMES_ROMAN, 10, Font.NORMAL); Font normalbig = FontFactory.getFont(FontFactory.TIMES_ROMAN, 11, Font.BOLD); Font legerita = FontFactory.getFont(FontFactory.TIMES_ROMAN, 9, Font.ITALIC); Font headerbig = FontFactory.getFont(FontFactory.TIMES_ROMAN, 16, Font.BOLD); Font header = FontFactory.getFont(FontFactory.TIMES_ROMAN, 12, Font.BOLD); //pieds de pages: Date d = new Date(); DateFormat dateFormat = new SimpleDateFormat("dd-MM-yyyy"); String date = dateFormat.format(d); //alignement des libells du pied de page: String partie1 = applicationContext.getMessage("pdf.calendrier.title", null, Locale.getDefault()); String partie2 = applicationContext.getMessage("pdf.edition.date", null, Locale.getDefault()) + " : " + date; if (partie1.length() < ECARTEMENT_PIED_PAGE_PDF) { int diff = ECARTEMENT_PIED_PAGE_PDF - partie1.length(); for (int i = 0; i < diff; i++) { partie1 = partie1 + " "; } } if (partie2.length() < ECARTEMENT_PIED_PAGE_PDF) { int diff = ECARTEMENT_PIED_PAGE_PDF - partie2.length(); for (int i = 0; i < diff; i++) { partie2 = " " + partie2; } } //cration du pied de page: Phrase phra = new Phrase( partie1 + " -" + applicationContext.getMessage("pdf.page", null, Locale.getDefault()), legerita); Phrase phra2 = new Phrase("- " + partie2, legerita); HeaderFooter hf = new HeaderFooter(phra, phra2); hf.setAlignment(HeaderFooter.ALIGN_CENTER); document.setFooter(hf); //ouverte du document. document.open(); try { //ajout image test if (configController.getLogoUniversitePdf() != null && !configController.getLogoUniversitePdf().equals("")) { Image image1 = Image.getInstance(configController.getLogoUniversitePdf()); float scaleRatio = 40 / image1.getHeight(); float newWidth = scaleRatio * image1.getWidth(); image1.scaleAbsolute(newWidth, 40); image1.setAbsolutePosition(800 - newWidth, 528); document.add(image1); } //nouveau paragraphe Paragraph p = new Paragraph( applicationContext.getMessage("pdf.calendrier.title", null, Locale.getDefault()).toUpperCase() + "\n\n", headerbig); p.setIndentationLeft(15); document.add(p); if (etudiant.getNom() != null) { Paragraph p0 = new Paragraph(etudiant.getNom(), normal); p0.setIndentationLeft(15); document.add(p0); } if (etudiant.getCod_etu() != null) { Paragraph p01 = new Paragraph(applicationContext.getMessage("pdf.folder", null, Locale.getDefault()) + " : " + etudiant.getCod_etu(), normal); p01.setIndentationLeft(15); document.add(p01); } if (etudiant.getCod_nne() != null) { Paragraph p02 = new Paragraph(applicationContext.getMessage("pdf.nne", null, Locale.getDefault()) + " : " + etudiant.getCod_nne(), normal); p02.setIndentationLeft(15); document.add(p02); } if (etudiant.getEmail() != null) { Paragraph p03 = new Paragraph(applicationContext.getMessage("pdf.mail", null, Locale.getDefault()) + " : " + etudiant.getEmail(), normal); p03.setIndentationLeft(15); document.add(p03); } Paragraph p03 = new Paragraph( applicationContext.getMessage("pdf.edition.date", null, Locale.getDefault()) + " : " + date, normal); p03.setIndentationLeft(15); document.add(p03); document.add(new Paragraph("\n")); //Partie Calendrier PdfPTable table = new PdfPTable(1); table.setWidthPercentage(98); PdfPCell cell = new PdfPCell(new Paragraph(applicationContext .getMessage("pdf.calendrier.subtitle", null, Locale.getDefault()).toUpperCase() + " ", header)); cell.setBorder(Rectangle.NO_BORDER); cell.setBackgroundColor(new Color(153, 153, 255)); table.addCell(cell); PdfPTable table2; boolean affNumPlaceExamen = configController.isAffNumPlaceExamen(); if (affNumPlaceExamen) { table2 = new PdfPTable(7); table2.setWidthPercentage(98); int[] tabWidth = { 15, 10, 10, 40, 30, 10, 60 }; table2.setWidths(tabWidth); } else { table2 = new PdfPTable(6); table2.setWidthPercentage(98); int[] tabWidth = { 15, 10, 10, 45, 30, 65 }; table2.setWidths(tabWidth); } Paragraph p1 = new Paragraph(applicationContext.getMessage("pdf.date", null, Locale.getDefault()), normalbig); Paragraph p2 = new Paragraph(applicationContext.getMessage("pdf.heure", null, Locale.getDefault()), normalbig); Paragraph p3 = new Paragraph(applicationContext.getMessage("pdf.duree", null, Locale.getDefault()), normalbig); Paragraph p4 = new Paragraph(applicationContext.getMessage("pdf.batiment", null, Locale.getDefault()), normalbig); Paragraph p5 = new Paragraph(applicationContext.getMessage("pdf.salle", null, Locale.getDefault()), normalbig); Paragraph p6 = new Paragraph(applicationContext.getMessage("pdf.place", null, Locale.getDefault()), normalbig); Paragraph p7 = new Paragraph(applicationContext.getMessage("pdf.examen", null, Locale.getDefault()), normalbig); PdfPCell ct1 = new PdfPCell(p1); PdfPCell ct2 = new PdfPCell(p2); PdfPCell ct3 = new PdfPCell(p3); PdfPCell ct4 = new PdfPCell(p4); PdfPCell ct5 = new PdfPCell(p5); PdfPCell ct6 = new PdfPCell(p6); PdfPCell ct7 = new PdfPCell(p7); ct1.setBorder(Rectangle.BOTTOM); ct1.setBorderColorBottom(Color.black); ct2.setBorder(Rectangle.BOTTOM); ct2.setBorderColorBottom(Color.black); ct3.setBorder(Rectangle.BOTTOM); ct2.setBorderColorBottom(Color.black); ct4.setBorder(Rectangle.BOTTOM); ct1.setBorderColorBottom(Color.black); ct5.setBorder(Rectangle.BOTTOM); ct2.setBorderColorBottom(Color.black); ct6.setBorder(Rectangle.BOTTOM); ct2.setBorderColorBottom(Color.black); ct7.setBorder(Rectangle.BOTTOM); ct2.setBorderColorBottom(Color.black); table2.addCell(ct1); table2.addCell(ct2); table2.addCell(ct3); table2.addCell(ct4); table2.addCell(ct5); if (affNumPlaceExamen) table2.addCell(ct6); table2.addCell(ct7); for (int i = 0; i < etudiant.getCalendrier().size(); i++) { Paragraph pa = new Paragraph(etudiant.getCalendrier().get(i).getDatedeb(), normal); PdfPCell celltext = new PdfPCell(pa); celltext.setBorder(Rectangle.NO_BORDER); Paragraph pa2 = new Paragraph(etudiant.getCalendrier().get(i).getHeure(), normal); PdfPCell celltext2 = new PdfPCell(pa2); celltext2.setBorder(Rectangle.NO_BORDER); Paragraph pa3 = new Paragraph(etudiant.getCalendrier().get(i).getDuree(), normal); PdfPCell celltext3 = new PdfPCell(pa3); celltext3.setBorder(Rectangle.NO_BORDER); Paragraph pa4 = new Paragraph(etudiant.getCalendrier().get(i).getBatiment(), normal); PdfPCell celltext4 = new PdfPCell(pa4); celltext4.setBorder(Rectangle.NO_BORDER); Paragraph pa5 = new Paragraph(etudiant.getCalendrier().get(i).getSalle(), normal); PdfPCell celltext5 = new PdfPCell(pa5); celltext5.setBorder(Rectangle.NO_BORDER); Paragraph pa6 = new Paragraph(etudiant.getCalendrier().get(i).getPlace(), normal); PdfPCell celltext6 = new PdfPCell(pa6); celltext6.setBorder(Rectangle.NO_BORDER); Paragraph pa7 = new Paragraph(etudiant.getCalendrier().get(i).getEpreuve(), normal); PdfPCell celltext7 = new PdfPCell(pa7); celltext7.setBorder(Rectangle.NO_BORDER); table2.addCell(celltext); table2.addCell(celltext2); table2.addCell(celltext3); table2.addCell(celltext4); table2.addCell(celltext5); if (affNumPlaceExamen) table2.addCell(celltext6); table2.addCell(celltext7); /*PdfPCell celltext4 = new PdfPCell(table3); celltext4.setBorder(Rectangle.NO_BORDER); table2.addCell(celltext4);*/ } document.add(table); document.add(table2); document.add(new Paragraph("\n")); } catch (BadElementException e) { LOG.error("Erreur la gnration du calendrier des examens : BadElementException ", e); } catch (MalformedURLException e) { LOG.error("Erreur la gnration du calendrier des examens : MalformedURLException ", e); } catch (IOException e) { LOG.error("Erreur la gnration du calendrier des examens : IOException ", e); } catch (DocumentException e) { LOG.error("Erreur la gnration du calendrier des examens : DocumentException ", e); } // step 6: fermeture du document. document.close(); }
From source file:fr.univlorraine.mondossierweb.controllers.InscriptionController.java
License:Apache License
/** * /* w w w . j a v a 2 s. com*/ * @param document pdf */ public void creerPdfCertificatScolarite(final Document document, Etudiant etudiant, Inscription inscription) { //configuration des fonts Font normal = FontFactory.getFont(FontFactory.HELVETICA, 10, Font.NORMAL); Font normalBig = FontFactory.getFont(FontFactory.HELVETICA, 12, Font.BOLD); Font header = FontFactory.getFont(FontFactory.HELVETICA, 14, Font.BOLD); //date Date d = new Date(); DateFormat dateFormat = new SimpleDateFormat("dd/MM/yyyy"); String date = dateFormat.format(d); document.open(); try { Signataire signataire = multipleApogeeService .getSignataire(configController.getCertScolCodeSignataire()); // Ajout Bordeaux1 if (configController.isCertScolUtiliseLogo()) { //ajout image test if (configController.getLogoUniversitePdf() != null && !configController.getLogoUniversitePdf().equals("")) { Image imageLogo = Image.getInstance(configController.getLogoUniversitePdf()); float scaleRatio = 40 / imageLogo.getHeight(); float newWidth = scaleRatio * imageLogo.getWidth(); imageLogo.scaleAbsolute(newWidth, 40); imageLogo.setAbsolutePosition(100, 750); document.add(imageLogo); } else if (configController.getCertScolHeaderUniv() != null && !configController.getCertScolHeaderUniv().equals("")) { Image imageHeader = Image.getInstance(configController.getCertScolHeaderUniv()); float scaleHeader = 600 / imageHeader.getWidth(); float newHeigthHeader = scaleHeader * imageHeader.getHeight(); imageHeader.scaleAbsolute(600, newHeigthHeader); imageHeader.setAbsolutePosition(0, 765); document.add(imageHeader); } if (configController.getCertScolFooter() != null && !configController.getCertScolFooter().equals("")) { Image imageFooter = Image.getInstance(configController.getCertScolFooter()); float scaleFooter = 600 / imageFooter.getWidth(); float newHeigthFooter = scaleFooter * imageFooter.getHeight(); imageFooter.scaleAbsolute(600, newHeigthFooter); imageFooter.setAbsolutePosition(0, 0); document.add(imageFooter); } } Paragraph pTitre = new Paragraph("\n\n" + applicationContext .getMessage("pdf.certificat.title", null, Locale.getDefault()).toUpperCase(), header); pTitre.setAlignment(Element.ALIGN_CENTER); document.add(pTitre); Paragraph pCertifie = new Paragraph("\n\n\n\n" + signataire.getQua_sig() + " " + applicationContext.getMessage("pdf.certificat.certifie", null, Locale.getDefault()) + "\n\n", normal); pCertifie.setAlignment(Element.ALIGN_LEFT); document.add(pCertifie); if (etudiant.getNom() != null) { String civ = multipleApogeeService.getCodCivFromCodInd(etudiant.getCod_ind()); String civCertif = ""; if (civ != null) { if (civ.equals("1")) { civCertif = applicationContext.getMessage("pdf.certificat.civ1", null, Locale.getDefault()); } else if (civ.equals("2")) { civCertif = applicationContext.getMessage("pdf.certificat.civ2", null, Locale.getDefault()); } } Paragraph pNom = new Paragraph(civCertif + " " + etudiant.getNom(), normalBig); pNom.setIndentationLeft(15); document.add(pNom); } if (etudiant.getCod_nne() != null) { Paragraph pNNE = new Paragraph( "\n" + applicationContext.getMessage("pdf.certificat.id", null, Locale.getDefault()) + " : " + etudiant.getCod_nne().toLowerCase(), normal); pNNE.setAlignment(Element.ALIGN_LEFT); document.add(pNNE); } if (etudiant.getCod_etu() != null) { Paragraph p01 = new Paragraph( applicationContext.getMessage("pdf.certificat.numetudiant", null, Locale.getDefault()) + " : " + etudiant.getCod_etu(), normal); p01.setAlignment(Element.ALIGN_LEFT); document.add(p01); } if (etudiant.getDatenaissance() != null) { Paragraph pDateNaissance = new Paragraph( applicationContext.getMessage("pdf.certificat.naissance1", null, Locale.getDefault()) + " " + etudiant.getDatenaissance(), normal); pDateNaissance.setAlignment(Element.ALIGN_LEFT); document.add(pDateNaissance); } if ((etudiant.getLieunaissance() != null) && (etudiant.getDepartementnaissance() != null)) { Paragraph pLieuNaissance = new Paragraph( applicationContext.getMessage("pdf.certificat.naissance2", null, Locale.getDefault()) + " " + etudiant.getLieunaissance() + " (" + etudiant.getDepartementnaissance() + ")", normal); pLieuNaissance.setAlignment(Element.ALIGN_LEFT); document.add(pLieuNaissance); } String anneeEnCours = etudiantController.getAnneeUnivEnCoursToDisplay(MainUI.getCurrent()); String inscritCertif = ""; if (inscription.getCod_anu().equals(anneeEnCours)) { inscritCertif = applicationContext.getMessage("pdf.certificat.inscrit", null, Locale.getDefault()); } else { inscritCertif = applicationContext.getMessage("pdf.certificat.ete.inscrit", null, Locale.getDefault()); } Paragraph pEstInscrit = new Paragraph("\n" + inscritCertif + " " + inscription.getCod_anu() + "\n ", normal); pEstInscrit.setAlignment(Element.ALIGN_LEFT); document.add(pEstInscrit); float[] widths = { 1.5f, 7.5f }; PdfPTable table = new PdfPTable(widths); table.setWidthPercentage(100f); table.addCell(makeCell(applicationContext.getMessage("pdf.diplome", null, Locale.getDefault()) + " :", normal)); table.addCell(makeCell(inscription.getLib_dip(), normal)); table.addCell( makeCell(applicationContext.getMessage("pdf.year", null, Locale.getDefault()) + " :", normal)); table.addCell(makeCell(inscription.getLib_etp(), normal)); table.addCell(makeCell( applicationContext.getMessage("pdf.composante", null, Locale.getDefault()) + " :", normal)); table.addCell(makeCell(inscription.getLib_comp(), normal)); document.add(table); document.add(new Paragraph(" ")); float[] widthsSignataire = { 2f, 1.3f }; PdfPTable tableSignataire = new PdfPTable(widthsSignataire); tableSignataire.setWidthPercentage(100f); tableSignataire.addCell(makeCellSignataire("", normal)); tableSignataire .addCell(makeCellSignataire( applicationContext.getMessage("pdf.certificat.fait1", null, Locale.getDefault()) + " " + configController.getCertScolLieuEdition() + applicationContext.getMessage( "pdf.certificat.fait2", null, Locale.getDefault()) + " " + date, normal)); tableSignataire.addCell(makeCellSignataire("", normal)); tableSignataire.addCell(makeCellSignataire(signataire.getNom_sig(), normal)); //ajout signature if (signataire.getImg_sig_std() != null && signataire.getImg_sig_std().length > 0) { //MODIF 09/10/2012 tableSignataire.addCell(makeCellSignataire("", normal)); LOG.debug(signataire.getImg_sig_std().toString()); Image imageSignature = Image.getInstance(signataire.getImg_sig_std()); float scaleRatio = 100 / imageSignature.getHeight(); float newWidth = scaleRatio * imageSignature.getWidth(); imageSignature.scaleAbsolute(newWidth, 100); imageSignature.setAbsolutePosition(350, 225); document.add(imageSignature); } document.add(tableSignataire); // Ajout tampon if (configController.getCertScolTampon() != null && !configController.getCertScolTampon().equals("")) { Image imageTampon = Image.getInstance(configController.getCertScolTampon()); float scaleTampon = 100 / imageTampon.getWidth(); float newHeigthTampon = scaleTampon * imageTampon.getHeight(); imageTampon.scaleAbsolute(100, newHeigthTampon); imageTampon.setAbsolutePosition(415, 215); document.add(imageTampon); } } catch (BadElementException e) { LOG.error("Erreur la gnration du certificat : BadElementException ", e); } catch (MalformedURLException e) { LOG.error("Erreur la gnration du certificat : MalformedURLException ", e); } catch (IOException e) { LOG.error("Erreur la gnration du certificat : IOException ", e); } catch (DocumentException e) { LOG.error("Erreur la gnration du certificat : DocumentException ", e); } // step 6: fermeture du document. document.close(); }
From source file:fr.univlorraine.mondossierweb.controllers.ListeInscritsController.java
License:Apache License
/** * /*from w ww . j a va 2 s . co m*/ * @param document pdf */ public void creerPdfTrombinoscope(final Document document, List<Inscrit> listeInscrits, List<String> listecodind, String libelle, String annee) { //configuration des fonts Font normal = FontFactory.getFont(FontFactory.TIMES_ROMAN, 10, Font.NORMAL); Font normalbig = FontFactory.getFont(FontFactory.TIMES_ROMAN, 10, Font.BOLD); Font legerita = FontFactory.getFont(FontFactory.TIMES_ROMAN, 9, Font.ITALIC); Font leger = FontFactory.getFont(FontFactory.TIMES_ROMAN, 9, Font.NORMAL); Font headerbig = FontFactory.getFont(FontFactory.TIMES_ROMAN, 16, Font.BOLD); Font header = FontFactory.getFont(FontFactory.TIMES_ROMAN, 12, Font.BOLD); //pieds de pages: String part = ""; Date d = new Date(); DateFormat dateFormat = new SimpleDateFormat("dd-MM-yyyy"); String date = dateFormat.format(d); //alignement des libells du pied de page: String partie1 = libelle + " " + annee; String partie2 = applicationContext.getMessage("pdf.edition.date", null, Locale.getDefault()) + " : " + date; if (partie1.length() < ECARTEMENT_PIED_PAGE_PDF) { int diff = ECARTEMENT_PIED_PAGE_PDF - partie1.length(); for (int i = 0; i < diff; i++) { partie1 = partie1 + " "; } } if (partie2.length() < ECARTEMENT_PIED_PAGE_PDF) { int diff = ECARTEMENT_PIED_PAGE_PDF - partie2.length(); for (int i = 0; i < diff; i++) { partie2 = " " + partie2; } } //cration du pied de page: Phrase phra = new Phrase(partie1 + "-" + part + " Page", legerita); Phrase phra2 = new Phrase("- " + partie2, legerita); HeaderFooter hf = new HeaderFooter(phra, phra2); hf.setAlignment(HeaderFooter.ALIGN_CENTER); document.setFooter(hf); //ouverte du document. document.open(); try { //ajout image test if (configController.getLogoUniversitePdf() != null && !configController.getLogoUniversitePdf().equals("")) { Image image1 = Image.getInstance(configController.getLogoUniversitePdf()); float scaleRatio = 40 / image1.getHeight(); float newWidth = scaleRatio * image1.getWidth(); image1.scaleAbsolute(newWidth, 40); image1.setAbsolutePosition(800 - newWidth, 528); document.add(image1); } Paragraph p = new Paragraph(applicationContext .getMessage("pdf.trombinoscope.title", null, Locale.getDefault()).toUpperCase(), headerbig); p.setIndentationLeft(15); document.add(p); Paragraph p3 = new Paragraph( applicationContext.getMessage("pdf.promotion", null, Locale.getDefault()) + " : " + libelle, normal); p3.setIndentationLeft(15); document.add(p3); Paragraph p2 = new Paragraph( applicationContext.getMessage("pdf.year", null, Locale.getDefault()) + " : " + annee, normal); p2.setIndentationLeft(15); document.add(p2); Paragraph p4 = new Paragraph(applicationContext.getMessage("pdf.nbinscrits", null, Locale.getDefault()) + " : " + listecodind.size(), normal); p4.setIndentationLeft(15); document.add(p4); Paragraph p03 = new Paragraph( applicationContext.getMessage("pdf.edition.date", null, Locale.getDefault()) + " : " + date + "\n\n", normal); p03.setIndentationLeft(15); document.add(p03); PdfPTable table = new PdfPTable(NB_INSCRITS_LIGNE_TROMBI_PDF); table.setWidthPercentage(100f); int compteur = 0; Rectangle border = new Rectangle(0f, 0f); border.setBorderColorLeft(Color.WHITE); border.setBorderColorBottom(Color.WHITE); border.setBorderColorRight(Color.WHITE); border.setBorderColorTop(Color.WHITE); String tabNom[] = new String[NB_INSCRITS_LIGNE_TROMBI_PDF]; String tabNum[] = new String[NB_INSCRITS_LIGNE_TROMBI_PDF]; //insertion de listeInscrits dans listeInscritstrombi si le trombinoscope n'est pas decoup /* if (listeInscritsTrombi == null || listeInscritsTrombi.size() == 0) { ArrayList<Inscrit> listeInscritsbis = (ArrayList<Inscrit>) listeInscrits.clone(); listeInscritsTrombi.add(listeInscritsbis); }*/ //nombre d'etudiants insrer a la suite dans le pdf: int nbEtudiantInsere = 0; for (Inscrit inscrit : listeInscrits) { if (listecodind.contains(inscrit.getCod_ind())) { nbEtudiantInsere++; //on en a insr le plus possible d'un coup (pour eviter un timeout du server //de photos sur les premieres photos //au moment de l'insertion dans le pdf : document.add() ): //on insere la table dans le pdf et on recommence une nouvelle table if (nbEtudiantInsere > (NB_INSCRITS_LIGNE_TROMBI_PDF * NB_LIGNE_INSEREE_TROMBI_PDF_A_LA_SUITE)) { document.add(table); document.newPage(); table = new PdfPTable(NB_INSCRITS_LIGNE_TROMBI_PDF); table.setWidthPercentage(100f); tabNom = new String[NB_INSCRITS_LIGNE_TROMBI_PDF]; tabNum = new String[NB_INSCRITS_LIGNE_TROMBI_PDF]; nbEtudiantInsere = 1; compteur = 0; } tabNom[compteur] = "" + inscrit.getPrenom() + " \n" + inscrit.getNom() + "\n"; tabNum[compteur] = "" + inscrit.getCod_etu(); compteur++; //String foto = photo.getUrlPhotoTrombinoscopePdf(inscrit.getCod_ind(), inscrit.getCod_etu()); String foto = GenericUI.getCurrent().getPhotoProvider().getUrlPhotoTrombinoscopePdf( inscrit.getCod_ind(), inscrit.getCod_etu(), userController.isEnseignant(), userController.getCurrentUserName()); Image photo = Image.getInstance(foto); photo.scaleAbsolute(85, 107); PdfPCell cell = new PdfPCell(photo); cell.cloneNonPositionParameters(border); table.addCell(cell); if (compteur == NB_INSCRITS_LIGNE_TROMBI_PDF) { for (int i = 0; i < NB_INSCRITS_LIGNE_TROMBI_PDF; i++) { Phrase ph = new Phrase(tabNom[i], normalbig); Phrase ph2 = new Phrase(tabNum[i], leger); Paragraph pinscrit = new Paragraph(); pinscrit.add(ph); pinscrit.add(ph2); PdfPCell celltext = new PdfPCell(pinscrit); celltext.cloneNonPositionParameters(border); table.addCell(celltext); } compteur = 0; } } } if (compteur > 0) { for (int i = compteur; i < NB_INSCRITS_LIGNE_TROMBI_PDF; i++) { PdfPCell cell = new PdfPCell(); cell.cloneNonPositionParameters(border); table.addCell(cell); } for (int i = 0; i < compteur; i++) { Phrase ph = new Phrase(tabNom[i], normalbig); Phrase ph2 = new Phrase(tabNum[i], leger); Paragraph pinscrit = new Paragraph(); pinscrit.add(ph); pinscrit.add(ph2); PdfPCell celltext = new PdfPCell(pinscrit); celltext.cloneNonPositionParameters(border); table.addCell(celltext); } for (int i = compteur; i < NB_INSCRITS_LIGNE_TROMBI_PDF; i++) { PdfPCell cell = new PdfPCell(); cell.cloneNonPositionParameters(border); table.addCell(cell); } } document.add(table); } catch (BadElementException e) { LOG.error("Erreur la gnration du certificat : BadElementException ", e); } catch (MalformedURLException e) { LOG.error("Erreur la gnration du certificat : MalformedURLException ", e); } catch (IOException e) { LOG.error("Erreur la gnration du certificat : IOException ", e); } catch (DocumentException e) { LOG.error("Erreur la gnration du certificat : DocumentException ", e); } // step 6: fermeture du document. document.close(); }
From source file:fr.univlorraine.mondossierweb.controllers.NoteController.java
License:Apache License
/** * /*from w w w. j av a 2 s.c om*/ * @param document pdf */ public void creerPdfResume(final Document document, Etudiant etudiant) { //configuration des fonts Font normal = FontFactory.getFont(FontFactory.TIMES_ROMAN, 10, Font.NORMAL); Font normalbig = FontFactory.getFont(FontFactory.TIMES_ROMAN, 11, Font.BOLD); Font legerita = FontFactory.getFont(FontFactory.TIMES_ROMAN, 9, Font.ITALIC); Font headerbig = FontFactory.getFont(FontFactory.TIMES_ROMAN, 16, Font.BOLD); Font header = FontFactory.getFont(FontFactory.TIMES_ROMAN, 12, Font.BOLD); //pieds de pages: Date d = new Date(); DateFormat dateFormat = new SimpleDateFormat("dd-MM-yyyy"); String date = dateFormat.format(d); //alignement des libell du pied de page: String partie1 = applicationContext.getMessage("pdf.notes.title", null, Locale.getDefault()); String partie2 = applicationContext.getMessage("pdf.edition.date", null, Locale.getDefault()) + " : " + date; if (partie1.length() < ECARTEMENT_PIED_PAGE_PDF) { int diff = ECARTEMENT_PIED_PAGE_PDF - partie1.length(); for (int i = 0; i < diff; i++) { partie1 = partie1 + " "; } } if (partie2.length() < ECARTEMENT_PIED_PAGE_PDF) { int diff = ECARTEMENT_PIED_PAGE_PDF - partie2.length(); for (int i = 0; i < diff; i++) { partie2 = " " + partie2; } } //creation du pied de page: Phrase phra = new Phrase( partie1 + " -" + applicationContext.getMessage("pdf.page", null, Locale.getDefault()), legerita); Phrase phra2 = new Phrase("- " + partie2, legerita); HeaderFooter hf = new HeaderFooter(phra, phra2); hf.setAlignment(HeaderFooter.ALIGN_CENTER); document.setFooter(hf); //ouverte du document. document.open(); try { //ajout image test if (configController.getLogoUniversitePdf() != null && !configController.getLogoUniversitePdf().equals("")) { Image image1 = Image.getInstance(configController.getLogoUniversitePdf()); float scaleRatio = 40 / image1.getHeight(); float newWidth = scaleRatio * image1.getWidth(); image1.scaleAbsolute(newWidth, 40); image1.setAbsolutePosition(800 - newWidth, 528); document.add(image1); } boolean affMentionEtudiant = configController.isAffMentionEtudiant(); //nouveau paragraphe Paragraph p = new Paragraph(applicationContext.getMessage("pdf.notes.title", null, Locale.getDefault()) .toUpperCase(Locale.getDefault()) + "\n\n", headerbig); p.setIndentationLeft(15); document.add(p); if (etudiant.getNom() != null) { Paragraph p0 = new Paragraph(etudiant.getNom(), normal); p0.setIndentationLeft(15); document.add(p0); } if (etudiant.getCod_etu() != null) { Paragraph p01 = new Paragraph(applicationContext.getMessage("pdf.folder", null, Locale.getDefault()) + " : " + etudiant.getCod_etu(), normal); p01.setIndentationLeft(15); document.add(p01); } if (etudiant.getCod_nne() != null) { Paragraph p02 = new Paragraph(applicationContext.getMessage("pdf.nne", null, Locale.getDefault()) + " : " + etudiant.getCod_nne(), normal); p02.setIndentationLeft(15); document.add(p02); } if (etudiant.getEmail() != null) { Paragraph p03 = new Paragraph(applicationContext.getMessage("pdf.mail", null, Locale.getDefault()) + " : " + etudiant.getEmail(), normal); p03.setIndentationLeft(15); document.add(p03); } Paragraph p03 = new Paragraph( applicationContext.getMessage("pdf.edition.date", null, Locale.getDefault()) + " : " + date, normal); p03.setIndentationLeft(15); document.add(p03); document.add(new Paragraph("\n")); //Partie DIPLOMES PdfPTable table = new PdfPTable(1); table.setWidthPercentage(98); PdfPCell cell = new PdfPCell( new Paragraph(applicationContext.getMessage("pdf.diplomes", null, Locale.getDefault()) .toUpperCase(Locale.getDefault()) + " ", header)); cell.setBorder(Rectangle.NO_BORDER); cell.setBackgroundColor(new Color(153, 153, 255)); table.addCell(cell); PdfPTable table2; //if(!config.isAffRangEtudiant()){ if (!etudiant.isAfficherRang()) { table2 = new PdfPTable(4); } else { table2 = new PdfPTable(5); } table2.setWidthPercentage(98); int tailleColonneLib = 110; if (affMentionEtudiant) tailleColonneLib = 90; //if(!config.isAffRangEtudiant()){ if (!etudiant.isAfficherRang()) { int[] tabWidth = { 26, 35, tailleColonneLib, 70 }; table2.setWidths(tabWidth); } else { int[] tabWidth = { 26, 35, tailleColonneLib - 5, 70, 15 }; table2.setWidths(tabWidth); } Paragraph p1 = new Paragraph(applicationContext.getMessage("pdf.year", null, Locale.getDefault()), normalbig); Paragraph p2 = new Paragraph(applicationContext.getMessage("pdf.code.vers", null, Locale.getDefault()), normalbig); Paragraph p3 = new Paragraph(applicationContext.getMessage("pdf.diplome", null, Locale.getDefault()), normalbig); PdfPCell ct1 = new PdfPCell(p1); PdfPCell ct2 = new PdfPCell(p2); PdfPCell ct3 = new PdfPCell(p3); ct1.setBorder(Rectangle.BOTTOM); ct1.setBorderColorBottom(Color.black); ct2.setBorder(Rectangle.BOTTOM); ct2.setBorderColorBottom(Color.black); ct3.setBorder(Rectangle.BOTTOM); ct3.setBorderColorBottom(Color.black); table2.addCell(ct1); table2.addCell(ct2); table2.addCell(ct3); PdfPTable table21; if (!affMentionEtudiant) { table21 = new PdfPTable(3); int[] tabWidth21 = { 25, 20, 25 }; table21.setWidths(tabWidth21); } else { table21 = new PdfPTable(4); int[] tabWidth21 = { 25, 20, 25, 20 }; table21.setWidths(tabWidth21); } PdfPCell ct4 = new PdfPCell(new Paragraph( applicationContext.getMessage("pdf.session", null, Locale.getDefault()), normalbig)); PdfPCell ct5 = new PdfPCell( new Paragraph(applicationContext.getMessage("pdf.note", null, Locale.getDefault()), normalbig)); PdfPCell ct6 = new PdfPCell(new Paragraph( applicationContext.getMessage("pdf.resultat", null, Locale.getDefault()), normalbig)); PdfPCell ctmention = new PdfPCell(new Paragraph( applicationContext.getMessage("pdf.mention", null, Locale.getDefault()), normalbig)); ct4.setBorder(Rectangle.BOTTOM); ct4.setBorderColorBottom(Color.black); ct5.setBorder(Rectangle.BOTTOM); ct5.setBorderColorBottom(Color.black); ct6.setBorder(Rectangle.BOTTOM); ct6.setBorderColorBottom(Color.black); ctmention.setBorder(Rectangle.BOTTOM); ctmention.setBorderColorBottom(Color.black); table21.addCell(ct4); table21.addCell(ct5); table21.addCell(ct6); if (affMentionEtudiant) { table21.addCell(ctmention); } PdfPCell ct7 = new PdfPCell(table21); ct7.setBorder(Rectangle.BOTTOM); table2.addCell(ct7); PdfPCell ctrang = new PdfPCell( new Paragraph(applicationContext.getMessage("pdf.rank", null, Locale.getDefault()), normalbig)); ctrang.setBorder(Rectangle.BOTTOM); ctrang.setBorderColorBottom(Color.black); //if(config.isAffRangEtudiant()){ if (etudiant.isAfficherRang()) { table2.addCell(ctrang); } for (int i = 0; i < etudiant.getDiplomes().size(); i++) { Paragraph pa = new Paragraph(etudiant.getDiplomes().get(i).getAnnee(), normal); PdfPCell celltext = new PdfPCell(pa); celltext.setBorder(Rectangle.NO_BORDER); Paragraph pa2 = new Paragraph(etudiant.getDiplomes().get(i).getCod_dip() + "/" + etudiant.getDiplomes().get(i).getCod_vrs_vdi(), normal); PdfPCell celltext2 = new PdfPCell(pa2); celltext2.setBorder(Rectangle.NO_BORDER); Paragraph pa3 = new Paragraph(etudiant.getDiplomes().get(i).getLib_web_vdi(), normal); PdfPCell celltext3 = new PdfPCell(pa3); celltext3.setBorder(Rectangle.NO_BORDER); Paragraph parang = new Paragraph(etudiant.getDiplomes().get(i).getRang(), normal); PdfPCell cellrang = new PdfPCell(parang); cellrang.setBorder(Rectangle.NO_BORDER); PdfPCell cellvide = new PdfPCell(); cellvide.setBorder(Rectangle.NO_BORDER); table2.addCell(celltext); table2.addCell(celltext2); table2.addCell(celltext3); PdfPTable table3; if (!affMentionEtudiant) { table3 = new PdfPTable(3); int[] tabWidth2 = { 25, 20, 25 }; table3.setWidths(tabWidth2); } else { table3 = new PdfPTable(4); int[] tabWidth2 = { 25, 20, 25, 8 }; table3.setWidths(tabWidth2); } int j = 0; List<Resultat> lres = etudiant.getDiplomes().get(i).getResultats(); while (j < lres.size()) { Paragraph pa5 = new Paragraph(lres.get(j).getSession(), normal); PdfPCell celltext5 = new PdfPCell(pa5); celltext5.setBorder(Rectangle.NO_BORDER); table3.addCell(celltext5); if (lres.get(j).getNote() != null) { Paragraph pa6 = new Paragraph(lres.get(j).getNote().toString(), normal); PdfPCell celltext6 = new PdfPCell(pa6); celltext6.setBorder(Rectangle.NO_BORDER); table3.addCell(celltext6); } else { Paragraph pa6 = new Paragraph("", normal); PdfPCell celltext6 = new PdfPCell(pa6); celltext6.setBorder(Rectangle.NO_BORDER); table3.addCell(celltext6); } Paragraph pa7 = new Paragraph(lres.get(j).getAdmission(), normal); PdfPCell celltext7 = new PdfPCell(pa7); celltext7.setBorder(Rectangle.NO_BORDER); table3.addCell(celltext7); if (affMentionEtudiant) { Paragraph pa8 = new Paragraph(lres.get(j).getCodMention(), normal); PdfPCell celltext8 = new PdfPCell(pa8); celltext8.setBorder(Rectangle.NO_BORDER); table3.addCell(celltext8); } j++; } PdfPCell celltext4 = new PdfPCell(table3); celltext4.setBorder(Rectangle.NO_BORDER); table2.addCell(celltext4); //if(config.isAffRangEtudiant()){ if (etudiant.getDiplomes().get(i).isAfficherRang()) { table2.addCell(cellrang); } else { //On insere une cellule vide si on affiche pas ce rang, alors que la colonne rang fait partie de la table if (etudiant.isAfficherRang()) { table2.addCell(cellvide); } } } document.add(table); document.add(table2); document.add(new Paragraph("\n")); //Partie ETAPES PdfPTable tabletape = new PdfPTable(1); tabletape.setWidthPercentage(98); PdfPCell celletape = new PdfPCell(new Paragraph(applicationContext .getMessage("pdf.etapes", null, Locale.getDefault()).toUpperCase(Locale.getDefault()), header)); celletape.setBorder(Rectangle.NO_BORDER); celletape.setBackgroundColor(new Color(153, 153, 255)); tabletape.addCell(celletape); PdfPTable tabletape2; //if(!config.isAffRangEtudiant()){ if (!etudiant.isAfficherRang()) { tabletape2 = new PdfPTable(4); tabletape2.setWidthPercentage(98); int[] tabWidthetape = { 26, 35, tailleColonneLib, 70 }; tabletape2.setWidths(tabWidthetape); } else { tabletape2 = new PdfPTable(5); tabletape2.setWidthPercentage(98); int[] tabWidthetape = { 26, 35, tailleColonneLib - 5, 70, 15 }; tabletape2.setWidths(tabWidthetape); } PdfPCell ct3etape = new PdfPCell(new Paragraph( applicationContext.getMessage("pdf.etape", null, Locale.getDefault()), normalbig)); ct3etape.setBorder(Rectangle.BOTTOM); ct3etape.setBorderColorBottom(Color.black); tabletape2.addCell(ct1); tabletape2.addCell(ct2); tabletape2.addCell(ct3etape); tabletape2.addCell(ct7); //if(!config.isAffRangEtudiant()){ if (etudiant.isAfficherRang()) { tabletape2.addCell(ctrang); } for (int i = 0; i < etudiant.getEtapes().size(); i++) { Paragraph pa = new Paragraph(etudiant.getEtapes().get(i).getAnnee(), normal); PdfPCell celltext = new PdfPCell(pa); celltext.setBorder(Rectangle.NO_BORDER); tabletape2.addCell(celltext); Paragraph pa2 = new Paragraph( etudiant.getEtapes().get(i).getCode() + "/" + etudiant.getEtapes().get(i).getVersion(), normal); PdfPCell celltext2 = new PdfPCell(pa2); celltext2.setBorder(Rectangle.NO_BORDER); tabletape2.addCell(celltext2); Paragraph pa3 = new Paragraph(etudiant.getEtapes().get(i).getLibelle(), normal); PdfPCell celltext3 = new PdfPCell(pa3); celltext3.setBorder(Rectangle.NO_BORDER); tabletape2.addCell(celltext3); Paragraph parEtapeRang = new Paragraph(etudiant.getEtapes().get(i).getRang(), normal); PdfPCell cellEtapeRang = new PdfPCell(parEtapeRang); cellEtapeRang.setBorder(Rectangle.NO_BORDER); PdfPCell cellvide = new PdfPCell(); cellvide.setBorder(Rectangle.NO_BORDER); PdfPTable table3; if (!affMentionEtudiant) { table3 = new PdfPTable(3); int[] tabWidth2 = { 25, 20, 25 }; table3.setWidths(tabWidth2); } else { table3 = new PdfPTable(4); int[] tabWidth2 = { 25, 20, 25, 8 }; table3.setWidths(tabWidth2); } int j = 0; List<Resultat> lres = etudiant.getEtapes().get(i).getResultats(); while (j < lres.size()) { Paragraph pa5 = new Paragraph(lres.get(j).getSession(), normal); PdfPCell celltext5 = new PdfPCell(pa5); celltext5.setBorder(Rectangle.NO_BORDER); table3.addCell(celltext5); if (lres.get(j).getNote() != null) { Paragraph pa6 = new Paragraph(lres.get(j).getNote().toString(), normal); PdfPCell celltext6 = new PdfPCell(pa6); celltext6.setBorder(Rectangle.NO_BORDER); table3.addCell(celltext6); } else { Paragraph pa6 = new Paragraph("", normal); PdfPCell celltext6 = new PdfPCell(pa6); celltext6.setBorder(Rectangle.NO_BORDER); table3.addCell(celltext6); } Paragraph pa7 = new Paragraph(lres.get(j).getAdmission(), normal); PdfPCell celltext7 = new PdfPCell(pa7); celltext7.setBorder(Rectangle.NO_BORDER); table3.addCell(celltext7); if (affMentionEtudiant) { Paragraph pa8 = new Paragraph(lres.get(j).getCodMention(), normal); PdfPCell celltext8 = new PdfPCell(pa8); celltext8.setBorder(Rectangle.NO_BORDER); table3.addCell(celltext8); } j++; } PdfPCell celltext4 = new PdfPCell(table3); celltext4.setBorder(Rectangle.NO_BORDER); tabletape2.addCell(celltext4); //if(config.isAffRangEtudiant()){ if (etudiant.getEtapes().get(i).isAfficherRang()) { tabletape2.addCell(cellEtapeRang); } else { if (etudiant.isAfficherRang()) { tabletape2.addCell(cellvide); } } } document.add(tabletape); document.add(tabletape2); document.add(new Paragraph("\n")); //Partie Informations if (etudiant.isSignificationResultatsUtilisee()) { PdfPTable tablequestions = new PdfPTable(1); tablequestions.setWidthPercentage(98); PdfPCell cellquestions = new PdfPCell(new Paragraph( applicationContext.getMessage("pdf.questions", null, Locale.getDefault()) + " ", header)); cellquestions.setBorder(Rectangle.NO_BORDER); cellquestions.setBackgroundColor(new Color(153, 153, 255)); tablequestions.addCell(cellquestions); String grilleSignficationResultats = ""; Set<String> ss = etudiant.getSignificationResultats().keySet(); for (String k : ss) { if (k != null && !k.equals("") && !k.equals(" ")) { grilleSignficationResultats = grilleSignficationResultats + k + " : " + etudiant.getSignificationResultats().get(k); grilleSignficationResultats = grilleSignficationResultats + " "; } } PdfPTable tablequestions2 = new PdfPTable(1); tablequestions2.setWidthPercentage(98); PdfPCell cellquestions2 = new PdfPCell(new Paragraph( applicationContext.getMessage("pdf.code.resultat.signification", null, Locale.getDefault()) + " : \n" + grilleSignficationResultats, normal)); cellquestions2.setBorder(Rectangle.NO_BORDER); tablequestions2.addCell(cellquestions2); document.add(tablequestions); document.add(tablequestions2); } } catch (BadElementException e) { LOG.error("Erreur la gnration du rsum des notes : BadElementException ", e); } catch (MalformedURLException e) { LOG.error("Erreur la gnration du rsum des notes : MalformedURLException ", e); } catch (IOException e) { LOG.error("Erreur la gnration du rsum des notes : IOException ", e); } catch (DocumentException e) { LOG.error("Erreur la gnration du rsum des notes : DocumentException ", e); } // step 6: fermeture du document. document.close(); }
From source file:fr.univlorraine.mondossierweb.controllers.NoteController.java
License:Apache License
/** * // w w w . ja v a 2 s . c o m * @param document pdf */ public void creerPdfDetail(final Document document, Etudiant etudiant, Etape etape) { //configuration des fonts Font normal = FontFactory.getFont(FontFactory.TIMES_ROMAN, 10, Font.NORMAL); Font normalbig = FontFactory.getFont(FontFactory.TIMES_ROMAN, 11, Font.BOLD); Font legerita = FontFactory.getFont(FontFactory.TIMES_ROMAN, 9, Font.ITALIC); Font headerbig = FontFactory.getFont(FontFactory.TIMES_ROMAN, 16, Font.BOLD); Font header = FontFactory.getFont(FontFactory.TIMES_ROMAN, 12, Font.BOLD); //pieds de pages: Date d = new Date(); DateFormat dateFormat = new SimpleDateFormat("dd-MM-yyyy"); String date = dateFormat.format(d); //alignement des libells du pied de page: String partie1 = applicationContext.getMessage("pdf.notes.detail", null, Locale.getDefault()); String partie2 = applicationContext.getMessage("pdf.edition.date", null, Locale.getDefault()) + " : " + date; if (partie1.length() < ECARTEMENT_PIED_PAGE_PDF) { int diff = ECARTEMENT_PIED_PAGE_PDF - partie1.length(); for (int i = 0; i < diff; i++) { partie1 = partie1 + " "; } } if (partie2.length() < ECARTEMENT_PIED_PAGE_PDF) { int diff = ECARTEMENT_PIED_PAGE_PDF - partie2.length(); for (int i = 0; i < diff; i++) { partie2 = " " + partie2; } } //creation du pied de page: Phrase phra = new Phrase( partie1 + " -" + applicationContext.getMessage("pdf.page", null, Locale.getDefault()), legerita); Phrase phra2 = new Phrase("- " + partie2, legerita); HeaderFooter hf = new HeaderFooter(phra, phra2); hf.setAlignment(HeaderFooter.ALIGN_CENTER); document.setFooter(hf); document.setFooter(hf); //ouverte du document. document.open(); try { //ajout image test if (configController.getLogoUniversitePdf() != null && !configController.getLogoUniversitePdf().equals("")) { Image image1 = Image.getInstance(configController.getLogoUniversitePdf()); float scaleRatio = 40 / image1.getHeight(); float newWidth = scaleRatio * image1.getWidth(); image1.scaleAbsolute(newWidth, 40); image1.setAbsolutePosition(800 - newWidth, 528); document.add(image1); } //nouveau paragraphe Paragraph p = new Paragraph(applicationContext.getMessage("pdf.notes.title", null, Locale.getDefault()) .toUpperCase(Locale.getDefault()) + "\n\n", headerbig); p.setIndentationLeft(15); document.add(p); if (etudiant.getNom() != null) { Paragraph p0 = new Paragraph(etudiant.getNom(), normal); p0.setIndentationLeft(15); document.add(p0); } if (etudiant.getCod_etu() != null) { Paragraph p01 = new Paragraph(applicationContext.getMessage("pdf.folder", null, Locale.getDefault()) + " : " + etudiant.getCod_etu(), normal); p01.setIndentationLeft(15); document.add(p01); } if (etudiant.getCod_nne() != null) { Paragraph p02 = new Paragraph(applicationContext.getMessage("pdf.nne", null, Locale.getDefault()) + " : " + etudiant.getCod_nne(), normal); p02.setIndentationLeft(15); document.add(p02); } if (etudiant.getEmail() != null) { Paragraph p03 = new Paragraph(applicationContext.getMessage("pdf.mail", null, Locale.getDefault()) + " : " + etudiant.getEmail(), normal); p03.setIndentationLeft(15); document.add(p03); } Paragraph p03 = new Paragraph( applicationContext.getMessage("pdf.edition.date", null, Locale.getDefault()) + " : " + date, normal); p03.setIndentationLeft(15); document.add(p03); document.add(new Paragraph("\n")); //Partie des notes PdfPTable table = new PdfPTable(1); table.setWidthPercentage(98); //PdfPCell cell = new PdfPCell(new Paragraph(applicationContext.getMessage("pdf.elements.epreuves", null, Locale.getDefault()).toUpperCase(Locale.getDefault()) + " - "+applicationContext.getMessage("pdf.annee.universitaire", null, Locale.getDefault()) + " : " + etape.getAnnee(), header)); PdfPCell cell = new PdfPCell(new Paragraph(etape.getLibelle() + " - " + applicationContext.getMessage("pdf.annee.universitaire", null, Locale.getDefault()) + " : " + etape.getAnnee(), header)); cell.setBorder(Rectangle.NO_BORDER); cell.setBackgroundColor(new Color(153, 153, 255)); table.addCell(cell); PdfPTable table2; boolean afficherRangElpEpr = etudiantController.isAfficherRangElpEpr(); boolean affRangEtudiant = configController.isAffRangEtudiant(); boolean affECTSEtudiant = configController.isAffECTSEtudiant(); if ((!affRangEtudiant && !afficherRangElpEpr) && !affECTSEtudiant) { //NI isAffRangEtudiant NI isAffECTSEtudiant table2 = new PdfPTable(6); table2.setWidthPercentage(98); int[] tabWidth = { 35, 110, 25, 25, 25, 25 }; table2.setWidths(tabWidth); } else { if (((affRangEtudiant || afficherRangElpEpr) && !affECTSEtudiant) || ((!affRangEtudiant && !afficherRangElpEpr) && affECTSEtudiant)) { //isAffRangEtudiant OU isAffECTSEtudiant table2 = new PdfPTable(7); table2.setWidthPercentage(98); int[] tabWidth = { 33, 110, 22, 22, 22, 22, 15 }; table2.setWidths(tabWidth); } else { //isAffRangEtudiant ET isAffECTSEtudiant table2 = new PdfPTable(8); table2.setWidthPercentage(98); int[] tabWidth = { 33, 110, 22, 22, 22, 22, 15, 15 }; table2.setWidths(tabWidth); } } //Paragraph p1 = new Paragraph(applicationContext.getMessage("pdf.year", null, Locale.getDefault()),normalbig); Paragraph p2 = new Paragraph(applicationContext.getMessage("pdf.code", null, Locale.getDefault()), normalbig); Paragraph p3 = new Paragraph(applicationContext.getMessage("pdf.label", null, Locale.getDefault()), normalbig); Paragraph parRang = new Paragraph(applicationContext.getMessage("pdf.rank", null, Locale.getDefault()), normalbig); Paragraph parEcts = new Paragraph(applicationContext.getMessage("pdf.ects", null, Locale.getDefault()), normalbig); PdfPCell ct4 = new PdfPCell(new Paragraph( applicationContext.getMessage("pdf.session", null, Locale.getDefault()) + " 1", normalbig)); PdfPCell ct5 = new PdfPCell(new Paragraph( applicationContext.getMessage("pdf.resultat", null, Locale.getDefault()), normalbig)); PdfPCell ct6 = new PdfPCell(new Paragraph( applicationContext.getMessage("pdf.session", null, Locale.getDefault()) + " 2", normalbig)); PdfPCell ct7 = new PdfPCell(new Paragraph( applicationContext.getMessage("pdf.resultat", null, Locale.getDefault()), normalbig)); //PdfPCell ct1 = new PdfPCell(p1); PdfPCell ct2 = new PdfPCell(p2); PdfPCell ct3 = new PdfPCell(p3); PdfPCell cellRang = new PdfPCell(parRang); PdfPCell cellEcts = new PdfPCell(parEcts); //ct1.setBorder(Rectangle.BOTTOM); ct1.setBorderColorBottom(Color.black); ct2.setBorder(Rectangle.BOTTOM); ct2.setBorderColorBottom(Color.black); ct3.setBorder(Rectangle.BOTTOM); ct3.setBorderColorBottom(Color.black); ct4.setBorder(Rectangle.BOTTOM); ct4.setBorderColorBottom(Color.black); ct5.setBorder(Rectangle.BOTTOM); ct5.setBorderColorBottom(Color.black); ct6.setBorder(Rectangle.BOTTOM); ct6.setBorderColorBottom(Color.black); ct7.setBorder(Rectangle.BOTTOM); ct7.setBorderColorBottom(Color.black); cellRang.setBorder(Rectangle.BOTTOM); cellRang.setBorderColorBottom(Color.black); cellEcts.setBorder(Rectangle.BOTTOM); cellEcts.setBorderColorBottom(Color.black); //table2.addCell(ct1); table2.addCell(ct2); table2.addCell(ct3); table2.addCell(ct4); table2.addCell(ct5); table2.addCell(ct6); table2.addCell(ct7); if ((affRangEtudiant || afficherRangElpEpr)) { table2.addCell(cellRang); } if (affRangEtudiant) { table2.addCell(cellEcts); } for (int i = 0; i < etudiant.getElementsPedagogiques().size(); i++) { /*String annee = etudiant.getElementsPedagogiques().get(i).getAnnee().replaceAll(applicationContext.getMessage("pdf.replace.ficm", null, Locale.getDefault()), ""); Paragraph pa = new Paragraph(annee, normal); PdfPCell celltext = new PdfPCell(pa); celltext.setBorder(Rectangle.NO_BORDER); table2.addCell(celltext);*/ Paragraph pa2 = new Paragraph(etudiant.getElementsPedagogiques().get(i).getCode(), normal); PdfPCell celltext2 = new PdfPCell(pa2); celltext2.setBorder(Rectangle.NO_BORDER); table2.addCell(celltext2); String indentation = ""; for (int j = 0; j < etudiant.getElementsPedagogiques().get(i).getLevel(); j++) { indentation = indentation + " "; } Paragraph pa3 = new Paragraph(indentation + etudiant.getElementsPedagogiques().get(i).getLibelle(), normal); PdfPCell celltext3 = new PdfPCell(pa3); celltext3.setBorder(Rectangle.NO_BORDER); table2.addCell(celltext3); Paragraph pa5 = new Paragraph(getNote1(etudiant.getElementsPedagogiques().get(i)), normal); PdfPCell celltext5 = new PdfPCell(pa5); celltext5.setBorder(Rectangle.NO_BORDER); table2.addCell(celltext5); Paragraph pa6 = new Paragraph(etudiant.getElementsPedagogiques().get(i).getRes1(), normal); PdfPCell celltext6 = new PdfPCell(pa6); celltext6.setBorder(Rectangle.NO_BORDER); table2.addCell(celltext6); Paragraph pa7 = new Paragraph(getNote2(etudiant.getElementsPedagogiques().get(i)), normal); PdfPCell celltext7 = new PdfPCell(pa7); celltext7.setBorder(Rectangle.NO_BORDER); table2.addCell(celltext7); Paragraph pa8 = new Paragraph(etudiant.getElementsPedagogiques().get(i).getRes2(), normal); PdfPCell celltext8 = new PdfPCell(pa8); celltext8.setBorder(Rectangle.NO_BORDER); table2.addCell(celltext8); if ((affRangEtudiant || afficherRangElpEpr)) { Paragraph parRang2 = new Paragraph(etudiant.getElementsPedagogiques().get(i).getRang(), normal); PdfPCell cellRang2 = new PdfPCell(parRang2); cellRang2.setBorder(Rectangle.NO_BORDER); table2.addCell(cellRang2); } if (affECTSEtudiant) { Paragraph parEcts2 = new Paragraph(etudiant.getElementsPedagogiques().get(i).getEcts(), normal); PdfPCell cellEcts2 = new PdfPCell(parEcts2); cellEcts2.setBorder(Rectangle.NO_BORDER); table2.addCell(cellEcts2); } } document.add(table); document.add(table2); document.add(new Paragraph("\n")); //Partie QUESTIONS if (etudiant.isSignificationResultatsUtilisee()) { PdfPTable tablequestions = new PdfPTable(1); tablequestions.setWidthPercentage(98); PdfPCell cellquestions = new PdfPCell( new Paragraph(applicationContext.getMessage("pdf.questions", null, Locale.getDefault()) .toUpperCase(Locale.getDefault()) + " ", header)); cellquestions.setBorder(Rectangle.NO_BORDER); cellquestions.setBackgroundColor(new Color(153, 153, 255)); tablequestions.addCell(cellquestions); PdfPTable tablequestions2 = new PdfPTable(1); tablequestions2.setWidthPercentage(98); String grilleSignficationResultats = ""; Set<String> ss = etudiant.getSignificationResultats().keySet(); for (String k : ss) { if (k != null && !k.equals("") && !k.equals(" ")) { grilleSignficationResultats = grilleSignficationResultats + k + " : " + etudiant.getSignificationResultats().get(k); grilleSignficationResultats = grilleSignficationResultats + " "; } } PdfPCell cellquestions2 = new PdfPCell(new Paragraph( applicationContext.getMessage("pdf.code.resultat.signification", null, Locale.getDefault()) + " : \n" + grilleSignficationResultats, normal)); cellquestions2.setBorder(Rectangle.NO_BORDER); tablequestions2.addCell(cellquestions2); document.add(tablequestions); document.add(tablequestions2); } } catch (BadElementException e) { LOG.error("Erreur la gnration du detail des notes : BadElementException ", e); } catch (MalformedURLException e) { LOG.error("Erreur la gnration du detail des notes : MalformedURLException ", e); } catch (IOException e) { LOG.error("Erreur la gnration du detail des notes : IOException ", e); } catch (DocumentException e) { LOG.error("Erreur la gnration du detail des notes : DocumentException ", e); } // step 6: fermeture du document. document.close(); }
From source file:hornet.framework.export.fdf.FDF.java
License:CeCILL license
/** * Fusion d'un champ FDF.//from w w w .java 2 s. co m * * @param data * the data * @param stamper * the stamper * @param res * the res * @param form * the form * @param nomField * the nom field * @throws IOException * Signals that an I/O exception has occurred. * @throws DocumentException * the document exception */ private static void fusionChamp(final Object data, final PdfStamper stamper, final FDFRes res, final AcroFields form, final Object nomField) throws IOException, DocumentException { // utilisation du ":" comme sparateur d'accs. // le "." tant remplac par "_" par openoffice lors // de la conversion PDF. final String nomFieldStr = nomField.toString().replace(':', '.'); Object value = null; try { value = PropertyUtils.getProperty(data, nomFieldStr); } catch (final Exception ex) { res.getUnmerged().add(nomFieldStr); } String valueStr; if (value == null) { valueStr = ""; // itext n'accepte pas les valeurs // nulles form.setField(nomField.toString(), valueStr); } else if (value instanceof FDFImage) { final FDFImage imValue = (FDFImage) value; final float[] positions = form.getFieldPositions(nomField.toString()); final PdfContentByte content = stamper.getOverContent(1); final Image im = Image.getInstance(imValue.getData()); if (imValue.isFit()) { content.addImage(im, positions[FieldBoxPositions.URX.ordinal()] - positions[FieldBoxPositions.LLX.ordinal()], 0, 0, positions[FieldBoxPositions.URY.ordinal()] - positions[FieldBoxPositions.LLY.ordinal()], positions[FieldBoxPositions.LLX.ordinal()], positions[FieldBoxPositions.LLY.ordinal()]); } else { content.addImage(im, im.getWidth(), 0, 0, im.getHeight(), positions[1], positions[2]); } } else if (value instanceof Date) { // format par dfaut date valueStr = DateFormat.getDateInstance(DateFormat.SHORT).format(value); form.setField(nomField.toString(), valueStr); } else if (value instanceof Boolean) { // format par spcial pour Checkbox if (Boolean.TRUE.equals(value)) { valueStr = "Yes"; } else { valueStr = "No"; } form.setField(nomField.toString(), valueStr); } else { // format par dfaut valueStr = value.toString(); form.setField(nomField.toString(), valueStr); } }
From source file:is.idega.idegaweb.egov.printing.business.DocumentBusinessBean.java
License:Open Source License
private PdfTemplate createPasswordLetterTemplate(PdfWriter writer) throws Exception { IWBundle iwb = getIWApplicationContext().getIWMainApplication() .getBundle(is.idega.idegaweb.egov.message.business.MessageConstants.IW_BUNDLE_IDENTIFIER); PdfContentByte cb = writer.getDirectContent(); float tempLength = 511f; float tempHeight = getPointsFromMM(40); PdfTemplate template = cb.createTemplate(tempLength, tempHeight); if (addTemplateHeader()) { BaseFont bf = BaseFont.createFont(BaseFont.HELVETICA, BaseFont.CP1252, BaseFont.NOT_EMBEDDED); String mail_zip = iwb.getProperty("commune.mail_zip"); String mail_name = iwb.getProperty("commune.mail_name"); float convLengt = 100f; float convHeight = 60f; template.rectangle(0f, 0f, convLengt, convHeight); template.moveTo(0f, 0f);/*w w w. ja v a 2 s. c o m*/ template.lineTo(convLengt, convHeight); template.moveTo(convLengt, 0f); template.lineTo(0f, convHeight); template.stroke(); template.beginText(); template.setFontAndSize(bf, 11f); template.setTextMatrix(5f, 40f); template.showText(mail_name); template.endText(); template.beginText(); template.setFontAndSize(bf, 11f); template.setTextMatrix(5f, 25f); template.showText(mail_zip); template.endText(); Image porto = Image.getInstance(iwb.getResourcesRealPath() + "/shared/porto_betalt.jpg"); porto.scaleAbsolute(60f, 60f); // Image portoA =Image.getInstance(iwb.getResourcesRealPath()+ // "/shared/porto_a_logo.jpg"); // float Awidth = 2.3f*60f; // portoA.scaleToFit(Awidth,60f); float portoXPos = tempLength - 90f; // float portoAXPos = portoXPos-Awidth-5f; template.addImage(porto, 60f, 0f, 0f, 60f, portoXPos, 0); // template.addImage(portoA,Awidth,0f,0f,60f,portoAXPos,0); } return template; }
From source file:is.idega.idegaweb.egov.printing.business.DocumentBusinessBean.java
License:Open Source License
public void createLogoContent(Document document) throws BadElementException, MalformedURLException, IOException, DocumentException { IWBundle iwb = getIWApplicationContext().getIWMainApplication() .getBundle(is.idega.idegaweb.egov.message.business.MessageConstants.IW_BUNDLE_IDENTIFIER); checkBundleDimensions(iwb);// w w w . j a v a 2 s . com Image image = Image.getInstance(iwb.getResourcesRealPath() + "/shared/commune_logo.png"); image.scaleToFit(getPointsFromMM(logoScaleWidth), getPointsFromMM(logoScaleHeight)); image.setAbsolutePosition(getPointsFromMM(logoAbsPosX), getPointsFromMM(logoAbsPosY)); document.add(image); }
From source file:ispyb.client.biosaxs.pdf.DataAcquisitionPDFReport.java
License:Open Source License
private Element getImageTable(Experiment3VO experiment, List<Buffer3VO> buffers) { PdfPTable table = new PdfPTable(ImageColumns.length); table.setWidthPercentage(100f);// ww w .j av a 2s.co m table.getDefaultCell().setPadding(3); table.getDefaultCell().setColspan(ImageColumns.length); table.getDefaultCell().setHorizontalAlignment(Element.ALIGN_CENTER); table.getDefaultCell().setHorizontalAlignment(Element.ALIGN_LEFT); table.getDefaultCell().setColspan(1); table.getDefaultCell().setBackgroundColor(PdfRtfExporter.BLUE_COLOR); for (int i = 0; i < ImageColumns.length; i++) { table.addCell(this.getCell(ImageColumns[i], BaseFont.HELVETICA_BOLD)); } table.getDefaultCell().setBackgroundColor(null); List<Measurement3VO> measurements = experiment.getMeasurements(); Collections.sort(measurements, MeasurementComparator .compare(MeasurementComparator.getComparator(MeasurementComparator.PRIOTIRY_SORT_ASC))); for (int x = 0; x < measurements.size(); x++) { Measurement3VO measurement = measurements.get(x); Specimen3VO specimen = experiment.getSampleById(measurement.getSpecimenId()); if (specimen.getMacromolecule3VO() != null) { SaxsDataCollection3VO dataCollection = experiment .getDataCollectionByMeasurementId(measurement.getMeasurementId()); ArrayList<String> list = this.addAnalysisRow(measurement, experiment, buffers); if (list.size() > 0) { int sizeTable = list.get(0).length(); PdfPTable nested1 = new PdfPTable(sizeTable); nested1.getDefaultCell().setBorder(0); for (int i = 0; i < list.size(); i++) { if (i == 0) { nested1.getDefaultCell().setBackgroundColor(PdfRtfExporter.LIGHT_GREY_COLOR); nested1.getDefaultCell().setBorder(0); Paragraph cell = this.getCell(this.COLUMNS[i] + ": " + list.get(i)); nested1.addCell(cell); } else { nested1.getDefaultCell().setBackgroundColor(null); nested1.getDefaultCell().setBorder(0); PdfPCell cell = new PdfPCell(this.getCell(this.COLUMNS[i] + ": " + list.get(i))); cell.setBorder(0); nested1.addCell(cell); } } table.addCell(new PdfPCell(nested1)); if (dataCollection.getSubstraction3VOs() != null) { if (dataCollection.getSubstraction3VOs().size() > 0) { Subtraction3VO substraction = ((Subtraction3VO) (dataCollection.getSubstraction3VOs() .toArray()[0])); String scatteringImage = BiosaxsActions .checkFilePathForDevelopment(substraction.getScatteringFilePath()); if (scatteringImage != null) { if (new File(scatteringImage).exists()) { try { PdfPCell cell = new PdfPCell(Image.getInstance(scatteringImage), true); cell.setBorder(0); table.addCell(cell); } catch (Exception e) { PdfPCell cell = new PdfPCell(this.getCell("Image not found")); cell.setBorder(0); table.addCell(cell); e.printStackTrace(); } } else { PdfPCell cell = new PdfPCell(this.getCell("Image not found")); cell.setBorder(0); table.addCell(cell); } } else { PdfPCell cell = new PdfPCell(this.getCell("Image not found")); cell.setBorder(0); table.addCell(cell); } String guinierImage = BiosaxsActions .checkFilePathForDevelopment(substraction.getGuinierFilePath()); if (guinierImage != null) { if (new File(guinierImage).exists()) { try { PdfPCell cell = new PdfPCell(Image.getInstance(guinierImage), true); cell.setBorder(0); table.addCell(cell); } catch (Exception e) { PdfPCell cell = new PdfPCell(this.getCell("Image not found")); cell.setBorder(0); table.addCell(cell); e.printStackTrace(); } } else { PdfPCell cell = new PdfPCell(this.getCell("Image not found")); cell.setBorder(0); table.addCell(cell); } } else { PdfPCell cell = new PdfPCell(this.getCell("Image not found")); cell.setBorder(0); table.addCell(cell); } String kraktyImage = BiosaxsActions .checkFilePathForDevelopment(substraction.getKratkyFilePath()); if (kraktyImage != null) { if (new File(kraktyImage).exists()) { try { PdfPCell cell = new PdfPCell(Image.getInstance(kraktyImage), true); cell.setBorder(0); table.addCell(cell); } catch (Exception e) { PdfPCell cell = new PdfPCell(this.getCell("Image not found")); cell.setBorder(0); table.addCell(cell); e.printStackTrace(); } } else { PdfPCell cell = new PdfPCell(this.getCell("Image not found")); cell.setBorder(0); table.addCell(cell); } } else { PdfPCell cell = new PdfPCell(this.getCell("Image not found")); cell.setBorder(0); table.addCell(cell); } String gnomImage = BiosaxsActions .checkFilePathForDevelopment(substraction.getGnomFilePath()); if (gnomImage != null) { if (new File(gnomImage).exists()) { try { PdfPCell cell = new PdfPCell(Image.getInstance(gnomImage), true); cell.setBorder(0); table.addCell(cell); } catch (Exception e) { PdfPCell cell = new PdfPCell(this.getCell("Image not found")); cell.setBorder(0); table.addCell(cell); e.printStackTrace(); } } else { PdfPCell cell = new PdfPCell(this.getCell("Image not found")); cell.setBorder(0); table.addCell(cell); } } else { PdfPCell cell = new PdfPCell(this.getCell("Image not found")); cell.setBorder(0); table.addCell(cell); } } } } } } return table; }