List of usage examples for com.itextpdf.text Paragraph setFont
public void setFont(final Font font)
From source file:com.solidmaps.webapp.report.RequerimentAlterLicenseExercitoPDF.java
/** * Alteraes Cadastrais/*from ww w . ja v a2 s .c o m*/ * * @param doc * @param license * @param listProducts * @throws DocumentException */ private void createAlterLicense(Document doc, LicenseEXEntity license, String text, String type) throws DocumentException { if (StringUtils.isEmpty(text)) { return; } StringBuilder sb = new StringBuilder().append(numLine++).append("-) ").append("CORREO de ").append(type) .append(" em seu CERTIFICADO DE REGISTRO n:").append(license.getNumRegister()).append(" para: ") .append(text).append(" conforme cadastrado junto a Prefeitura da Cidade de ") .append(license.getCompany().getCity()).append("/").append(license.getCompany().getState()) .append(" e Receita Federal."); Paragraph paragraph = new Paragraph(sb.toString()); paragraph.setFont(FONT_PARAGRAPH); doc.add(Chunk.NEWLINE); doc.add(paragraph); doc.add(Chunk.NEWLINE); }
From source file:com.solidmaps.webapp.report.RequerimentAlterLicenseExercitoPDF.java
private void createSignature(Document doc, LicenseEXEntity license) throws DocumentException { StringBuilder sbTerms = new StringBuilder().append("Nestes termos").append(WINDOWS_LINE_SEPARATOR) .append(" Pede deferimento."); StringBuilder sbDate = new StringBuilder().append(license.getCompany().getCity()).append("/") .append(license.getCompany().getState()).append(", ") .append(DateUtils.format(Calendar.getInstance())); StringBuilder sbSignature = new StringBuilder().append("____________________________________________") .append(WINDOWS_LINE_SEPARATOR).append(license.getCompany().getName()) .append(WINDOWS_LINE_SEPARATOR).append(license.getCompany().getUserResponsable().getName()) .append(" - ").append(license.getCompany().getUserResponsable().getOffice()); Paragraph paragraphTerms = new Paragraph(sbTerms.toString()); paragraphTerms.setFont(FONT_PARAGRAPH); paragraphTerms.setAlignment(Element.ALIGN_CENTER); Paragraph paragraphDate = new Paragraph(sbDate.toString()); paragraphDate.setFont(FONT_PARAGRAPH); Paragraph paragraphSignature = new Paragraph(sbSignature.toString()); paragraphSignature.setFont(FONT_PARAGRAPH); paragraphSignature.setAlignment(Element.ALIGN_CENTER); doc.add(Chunk.NEWLINE);//from w w w . j a va2 s . c o m doc.add(paragraphTerms); doc.add(Chunk.NEWLINE); doc.add(paragraphDate); doc.add(Chunk.NEWLINE); doc.add(Chunk.NEWLINE); doc.add(paragraphSignature); doc.add(Chunk.NEWLINE); }
From source file:com.udec.utilidades.PdfTable.java
public void createPdf(List<Nomina> nomi, Periodo pe) { //Abrimos el documento para edicin //Declaramos un texto como Paragraph //Le podemos dar formado como alineacin, tamao y color a la fuente. Paragraph parrafo = new Paragraph(); parrafo.setAlignment(Paragraph.ALIGN_CENTER); parrafo.setFont(FontFactory.getFont("Arial", 12, Font.BOLD, BaseColor.BLACK)); parrafo.add("CAJA DE PREVISION SOCIAL U. DE C.\n"); parrafo.add(pe.getNombre() + "\n"); parrafo.add(" "); try {/*from w ww .ja v a2 s .c o m*/ //Agregamos el texto al documento documento.add(parrafo); //Agregamos un salto de linea documento.add(new Paragraph(" ")); //Agregamos la tabla al documento haciendo //la llamada al mtodo tabla() //documento.add(tabla()); documento.add(tabla2(nomi)); documento.add(new Paragraph(" ")); documento.add(tabla3(nomi)); documento.add(new Paragraph(" ")); documento.add(new Paragraph(" ")); documento.add(new Paragraph(" ")); documento.add(firma()); } catch (DocumentException ex) { ex.getMessage(); } try { //File file = new File(archivo); //Desktop.getDesktop().open(file); } catch (Exception e) { //e.printStackTrace(); } }
From source file:controllerPDF.Pdf3DTAlpha.java
private void addHeader() throws DocumentException { Paragraph paragraph = new Paragraph("3D&T - Defensores de Tquio 3 Edio Alpha"); paragraph.setFont(new Font(FontFamily.TIMES_ROMAN, 15, Font.BOLD, BaseColor.BLACK)); paragraph.setAlignment(1);//from w ww. ja va 2 s . c o m document.add(paragraph); paragraph = new Paragraph("FICHA DE PERSONAGEM"); paragraph.setFont(new Font(FontFamily.TIMES_ROMAN, 15, Font.BOLD, BaseColor.BLUE)); document.add(paragraph); }
From source file:de.jost_net.JVerein.gui.action.SpendenbescheinigungPrintAction.java
License:Open Source License
/** * Generierung des Standard-Dokumentes zu verwenden fr Spendenbescheinigungen * ab 01.01.2013//from ww w .ja v a2 s. co m * * @param spb * Die Spendenbescheinigung aus der Datenbank * @param fileName * Der Dateiname, wohin das Dokument geschrieben werden soll * @throws IOException * @throws DocumentException */ private void generiereSpendenbescheinigungStandardAb2013(Spendenbescheinigung spb, String fileName) throws IOException, DocumentException { final File file = new File(fileName); FileOutputStream fos = new FileOutputStream(file); Map<String, Object> map = spb.getMap(null); map = new AllgemeineMap().getMap(map); boolean isSammelbestaetigung = spb.isSammelbestaetigung(); Reporter rpt = new Reporter(fos, 80, 50, 50, 50); rpt.addHeaderColumn("Aussteller (Bezeichnung und Anschrift der steuerbegnstigten Einrichtung)", Element.ALIGN_CENTER, 100, BaseColor.LIGHT_GRAY); rpt.createHeader(); rpt.addColumn("\n" + getAussteller() + "\n ", Element.ALIGN_LEFT); rpt.closeTable(); if (isSammelbestaetigung) { rpt.add("Sammelbesttigung ber " + map.get(SpendenbescheinigungVar.SPENDEART.getName()), 13); } else { rpt.add("Besttigung ber " + map.get(SpendenbescheinigungVar.SPENDEART.getName()), 13); } rpt.add("im Sinne des 10b des Einkommenssteuergesetzes an eine der in 5 Abs. 1 Nr. 9 des Krperschaftssteuergesetzes " + "bezeichneten Krperschaften, Personenvereinigungen oder Vermgensmassen\n", 10); rpt.addHeaderColumn("Name und Anschrift des Zuwendenden", Element.ALIGN_CENTER, 100, BaseColor.LIGHT_GRAY); rpt.createHeader(); rpt.addColumn((String) map.get(SpendenbescheinigungVar.EMPFAENGER.getName()), Element.ALIGN_LEFT); rpt.closeTable(); switch (spb.getSpendenart()) { case Spendenart.GELDSPENDE: rpt.addHeaderColumn("Betrag der Zuwendung -in Ziffern-", Element.ALIGN_CENTER, 100, BaseColor.LIGHT_GRAY); break; case Spendenart.SACHSPENDE: rpt.addHeaderColumn("Wert der Zuwendung -in Ziffern-", Element.ALIGN_CENTER, 100, BaseColor.LIGHT_GRAY); break; } rpt.addHeaderColumn("-in Buchstaben-", Element.ALIGN_CENTER, 250, BaseColor.LIGHT_GRAY); if (!isSammelbestaetigung) { rpt.addHeaderColumn("Tag der Zuwendung", Element.ALIGN_CENTER, 50, BaseColor.LIGHT_GRAY); } else { rpt.addHeaderColumn("Zeitraum der Sammelbesttigung", Element.ALIGN_CENTER, 75, BaseColor.LIGHT_GRAY); } rpt.createHeader(); rpt.addColumn( "*" + Einstellungen.DECIMALFORMAT.format(map.get(SpendenbescheinigungVar.BETRAG.getName())) + "*", Element.ALIGN_CENTER); rpt.addColumn((String) map.get(SpendenbescheinigungVar.BETRAGINWORTEN.getName()), Element.ALIGN_CENTER); if (!isSammelbestaetigung) { rpt.addColumn((String) map.get(SpendenbescheinigungVar.SPENDEDATUM.getName()), Element.ALIGN_CENTER); } else { rpt.addColumn((String) map.get(SpendenbescheinigungVar.SPENDENZEITRAUM.getName()), Element.ALIGN_CENTER); } rpt.closeTable(); switch (spb.getSpendenart()) { case Spendenart.SACHSPENDE: rpt.addHeaderColumn("Genaue Bezeichnung der Sachzuwendung mit Alter, Zustand, Kaufpreis usw.", Element.ALIGN_CENTER, 100, BaseColor.LIGHT_GRAY); rpt.createHeader(); rpt.addColumn(spb.getBezeichnungSachzuwendung(), Element.ALIGN_LEFT); rpt.closeTable(); switch (spb.getHerkunftSpende()) { case HerkunftSpende.BETRIEBSVERMOEGEN: rpt.add("Die Sachzuwendung stammt nach den Angaben des Zuwendenden aus dem Betriebsvermgen und ist " + "mit dem Entnahmewert (ggf. mit dem niedrigeren gemeinen Wert) bewertet.\n\n", 9); break; case HerkunftSpende.PRIVATVERMOEGEN: rpt.add("Die Sachzuwendung stammt nach den Angaben des Zuwendenden aus dem Privatvermgen.\n\n", 9); break; case HerkunftSpende.KEINEANGABEN: rpt.add("Der Zuwendende hat trotz Aufforderung keine Angaben zur Herkunft der Sachzuwendung gemacht.\n\n", 9); break; } if (spb.getUnterlagenWertermittlung()) { rpt.add("Geeignete Unterlagen, die zur Wertermittlung gedient haben, z. B. Rechnung, Gutachten, liegen vor.\n\n", 9); } } /* * Bei Sammelbesttigungen ist der Verweis auf Verzicht in der Anlage * vermerkt */ String verzicht = ""; char verzichtJa = (char) 113; // box leer char verzichtNein = (char) 53; // X if (spb.getAutocreate()) { if (!isSammelbestaetigung && spb.getSpendenart() == Spendenart.GELDSPENDE) { if (spb.getBuchungen().get(0).getVerzicht().booleanValue()) { verzichtJa = (char) 53; // X verzichtNein = (char) 113; // box leer } } } else { if (spb.getErsatzAufwendungen()) { verzichtJa = (char) 53; // X verzichtNein = (char) 113; // box leer } } if (!isSammelbestaetigung) { Paragraph p = new Paragraph(); p.setFont(Reporter.getFreeSans(9)); p.setAlignment(Element.ALIGN_LEFT); p.add(new Chunk("Es handelt sich um den Verzicht auf Erstattung von Aufwendungen: ")); p.add(new Chunk(" Ja ", Reporter.getFreeSansBold(9))); p.add(new Chunk(verzichtJa, FontFactory.getFont(FontFactory.ZAPFDINGBATS, 10))); p.add(new Chunk(" Nein ", Reporter.getFreeSansBold(9))); p.add(new Chunk(verzichtNein, FontFactory.getFont(FontFactory.ZAPFDINGBATS, 10))); p.add(new Chunk("\n\n")); rpt.add(p); } else { rpt.add(new Paragraph(" ", Reporter.getFreeSans(12))); } if (!Einstellungen.getEinstellung().getVorlaeufig()) { String txt = "Wir sind wegen " + Einstellungen.getEinstellung().getBeguenstigterzweck() + " nach dem letzten uns zugegangenen Freistellungsbescheid bzw. nach der Anlage zum Krperschaftssteuerbescheid des Finanzamtes " + Einstellungen.getEinstellung().getFinanzamt() + ", StNr. " + Einstellungen.getEinstellung().getSteuernummer() + ", vom " + new JVDateFormatTTMMJJJJ().format(Einstellungen.getEinstellung().getBescheiddatum()) + " nach 5 Abs. 1 Nr. 9 des Krperschaftsteuergesetzes von der Krperschaftsteuer und nach 3 Nr. 6 des Gewerbesteuergesetzes von der Gewerbesteuer befreit."; rpt.add(txt, 8); } else { String txt = "Wir sind wegen " + Einstellungen.getEinstellung().getBeguenstigterzweck() + " durch vorlufige Bescheinigung des Finanzamtes " + Einstellungen.getEinstellung().getFinanzamt() + ", StNr. " + Einstellungen.getEinstellung().getSteuernummer() + ", vom " + new JVDateFormatTTMMJJJJ().format(Einstellungen.getEinstellung().getBescheiddatum()) + " ab " + new JVDateFormatTTMMJJJJ().format(Einstellungen.getEinstellung().getVorlaeufigab()) + " als begnstigten Zwecken dienend anerkannt."; rpt.add(txt, 8); } rpt.add("\nEs wird besttigt, dass die Zuwendung nur zur " + Einstellungen.getEinstellung().getBeguenstigterzweck() + " verwendet wird.\n", 8); if (spb.getSpendenart() == Spendenart.GELDSPENDE) { char mitgliedBetraege = (char) 113; // box leer if (!Einstellungen.getEinstellung().getMitgliedsbetraege()) { mitgliedBetraege = (char) 53; // X } Paragraph p = new Paragraph(); p.setFont(Reporter.getFreeSans(9)); p.setAlignment(Element.ALIGN_LEFT); p.add(new Chunk("\n")); p.add(new Chunk( "Nur fr steuerbegnstigte Einrichtungen, bei denen die Mitgliedsbeitrge steuerlich nicht abziehbar sind:")); rpt.add(p); p = new Paragraph(); p.setFont(Reporter.getFreeSans(9)); p.setAlignment(Element.ALIGN_JUSTIFIED); p.setFirstLineIndent((float) -18.5); p.setIndentationLeft((float) 18.5); p.add(new Chunk(mitgliedBetraege, FontFactory.getFont(FontFactory.ZAPFDINGBATS, 10))); p.add(new Chunk( " Es wird besttigt, dass es sich nicht um einen Mitgliedsbeitrag handelt, dessen Abzug nach 10b Abs. 1 des Einkommensteuergesetzes ausgeschlossen ist.")); rpt.add(p); } if (isSammelbestaetigung) { rpt.add(new Paragraph(" ", Reporter.getFreeSans(12))); rpt.add("Es wird besttigt, dass ber die in der Gesamtsumme enthaltenen Zuwendungen keine weiteren Besttigungen, weder formelle Zuwendungsbesttigungen noch Beitragsquittungen oder hnliches ausgestellt wurden und werden.\n", 8); rpt.add("Ob es sich um den Verzicht auf Erstattung von Aufwendungen handelt, ist der Anlage zur Sammelbesttigung zu entnehmen.", 8); } else { rpt.add(new Paragraph(" ", Reporter.getFreeSans(12))); rpt.add("\n\n", 8); rpt.add("\n", 9); } rpt.add("\n\n" + Einstellungen.getEinstellung().getOrt() + ", " + new JVDateFormatTTMMJJJJ().format(spb.getBescheinigungsdatum()), 9); rpt.add("\n\n\n\n.................................................................................\nUnterschrift des Zuwendungsempfngers", 8); rpt.add("\nHinweis:", 9); rpt.add("Wer vorstzlich oder grob fahrlssig eine unrichtige Zuwendungsbesttigung erstellt oder wer veranlasst, dass " + "Zuwendungen nicht zu den in der Zuwendungsbesttigung angegebenen steuerbegnstigten Zwecken verwendet " + "werden, haftet fr die entgangene Steuer ( 10b Abs. 4 EStG, 9 Abs. 3 KStG, 9 Nr. 5 GewStG).\n\n" + "Diese Besttigung wird nicht als Nachweis fr die steuerliche Bercksichtigung der Zuwendung anerkannt, wenn das " + "Datum des Freistellungsbescheides lnger als 5 Jahre bzw. das Datum der vorlufigen Bescheinigung lnger als 3 Jahre " + "seit Ausstellung der Besttigung zurckliegt (BMF vom 15.12.1994 - BStBl I S. 884).", 8); /* Es sind mehrere Spenden fr diese Spendenbescheinigung vorhanden */ if (isSammelbestaetigung) { List<Buchung> buchungen = spb.getBuchungen(); rpt.newPage(); rpt.add(getAussteller(), 13); rpt.add(new Paragraph(" ", Reporter.getFreeSans(12))); rpt.add("Anlage zur Sammelbesttigung vom " + (String) map.get(SpendenbescheinigungVar.BESCHEINIGUNGDATUM.getName()), 11); rpt.add("fr den Zeitraum vom " + (String) map.get(SpendenbescheinigungVar.SPENDENZEITRAUM.getName()), 11); rpt.add(new Paragraph(" ", Reporter.getFreeSans(12))); /* Kopfzeile */ rpt.addHeaderColumn("Datum der\nZuwendung", Element.ALIGN_LEFT, 150, BaseColor.LIGHT_GRAY); rpt.addHeaderColumn("Art der\nZuwendung", Element.ALIGN_LEFT, 400, BaseColor.LIGHT_GRAY); rpt.addHeaderColumn("Verzicht auf die\nErstattung von Aufwendungen", Element.ALIGN_LEFT, 300, BaseColor.LIGHT_GRAY); rpt.addHeaderColumn("Betrag", Element.ALIGN_RIGHT, 150, BaseColor.LIGHT_GRAY); rpt.createHeader(); boolean printBuchungsart = Einstellungen.getEinstellung().getSpendenbescheinigungPrintBuchungsart(); /* Buchungszeilen */ for (Buchung buchung : buchungen) { rpt.addColumn(buchung.getDatum(), Element.ALIGN_RIGHT); String verwendung = ""; if (printBuchungsart) { verwendung = buchung.getBuchungsart().getBezeichnung(); } else { verwendung = buchung.getZweck(); } rpt.addColumn(verwendung, Element.ALIGN_LEFT); if (buchung.getVerzicht().booleanValue()) { verzicht = "ja"; } else { verzicht = "nein"; } rpt.addColumn(verzicht, Element.ALIGN_CENTER); rpt.addColumn(Double.valueOf(buchung.getBetrag())); } /* Summenzeile */ // String sumString = // Einstellungen.DECIMALFORMAT.format(spb.getBetrag()); rpt.addColumn("Gesamtsumme", Element.ALIGN_LEFT, BaseColor.LIGHT_GRAY); rpt.addColumn("", Element.ALIGN_LEFT, BaseColor.LIGHT_GRAY); rpt.addColumn("", Element.ALIGN_LEFT, BaseColor.LIGHT_GRAY); rpt.addColumn(Double.valueOf(spb.getBetrag())); // rpt.addColumn(sumString, Element.ALIGN_RIGHT, // BaseColor.LIGHT_GRAY); rpt.closeTable(); // // Etwas Abstand // rpt.add(new Paragraph(" ")); // // Nun noch die Legende // rpt.add("Legende:", 8); // rpt.add( // "(a): Es handelt sich nicht um den Verzicht auf Erstattung von // Aufwendungen", // 8); // rpt.add( // "(b): Es handelt sich um den Verzicht auf Erstattung von Aufwendungen", // 8); } rpt.close(); fos.close(); }
From source file:de.jost_net.JVerein.gui.action.SpendenbescheinigungPrintAction.java
License:Open Source License
/** * Generierung des Standard-Dokumentes zu verwenden fr Spendenbescheinigungen * ab 01.01.2014/*w w w .ja v a2 s . c om*/ * * @param spb * Die Spendenbescheinigung aus der Datenbank * @param fileName * Der Dateiname, wohin das Dokument geschrieben werden soll * @throws IOException * @throws DocumentException */ private void generiereSpendenbescheinigungStandardAb2014(Spendenbescheinigung spb, String fileName) throws IOException, DocumentException { final File file = new File(fileName); FileOutputStream fos = new FileOutputStream(file); Map<String, Object> map = spb.getMap(null); map = new AllgemeineMap().getMap(map); boolean isSammelbestaetigung = spb.isSammelbestaetigung(); Reporter rpt = new Reporter(fos, 80, 50, 50, 50); rpt.addHeaderColumn("Aussteller (Bezeichnung und Anschrift der steuerbegnstigten Einrichtung)", Element.ALIGN_CENTER, 100, BaseColor.LIGHT_GRAY); rpt.createHeader(); rpt.addColumn("\n" + getAussteller() + "\n ", Element.ALIGN_LEFT); rpt.closeTable(); if (isSammelbestaetigung) { rpt.add("Sammelbesttigung ber " + map.get(SpendenbescheinigungVar.SPENDEART.getName()), 13); } else { rpt.add("Besttigung ber " + map.get(SpendenbescheinigungVar.SPENDEART.getName()), 13); } rpt.add("im Sinne des 10b des Einkommenssteuergesetzes an eine der in 5 Abs. 1 Nr. 9 des Krperschaftssteuergesetzes " + "bezeichneten Krperschaften, Personenvereinigungen oder Vermgensmassen\n", 10); rpt.addHeaderColumn("Name und Anschrift des Zuwendenden", Element.ALIGN_CENTER, 100, BaseColor.LIGHT_GRAY); rpt.createHeader(); rpt.addColumn((String) map.get(SpendenbescheinigungVar.EMPFAENGER.getName()), Element.ALIGN_LEFT); rpt.closeTable(); switch (spb.getSpendenart()) { case Spendenart.GELDSPENDE: rpt.addHeaderColumn("Betrag der Zuwendung -in Ziffern-", Element.ALIGN_CENTER, 100, BaseColor.LIGHT_GRAY); break; case Spendenart.SACHSPENDE: rpt.addHeaderColumn("Wert der Zuwendung -in Ziffern-", Element.ALIGN_CENTER, 100, BaseColor.LIGHT_GRAY); break; } rpt.addHeaderColumn("-in Buchstaben-", Element.ALIGN_CENTER, 250, BaseColor.LIGHT_GRAY); if (!isSammelbestaetigung) { rpt.addHeaderColumn("Tag der Zuwendung", Element.ALIGN_CENTER, 50, BaseColor.LIGHT_GRAY); } else { rpt.addHeaderColumn("Zeitraum der Sammelbesttigung", Element.ALIGN_CENTER, 75, BaseColor.LIGHT_GRAY); } rpt.createHeader(); rpt.addColumn( "*" + Einstellungen.DECIMALFORMAT.format(map.get(SpendenbescheinigungVar.BETRAG.getName())) + "*", Element.ALIGN_CENTER); rpt.addColumn((String) map.get(SpendenbescheinigungVar.BETRAGINWORTEN.getName()), Element.ALIGN_CENTER); if (!isSammelbestaetigung) { rpt.addColumn((String) map.get(SpendenbescheinigungVar.SPENDEDATUM.getName()), Element.ALIGN_CENTER); } else { rpt.addColumn((String) map.get(SpendenbescheinigungVar.SPENDENZEITRAUM.getName()), Element.ALIGN_CENTER); } rpt.closeTable(); switch (spb.getSpendenart()) { case Spendenart.SACHSPENDE: rpt.addHeaderColumn("Genaue Bezeichnung der Sachzuwendung mit Alter, Zustand, Kaufpreis usw.", Element.ALIGN_CENTER, 100, BaseColor.LIGHT_GRAY); rpt.createHeader(); rpt.addColumn(spb.getBezeichnungSachzuwendung(), Element.ALIGN_LEFT); rpt.closeTable(); switch (spb.getHerkunftSpende()) { case HerkunftSpende.BETRIEBSVERMOEGEN: rpt.add("Die Sachzuwendung stammt nach den Angaben des Zuwendenden aus dem Betriebsvermgen. " + "Die Zuwendung wurde mit dem Wert der Entnahme (ggf. mit dem niedrigeren gemeinen " + "Wert) und nach der Umsatzsteuer, die auf die Entnahme entfllt, bewertet.\n\n", 9); break; case HerkunftSpende.PRIVATVERMOEGEN: rpt.add("Die Sachzuwendung stammt nach den Angaben des Zuwendenden aus dem Privatvermgen.\n\n", 9); break; case HerkunftSpende.KEINEANGABEN: rpt.add("Der Zuwendende hat trotz Aufforderung keine Angaben zur Herkunft der Sachzuwendung gemacht.\n\n", 9); break; } if (spb.getUnterlagenWertermittlung()) { rpt.add("Geeignete Unterlagen, die zur Wertermittlung gedient haben, z. B. Rechnung, Gutachten, liegen vor.\n\n", 9); } } /* * Bei Sammelbesttigungen ist der Verweis auf Verzicht in der Anlage * vermerkt */ String verzicht = ""; char verzichtJa = (char) 113; // box leer char verzichtNein = (char) 53; // X if (spb.getAutocreate()) { if (!isSammelbestaetigung && spb.getSpendenart() == Spendenart.GELDSPENDE) { if (spb.getBuchungen().get(0).getVerzicht().booleanValue()) { verzichtJa = (char) 53; // X verzichtNein = (char) 113; // box leer } } } else { if (spb.getErsatzAufwendungen()) { verzichtJa = (char) 53; // X verzichtNein = (char) 113; // box leer } } if (!isSammelbestaetigung) { Paragraph p = new Paragraph(); p.setFont(Reporter.getFreeSans(8)); p.setAlignment(Element.ALIGN_LEFT); p.add(new Chunk("Es handelt sich um den Verzicht auf Erstattung von Aufwendungen: ")); p.add(new Chunk(" Ja ", Reporter.getFreeSansBold(9))); p.add(new Chunk(verzichtJa, FontFactory.getFont(FontFactory.ZAPFDINGBATS, 10))); p.add(new Chunk(" Nein ", Reporter.getFreeSansBold(9))); p.add(new Chunk(verzichtNein, FontFactory.getFont(FontFactory.ZAPFDINGBATS, 10))); p.add(new Chunk("\n\n")); rpt.add(p); } else { rpt.add(new Paragraph(" ", Reporter.getFreeSans(12))); } if (Einstellungen.getEinstellung().getVorlaeufig()) { // Verein neu gegrndet, hat noch keinen Bescheid String txt = "Die Einhaltung der satzungsgemen Voraussetzungen nach den 51, 59, 60 und 61 " + "AO wurde vom Finanzamt " + Einstellungen.getEinstellung().getFinanzamt() + ", StNr. " + Einstellungen.getEinstellung().getSteuernummer() + ", mit Bescheid vom " + new JVDateFormatTTMMJJJJ().format(Einstellungen.getEinstellung().getBescheiddatum()) + " nach 60a AO gesondert festgestellt. Wir frdern nach unserer Satzung " + Einstellungen.getEinstellung().getBeguenstigterzweck(); rpt.add(txt, 8); } else { // Verein existiert und hat einen Bescheid bekommen String txt = "Wir sind wegen " + Einstellungen.getEinstellung().getBeguenstigterzweck() + " nach dem Freistellungsbescheid bzw. nach der Anlage zum Krperschaftssteuerbescheid " + "des Finanzamtes " + Einstellungen.getEinstellung().getFinanzamt() + ", StNr. " + Einstellungen.getEinstellung().getSteuernummer() + ", vom " + new JVDateFormatTTMMJJJJ().format(Einstellungen.getEinstellung().getBescheiddatum()) + " fr den letzten Veranlagungszeitraum " + new JVDateFormatJJJJ().format(Einstellungen.getEinstellung().getVeranlagungVon()) + " bis " + new JVDateFormatJJJJ().format(Einstellungen.getEinstellung().getVeranlagungBis()) + " nach 5 Abs. 1 Nr. 9 des Krperschaftsteuergesetzes von der Krperschaftsteuer und nach " + " 3 Nr. 6 des Gewerbesteuergesetzes von der Gewerbesteuer befreit."; rpt.add(txt, 8); } rpt.add("\nEs wird besttigt, dass die Zuwendung nur zur " + Einstellungen.getEinstellung().getBeguenstigterzweck() + " verwendet wird.\n", 8); if (spb.getSpendenart() == Spendenart.GELDSPENDE) { char mitgliedBetraege = (char) 113; // box leer if (!Einstellungen.getEinstellung().getMitgliedsbetraege()) { mitgliedBetraege = (char) 53; // X } Paragraph p = new Paragraph(); p.setFont(Reporter.getFreeSans(8)); p.setAlignment(Element.ALIGN_LEFT); p.add(new Chunk("\n")); p.add(new Chunk( "Nur fr steuerbegnstigte Einrichtungen, bei denen die Mitgliedsbeitrge steuerlich nicht abziehbar sind:")); rpt.add(p); p = new Paragraph(); p.setFont(Reporter.getFreeSans(8)); p.setAlignment(Element.ALIGN_JUSTIFIED); p.setFirstLineIndent((float) -18.5); p.setIndentationLeft((float) 18.5); p.add(new Chunk(mitgliedBetraege, FontFactory.getFont(FontFactory.ZAPFDINGBATS, 10))); p.add(new Chunk( " Es wird besttigt, dass es sich nicht um einen Mitgliedsbeitrag handelt, dessen Abzug nach 10b Abs. 1 des Einkommensteuergesetzes ausgeschlossen ist.")); rpt.add(p); } if (isSammelbestaetigung) { rpt.add(new Paragraph(" ", Reporter.getFreeSans(12))); rpt.add("Es wird besttigt, dass ber die in der Gesamtsumme enthaltenen Zuwendungen keine weiteren Besttigungen, weder formelle Zuwendungsbesttigungen noch Beitragsquittungen oder hnliches ausgestellt wurden und werden.\n", 8); rpt.add("Ob es sich um den Verzicht auf Erstattung von Aufwendungen handelt, ist der Anlage zur Sammelbesttigung zu entnehmen.", 8); } else { rpt.add(new Paragraph(" ", Reporter.getFreeSans(12))); rpt.add("\n\n", 8); rpt.add("\n", 9); } rpt.add("\n\n" + Einstellungen.getEinstellung().getOrt() + ", " + new JVDateFormatTTMMJJJJ().format(spb.getBescheinigungsdatum()), 9); rpt.add("\n\n\n\n.................................................................................\nUnterschrift des Zuwendungsempfngers", 8); rpt.add("\nHinweis:", 8); rpt.add("Wer vorstzlich oder grob fahrlssig eine unrichtige Zuwendungsbesttigung erstellt " + "oder veranlasst, dass Zuwendungen nicht zu den in der Zuwendungsbesttigung " + "angegebenen steuerbegnstigten Zwecken verwendet werden, haftet fr die entgangene " + "Steuer ( 10b Absatz 4 EStG, 9 Absatz 3 KStG, 9 Nummer 5 GewStG).\n" + "\n" + "Diese Besttigung wird nicht als Nachweis fr die steuerliche Bercksichtigung der " + "Zuwendung anerkannt, wenn das Datum des Freistellungsbescheides lnger als 5 Jahre " + "bzw. das Datum der Feststellung der Einhaltung der satzungsmigen Voraussetzungen " + "nach 60a Abs. 1 AO lnger als 3 Jahre seit Ausstellung des Bescheides zurckliegt " + "( 63 Abs. 5 AO).", 7); /* Es sind mehrere Spenden fr diese Spendenbescheinigung vorhanden */ if (isSammelbestaetigung) { List<Buchung> buchungen = spb.getBuchungen(); rpt.newPage(); rpt.add(getAussteller(), 13); rpt.add(new Paragraph(" ", Reporter.getFreeSans(12))); rpt.add("Anlage zur Sammelbesttigung vom " + (String) map.get(SpendenbescheinigungVar.BESCHEINIGUNGDATUM.getName()), 11); rpt.add("fr den Zeitraum vom " + (String) map.get(SpendenbescheinigungVar.SPENDENZEITRAUM.getName()), 11); rpt.add(new Paragraph(" ", Reporter.getFreeSans(12))); /* Kopfzeile */ rpt.addHeaderColumn("Datum der\nZuwendung", Element.ALIGN_LEFT, 150, BaseColor.LIGHT_GRAY); rpt.addHeaderColumn("Art der\nZuwendung", Element.ALIGN_LEFT, 400, BaseColor.LIGHT_GRAY); rpt.addHeaderColumn("Verzicht auf die\nErstattung von Aufwendungen", Element.ALIGN_LEFT, 300, BaseColor.LIGHT_GRAY); rpt.addHeaderColumn("Betrag", Element.ALIGN_RIGHT, 150, BaseColor.LIGHT_GRAY); rpt.createHeader(); boolean printBuchungsart = Einstellungen.getEinstellung().getSpendenbescheinigungPrintBuchungsart(); /* Buchungszeilen */ for (Buchung buchung : buchungen) { rpt.addColumn(buchung.getDatum(), Element.ALIGN_RIGHT); String verwendung = ""; if (printBuchungsart) { verwendung = buchung.getBuchungsart().getBezeichnung(); } else { verwendung = buchung.getZweck(); } rpt.addColumn(verwendung, Element.ALIGN_LEFT); if (buchung.getVerzicht().booleanValue()) { verzicht = "ja"; } else { verzicht = "nein"; } rpt.addColumn(verzicht, Element.ALIGN_CENTER); rpt.addColumn(Double.valueOf(buchung.getBetrag())); } /* Summenzeile */ // String sumString = // Einstellungen.DECIMALFORMAT.format(spb.getBetrag()); rpt.addColumn("Gesamtsumme", Element.ALIGN_LEFT, BaseColor.LIGHT_GRAY); rpt.addColumn("", Element.ALIGN_LEFT, BaseColor.LIGHT_GRAY); rpt.addColumn("", Element.ALIGN_LEFT, BaseColor.LIGHT_GRAY); rpt.addColumn(Double.valueOf(spb.getBetrag())); // rpt.addColumn(sumString, Element.ALIGN_RIGHT, // BaseColor.LIGHT_GRAY); rpt.closeTable(); // // Etwas Abstand // rpt.add(new Paragraph(" ")); // // Nun noch die Legende // rpt.add("Legende:", 8); // rpt.add( // "(a): Es handelt sich nicht um den Verzicht auf Erstattung von // Aufwendungen", // 8); // rpt.add( // "(b): Es handelt sich um den Verzicht auf Erstattung von Aufwendungen", // 8); } rpt.close(); fos.close(); }
From source file:de.unisiegen.informatik.bs.alvis.export.PdfExport.java
License:Open Source License
/** * adds organized, structured, highlighted source code to new paragraph and * returns it//from w w w. ja v a 2 s.c o m * * @author Sebastian Schmitz & Frank Weiler * @param sourceCode * the source code as string including html tags for highlighting * etc * @return a paragraph including the source code * @throws DocumentException * will be thrown when new paragraph could not have been added */ private Paragraph toParagraph(StyledText sourceCode) throws DocumentException { if (sourceCode == null) return null; String content = highlightStyleTextinHTML(sourceCode); // returnt den // nicht // eingerckten, // aber // gehighlighteten // Code Paragraph paragraph = new Paragraph(); if (content != null) { content = indentCode(content); // rckt den Code ein List<Element> bodyText; StyleSheet styles = new StyleSheet(); styles.loadTagStyle("ol", "leading", "16,0"); try { bodyText = HTMLWorker.parseToList(new StringReader(content), styles); paragraph.setFont(FontFactory.getFont("Courier", 10, Font.NORMAL)); for (Element elem : bodyText) { paragraph.add(elem); } } catch (IOException e) { paragraph.add(Messages.noSourceCodeAdded); } } return paragraph; }
From source file:de.unisiegen.informatik.bs.alvis.export.PdfExport.java
License:Open Source License
/** * adds one line of organized, structured, highlighted source code to new * paragraph and returns it//w w w .j a va2 s .c o m * * @author Sebastian Schmitz & Frank Weiler * @param sourceCode * the source code as string including html tags for highlighting * etc * @param wantedLineIndex * the wanted line number * @return a paragraph including the source code line * @throws DocumentException * will be thrown when new paragraph could not have been added */ private Paragraph toParagraph(StyledText sourceCode, int wantedLineIndex) throws DocumentException { if (sourceCode == null) return null; if (wantedLineIndex < 0 || wantedLineIndex >= sourceCode.getLineCount()) return null; String content = highlightStyleTextinHTML(sourceCode, wantedLineIndex); Paragraph paragraph = new Paragraph(); if (content != null) { List<Element> bodyText; StyleSheet styles = new StyleSheet(); styles.loadTagStyle("ol", "leading", "16,0"); try { bodyText = HTMLWorker.parseToList(new StringReader(content), styles); paragraph.setFont(FontFactory.getFont("Courier", 10, Font.NORMAL)); for (Element elem : bodyText) { paragraph.add(elem); } } catch (IOException e) { paragraph.add(Messages.noSourceCodeAdded); } } return paragraph; }
From source file:edu.clemson.lph.pdfgen.PDFGen.java
License:Open Source License
private void printDoc() { if (sSourceFile == null || osDest == null) { logger.error("Cannot print nothing"); return;//from w ww. j av a 2s.co m } boolean bBold = false; boolean bCenter = false; boolean bItalic = false; boolean bSmallItalic = false; boolean bUnderline = false; try { Document doc = new Document(); float fCorr = doc.getPageSize().getWidth() / 8.5f; doc.setMargins(1.0f * fCorr, 1.0f * fCorr, 1.0f * fCorr, 1.0f * fCorr); PdfWriter.getInstance(doc, osDest); doc.open(); BufferedReader br = new BufferedReader(new FileReader(sSourceFile)); String sLine = br.readLine(); while (sLine != null) { bBold = false; bCenter = false; if (sLine.startsWith(".")) { String sRest = sLine.substring(1); String sCodes = sRest.substring(0, sRest.indexOf('.')); sLine = sRest.substring(sRest.indexOf('.') + 1); if ("image".equals(sCodes)) { String sFileName = sLine; com.itextpdf.text.Image image = com.itextpdf.text.Image.getInstance(sFileName); image.setAlignment(Element.ALIGN_CENTER); doc.add(image); sLine = br.readLine(); continue; } else if ("himage".equals(sCodes)) { String sFileName = sLine; com.itextpdf.text.Image image = com.itextpdf.text.Image.getInstance(sFileName); image.scaleToFit(500, 40); image.setAlignment(Element.ALIGN_CENTER); doc.add(image); Paragraph p = new Paragraph(" "); doc.add(p); sLine = br.readLine(); continue; } else if ("fimage".equals(sCodes)) { int iBlanks = 9; // How do I figure out how many to get to end? for (int i = 0; i < iBlanks; i++) { Paragraph p = new Paragraph(" "); doc.add(p); } String sFileName = sLine; com.itextpdf.text.Image image = com.itextpdf.text.Image.getInstance(sFileName); image.scaleToFit(500, 40); image.setAlignment(Element.ALIGN_CENTER); doc.add(image); sLine = br.readLine(); continue; } else if ("list".equals(sCodes)) { String sFullLine = doSub(sLine); StringTokenizer tok = new StringTokenizer(sFullLine, "\n"); List list = new List(List.UNORDERED); while (tok.hasMoreTokens()) { String sNextLine = tok.nextToken(); ListItem listItem = new ListItem(sNextLine, fNormal); list.add(listItem); } doc.add(list); sLine = br.readLine(); continue; } if (sCodes.contains("b")) bBold = true; if (sCodes.contains("c")) bCenter = true; if (sCodes.contains("i")) bItalic = true; if (sCodes.contains("si")) bSmallItalic = true; if (sCodes.contains("u")) bUnderline = true; } if (sLine.trim().length() == 0) sLine = " "; String sFullLine = doSub(sLine); Paragraph p = new Paragraph(); if (bBold) p.setFont(fBold); else if (bSmallItalic) p.setFont(fSmallItalic); else if (bItalic) p.setFont(fItalic); else if (bUnderline) p.setFont(fUnderline); else p.setFont(fNormal); if (bCenter) { p.setAlignment(Element.ALIGN_CENTER); } else { p.setAlignment(Element.ALIGN_LEFT); } p.add(sFullLine); doc.add(p); sLine = br.readLine(); } br.close(); doc.close(); } catch (FileNotFoundException e) { logger.error("Could not find source file " + sSourceFile + " or destination", e); } catch (IOException e) { logger.error("Could not read file " + sSourceFile, e); } catch (DocumentException e) { logger.error("Error creating iText Document", e); } }
From source file:edu.ksu.cs.a4vm.bse.reporter.Reporter.java
private void jButton5ActionPerformed(java.awt.event.ActionEvent evt) { JFileChooser chooser = new JFileChooser(); int option = chooser.showSaveDialog(null); if (option == JFileChooser.APPROVE_OPTION) { if (chooser.getSelectedFile() != null) { File3 = chooser.getSelectedFile().getAbsolutePath(); }//from ww w. j a v a 2 s . c om try { br1 = new BufferedReader(new FileReader(f)); BufferedReader b1 = new BufferedReader(new FileReader(f)); } catch (FileNotFoundException ex) { } String line = ""; bull1 = new String[number_of_rows - 1][]; int k = 0; BufferedReader br3 = null; try { br3 = new BufferedReader(new FileReader(f)); } catch (FileNotFoundException ex) { } try { while ((line = br3.readLine()) != null) { // use comma as separator String Bull[] = line.split(","); if (k != 0) { System.out.println(Bull.length); bull1[k - 1] = new String[Bull.length]; for (int j = 0; j < Bull.length; j++) { bull1[k - 1][j] = Bull[j]; } } k++; } } catch (IOException ex) { } Document doc = new Document(); PdfWriter docWriter = null; DecimalFormat df = new DecimalFormat("0.00"); try { //special font sizes Font bfBold12 = new Font(Font.FontFamily.TIMES_ROMAN, 8, Font.BOLD, new BaseColor(0, 0, 0)); Font bf12 = new Font(Font.FontFamily.TIMES_ROMAN, 6); Font bfBold20 = new Font(Font.FontFamily.TIMES_ROMAN, 12, Font.BOLD); Font bfBold25 = new Font(Font.FontFamily.TIMES_ROMAN, 15, Font.BOLD); //file path docWriter = PdfWriter.getInstance(doc, new FileOutputStream(File3)); //document header attributes doc.addAuthor("Shubh Chopra"); doc.addCreationDate(); doc.addProducer(); doc.addCreator("Shubh Chopra"); doc.addTitle("BES"); doc.setPageSize(PageSize.LETTER.rotate()); //open document doc.open(); //create a paragraph Paragraph paragraph = new Paragraph("BULL EVALUATION\n\n"); paragraph.setFont(bfBold25); paragraph.setAlignment(Element.ALIGN_CENTER); Image img = Image.getInstance("VETMED.png"); img.scaleToFit(300f, 150f); doc.add(paragraph); PdfPTable table1 = new PdfPTable(2); table1.setWidthPercentage(100); PdfPCell cell = new PdfPCell(img); cell.setBorder(PdfPCell.NO_BORDER); table1.addCell(cell); String temp1 = "\tOwner: " + bull1[1][62] + " " + bull1[1][63] + "\n\n\tRanch: " + bull1[1][64] + "\n\n\tAddress: " + bull1[1][55] + "\n\n\tCity: " + bull1[1][57] + "\n\n\tState: " + bull1[1][60] + "\tZip: " + bull1[1][61] + "\n\n\tPhone: " + bull1[1][59] + "\n\n"; table1.addCell(getCell(temp1, PdfPCell.ALIGN_LEFT)); doc.add(table1); if (dlm3.size() == 1) { String str; str = dlm3.get(0).toString(); String[] parts = str.split(":"); String part2 = parts[1]; System.out.println(part2); int row = Integer.parseInt(part2) - 1; String[][] temp = new String[25][6]; temp[0][0] = "Tag"; temp[0][1] = bull1[row][7]; temp[0][2] = "Comments"; temp[0][3] = ""; temp[0][4] = "Total Count"; temp[0][5] = ""; temp[1][0] = "Tatoo"; temp[1][1] = bull1[row][8]; temp[1][2] = "All Normal"; temp[1][3] = "Yes"; temp[2][0] = "RFID"; temp[2][1] = bull1[row][6]; temp[2][2] = "Eyes"; temp[2][3] = bull1[row][10]; temp[3][0] = "Lot#"; temp[3][1] = bull1[row][5]; temp[3][2] = "Feet"; temp[3][3] = bull1[row][12]; temp[4][0] = "Brand"; temp[4][1] = bull1[row][2]; temp[4][2] = "Legs"; temp[4][3] = bull1[row][14]; temp[5][0] = "Date of Birth"; temp[5][1] = bull1[row][4]; temp[5][2] = "Testicals"; temp[5][3] = bull1[row][16]; temp[6][0] = "Age"; temp[6][1] = bull1[row][0]; temp[6][2] = "Accessory Sex Glands"; temp[6][3] = bull1[row][18]; temp[7][0] = "Breed"; temp[7][1] = bull1[row][3]; temp[7][2] = "Inguinal"; temp[7][3] = bull1[row][20]; temp[8][0] = "Other"; temp[8][1] = bull1[row][9]; temp[8][2] = "Scrotal"; temp[8][3] = bull1[row][22]; temp[9][0] = "Clinic Info"; temp[9][1] = "xx"; temp[9][2] = "Epidydimides"; temp[9][3] = bull1[row][24]; temp[10][4] = "Measurements"; temp[10][5] = "xx"; temp[10][0] = "Clinic Name"; temp[10][1] = bull1[row][73]; temp[10][2] = "Penis"; temp[10][3] = bull1[row][26]; temp[11][4] = "Scrotal Cirumference"; temp[11][5] = bull1[row][54]; temp[11][0] = "Veterinarian Name"; temp[11][1] = bull1[row][74] + " " + bull1[row][74]; temp[11][2] = "Prepuce"; temp[11][3] = bull1[row][28]; temp[12][4] = "Body Condition"; temp[12][5] = bull1[row][47]; temp[12][0] = "Address"; temp[12][1] = bull1[row][66] + " " + bull1[row][67]; temp[12][2] = "Scrotum"; temp[12][3] = bull1[row][30]; temp[13][4] = "Pelvic X Measure"; temp[13][5] = bull1[row][52]; temp[13][0] = "City"; temp[13][1] = bull1[row][68]; temp[13][2] = "Sex Drive"; temp[13][3] = "xx"; temp[14][4] = "Pelvic Y Measure"; temp[14][5] = bull1[row][53]; temp[14][0] = "State"; temp[14][1] = bull1[row][71]; temp[14][2] = "Breeding seasons used"; temp[14][3] = bull1[row][40]; temp[15][4] = "Hip Hight"; temp[15][5] = bull1[row][50]; temp[15][0] = "Zip Code"; temp[15][1] = bull1[row][72]; temp[15][2] = "Performance last season"; temp[15][3] = bull1[row][38]; temp[16][4] = "Frame Score"; temp[16][5] = bull1[row][49]; temp[16][0] = "Email"; temp[16][1] = bull1[row][69]; temp[16][2] = "Single or Multi sire"; temp[16][3] = bull1[row][41]; temp[17][4] = "Other"; temp[17][5] = bull1[row][48]; temp[17][0] = "Phone"; temp[17][1] = bull1[row][70]; temp[17][2] = "Other"; temp[17][3] = bull1[row][39]; temp[18][4] = "Motility"; temp[18][5] = "xx"; temp[18][0] = "Classification"; temp[18][1] = bull1[row][35]; temp[18][2] = "Comments"; temp[18][3] = bull1[row][37]; temp[19][4] = "Individual Motility"; temp[19][5] = bull1[row][45]; temp[19][0] = "Comments"; temp[19][1] = bull1[row][36]; temp[19][2] = ""; temp[19][3] = ""; temp[20][4] = "Motility %"; temp[20][5] = bull1[row][46]; temp[20][0] = ""; temp[20][1] = ""; temp[20][2] = ""; temp[20][3] = ""; temp[21][4] = "Gross Motility"; temp[21][5] = bull1[row][44]; temp[21][0] = ""; temp[21][1] = ""; temp[21][2] = ""; temp[21][3] = ""; for (int i = 9; i <= 29; i += 2) { if (bull1[row][i].equals("FALSE")) { temp[1][4] = "No"; break; } } int i; int total = 0; for (i = 77; i < header.length && i < bull1[row].length; i++) { temp[i - 76][4] = header[i].split("_")[1]; temp[i - 76][5] = bull1[row][i]; total += Integer.parseInt(bull1[row][i]); } temp[0][5] = Integer.toString(total); for (int j = i; j <= 85; j++) { temp[j - 76][4] = ""; temp[j - 76][5] = ""; } PdfPTable table = new PdfPTable(6); PdfPCell cell11, cell12, cell13; cell11 = new PdfPCell( new Phrase("Bull Info", FontFactory.getFont(FontFactory.TIMES_ROMAN, 12))); cell11.setColspan(2); cell11.setHorizontalAlignment(Element.ALIGN_CENTER); cell11.setVerticalAlignment(Element.ALIGN_CENTER); table.addCell(cell11); cell12 = new PdfPCell( new Phrase("Physical Exam", FontFactory.getFont(FontFactory.TIMES_ROMAN, 12))); cell12.setColspan(2); cell12.setHorizontalAlignment(Element.ALIGN_CENTER); cell12.setVerticalAlignment(Element.ALIGN_CENTER); table.addCell(cell12); cell13 = new PdfPCell( new Phrase("Morphology", FontFactory.getFont(FontFactory.TIMES_ROMAN, 12))); cell13.setColspan(2); cell13.setHorizontalAlignment(Element.ALIGN_CENTER); cell13.setVerticalAlignment(Element.ALIGN_CENTER); table.addCell(cell13); for (int l = 0; l <= 21; l++) { for (int j = 0; j < 6; j++) { // System.out.println(l+" "+j); if (!temp[l][j].equals("xx") && temp[l][j] != null) { cell = new PdfPCell( new Phrase(temp[l][j], FontFactory.getFont(FontFactory.TIMES_ROMAN, 10))); cell.setBorder(PdfPCell.NO_BORDER); if ((l == 9 && j == 0) || (l == 13 && j == 2) || (l == 10 && j == 4) || (l == 18 && j == 4)) { cell = new PdfPCell(new Phrase(temp[l][j], FontFactory.getFont(FontFactory.TIMES_ROMAN, 12))); cell.setHorizontalAlignment(Element.ALIGN_CENTER); cell.setVerticalAlignment(Element.ALIGN_CENTER); cell.setColspan(2); } table.addCell(cell); } } } table.setWidthPercentage(90f); Reporter re; re = new Reporter(); doc.add(table); if (jCheckBox2.isSelected() || jCheckBox1.isSelected()) doc.newPage(); } else { //specify column widths int temp = dlm2.size(); float[] columnWidths = new float[temp]; for (int x = 0; x < columnWidths.length; x++) { columnWidths[x] = 2f; } //create PDF table with the given widths PdfPTable table = new PdfPTable(columnWidths); // set table width a percentage of the page width table.setWidthPercentage(90f); Reporter re; re = new Reporter(); re.insertCell(table, "Bull Info", Element.ALIGN_CENTER, 1, bfBold12); for (int i = 0; i < dlm2.size(); i++) { String[] parts = dlm2.get(i).toString().split(": "); String part2 = parts[1]; re.insertCell(table, newhead[Integer.parseInt(part2)], Element.ALIGN_CENTER, 1, bfBold12); } table.setHeaderRows(1); //insert an empty row //create section heading by cell merging //just some random data to fill for (int x = 0; x < dlm3.size(); x++) { String str = dlm3.get(x).toString(); //System.out.println(str); String[] parts = str.split(":"); String part2 = parts[1]; // System.out.println(part2); int row = Integer.parseInt(part2) - 1; re.insertCell(table, Bulls[row], Element.ALIGN_CENTER, 1, bf12); for (int i = 0; i < dlm2.getSize(); i++) { for (int j = 0; j < header.length && j < bull1[row].length; j++) { String str1 = dlm2.get(i).toString(); String[] p1 = str1.split(": "); String p2 = p1[0]; if (p2.equals(header[j])) { re.insertCell(table, bull1[row][j], Element.ALIGN_CENTER, 1, bf12); } } } // re.insertCell(table, bull1[x][7] , Element.ALIGN_CENTER, 1, bf12); } doc.add(table); } if (jCheckBox2.isSelected()) { DefaultCategoryDataset dataSet = new DefaultCategoryDataset(); for (int i = 0; i < dlm3.size(); i++) { String str = dlm3.get(i).toString(); System.out.println(str); String[] parts = str.split(":"); String part1 = parts[0]; String part2 = parts[1]; System.out.println(part2); int row = Integer.parseInt(part2) - 1; float total = (float) 0.0; for (int j = 77; j < header.length && j < bull1[row].length; j++) { if (bull1[row][j].equals("")) { continue; } else { total += Integer.parseInt(bull1[row][j]); } } System.out.println(total); for (int j = 77; j < header.length && j < bull1[row].length; j++) { if (!bull1[row][j].equals("")) { String[] Parts = header[j].split("_"); String Part2 = Parts[1]; dataSet.setValue((Integer.parseInt(bull1[row][j]) * 100) / total, Part2, part1); } else { dataSet.setValue(0, "Percent", header[j]); } } } JFreeChart chart = ChartFactory.createBarChart("Multi Bull Morphology Chart ", "Morphology", "Percent", dataSet, PlotOrientation.VERTICAL, true, true, false); if (dlm3.size() > 12) { doc.newPage(); } PdfContentByte contentByte = docWriter.getDirectContent(); PdfTemplate template = contentByte.createTemplate(325, 250); PdfGraphics2D graphics2d = new PdfGraphics2D(template, 325, 250); Rectangle2D rectangle2d = new Rectangle2D.Double(0, 0, 325, 250); chart.draw(graphics2d, rectangle2d); graphics2d.dispose(); contentByte.addTemplate(template, 0, 0); } if (jCheckBox1.isSelected()) { for (int i = 0; i < dlm3.size(); i++) { DefaultCategoryDataset dataSet = new DefaultCategoryDataset(); String str = dlm3.get(i).toString(); System.out.println(str); String[] parts = str.split(":"); String part1 = parts[0]; String part2 = parts[1]; System.out.println(part2); int row = Integer.parseInt(part2) - 1; float total = (float) 0.0; for (int j = 77; j < header.length && j < bull1[row].length; j++) { if (bull1[row][j].equals("")) { continue; } else { total += Integer.parseInt(bull1[row][j]); } } System.out.println(total); for (int j = 77; j < header.length && j < bull1[row].length; j++) { if (!bull1[row][j].equals("")) { String[] Parts = header[j].split("_"); String Part2 = Parts[1]; dataSet.setValue((Integer.parseInt(bull1[row][j]) * 100) / total, "Percent", Part2); } else { dataSet.setValue(0, "Percent", header[j]); } } JFreeChart chart = ChartFactory.createBarChart("Single Bull Morphology Chart " + part1, "Morphology", "Percent", dataSet, PlotOrientation.VERTICAL, false, true, false); if ((dlm3.size() > 12 && i == 0) || jCheckBox2.isSelected()) { doc.newPage(); } PdfContentByte contentByte = docWriter.getDirectContent(); PdfTemplate template = contentByte.createTemplate(325, 250); PdfGraphics2D graphics2d = new PdfGraphics2D(template, 325, 250); Rectangle2D rectangle2d = new Rectangle2D.Double(0, 0, 325, 250); chart.draw(graphics2d, rectangle2d); graphics2d.dispose(); contentByte.addTemplate(template, 0, 0); doc.newPage(); } } } catch (DocumentException dex) { dex.printStackTrace(); } catch (FileNotFoundException ex) { Logger.getLogger(ReporterArchive.class.getName()).log(Level.SEVERE, null, ex); } catch (IOException ex) { Logger.getLogger(ReporterArchive.class.getName()).log(Level.SEVERE, null, ex); } finally { if (doc != null) { //close the document doc.close(); } if (docWriter != null) { //close the writer docWriter.close(); } } } // TODO add your handling code here: }