List of usage examples for com.itextpdf.text Paragraph add
@Override public boolean add(Element o)
Element
to the Paragraph
. From source file:de.aw.awlib.pdf.PDFDocument.java
License:Open Source License
/** * Erstellt die Ueberschrift// w w w.j a va2 s . co m * * @param header * Uebeschrift * @throws DocumentException * Wenn das pdf nicht erstellt werden kann */ public void addTableTitle(@NonNull String header) throws DocumentException { Paragraph preface = new Paragraph(); preface.add(new Paragraph(header, smallBold)); mDocument.add(preface); }
From source file:de.domjos.schooltools.core.utils.fileUtils.PDFBuilder.java
License:Open Source License
public void addParagraph(String title, String content, String headerFontKey, String fontKey) throws Exception { Paragraph paragraph = new Paragraph(); paragraph.add(new Paragraph(title, this.fonts.get(headerFontKey))); paragraph.add(new Paragraph(" ")); paragraph.add(new Paragraph(content, this.fonts.get(fontKey))); this.document.add(paragraph); }
From source file:de.domjos.schooltools.core.utils.fileUtils.PDFBuilder.java
License:Open Source License
public void addTitle(String title, String titleKey, int alignment) throws Exception { Paragraph paragraph = new Paragraph(); Paragraph pg = new Paragraph(title, this.fonts.get(titleKey)); pg.setAlignment(alignment);/* w w w .j a va 2 s . co m*/ paragraph.add(pg); this.document.add(paragraph); }
From source file:de.domjos.schooltools.core.utils.fileUtils.PDFBuilder.java
License:Open Source License
public void addEmptyLine(int number) throws Exception { Paragraph paragraph = new Paragraph(); for (int i = 0; i < number; i++) { paragraph.add(new Paragraph(" ")); }/* w ww. j av a 2 s.co m*/ this.document.add(paragraph); }
From source file:de.extra.xtt.util.pdf.PdfCreatorImpl.java
License:Apache License
/** * Das Element wird mit Datentyp, seinen Attributen und Kindelementen * geschrieben./*from w w w . j av a 2 s .c om*/ * * @param currElement * Zu behandelndes Element * @param currChapter * Kapitel, zu dem das Element hinzugefgt wird * @param chapterEntry * Eintrag des Kapitels fr das Inhaltsverzeichnis * @param schemaQueues * Queues mit allen Elementen fr die einzelnen Schemas */ private void behandleElement(XSElementDecl currElement, Chapter currChapter, ContPdfEntry chapterEntry, Map<String, Queue<XSElementDecl>> schemaQueues) throws DocumentException { // Fr jedes Element eine Section; Titel ist der Elementname // eine Zeile Abstand docPdf.add(getEmptyLineText()); // Referenz des Elements String currReferenzString = getReferenceForElement(currElement); // Titel des Elements inkl. Sprungmarke Chunk chunkElem = getChunkElement(currElement.getName()); chunkElem.setLocalDestination(currReferenzString); Paragraph currElemPara = new Paragraph(getChunkElement("")); currElemPara.add(chunkElem); Section currSection = currChapter.addSection(currElemPara); // Eintrag fr Inhaltsverzeichnis (Element) listEntries.add(new ContPdfEntry(chapterEntry, currSection.getTitle().getContent(), currReferenzString, currPageNumber)); // Sektion dem Dokument (vorlufig) hinzufgen (wichtig fr das // Aktualisieren der Seitenzahl) currSection.setComplete(false); docPdf.add(currSection); // Anmerkung zum Element XSAnnotation ann = currElement.getAnnotation(); if (ann != null) { // Abstand currSection.add(getEmptyLineTextHalf()); String beschreibung = ann.getAnnotation().toString(); currSection.add(getParagraphTextItalic(beschreibung)); } // Abstand currSection.add(getEmptyLineTextHalf()); // Datentyp Paragraph paraTyp = new Paragraph(); XSType currType = currElement.getType(); paraTyp.add(getPhraseTextBold("Datentyp: ")); String strTyp = getNameWithPrefix(currType); if (currType.isLocal()) { strTyp = "<lokal definiert>"; } paraTyp.add(getPhraseText(strTyp + "\n")); // Basistyp if ((currType.getDerivationMethod() == XSType.RESTRICTION) || (currType.getDerivationMethod() == XSType.EXTENSION)) { paraTyp.add(getPhraseTextBold("basiert auf: ")); paraTyp.add(getPhraseText(getNameWithPrefix(currType.getBaseType()) + "\n")); } currSection.add(paraTyp); // Attribute (falls vorhanden) behandleAttribute(currType, currSection); // Kind-Elemente (falls vorhanden) if (currType.isComplexType()) { // Gruppentyp (sequence oder choice) String strCompositor = getCompositorStr(currType.asComplexType()); if (strCompositor.length() > 0) { // Abstand currSection.add(getEmptyLineTextHalf()); currSection.add(getParagraphTextBold(strCompositor + "-Elemente:")); behandleKindElemente(currElement, currSection, schemaQueues); } } // Sektion dem Dokument (endgltig) hinzufgen currSection.setComplete(true); docPdf.add(currSection); }
From source file:de.extra.xtt.util.pdf.PdfCreatorImpl.java
License:Apache License
private Paragraph getEmptyLinesText(int fontSize, int countLines) { Paragraph pg = new Paragraph("\n", FontFactory.getFont(fontNameStandard, fontSize, Font.NORMAL)); for (int i = 1; i < countLines; i++) { pg.add(new Paragraph("", FontFactory.getFont(fontNameStandard, fontSize, Font.NORMAL))); }/* w ww.j a v a 2 s . c o m*/ return pg; }
From source file:de.fau.osr.util.matrix.MatrixTools.java
License:Open Source License
/** * /**/*w w w .j av a2 s .c o m*/ * saves matrix to {@code path} in pdf format * @param matrix matrix to save * @param path file where matrix will be saved */ public static boolean SaveMatrixToPdf(RequirementsTraceabilityMatrixByImpact matrix, File path, String matrixTitle) { Document document = new Document(); try { PdfWriter.getInstance(document, new FileOutputStream(path)); document.open(); document.addTitle(matrixTitle); Paragraph headerPar = new Paragraph("Traceability Matrix"); headerPar.add(new Paragraph(" ")); //new line document.add(headerPar); java.util.List<String> reqs = matrix.getRequirements(); //table setup PdfPTable table = new PdfPTable(reqs.size() + 1); //reqs + "file name" col table.setHeaderRows(1); table.setHorizontalAlignment(Element.ALIGN_JUSTIFIED); table.setWidthPercentage(100); table.setSpacingBefore(0); table.setSpacingAfter(0); //file name col width/req col width 4:1 float[] widths = new float[reqs.size() + 1]; widths[0] = 4; for (int i = 0; i < reqs.size(); i++) { widths[i + 1] = 1; } table.setWidths(widths); //header row //add filename col to header addCell(table, "File name", 10, Element.ALIGN_LEFT); //add req cols to header for (String req : reqs) { addCell(table, "req-" + req, 8, Element.ALIGN_CENTER); } //content, row by row: for (int i = 0; i < matrix.getFiles().size(); i++) { //filename col String fileName = matrix.getFiles().get(i); addCell(table, fileName, 5, Element.ALIGN_LEFT, 18); //impact value cols for (String req : reqs) { RequirementFileImpactValue value = matrix .getImpactValue(new RequirementFilePair(req, fileName)); if (value == null) { value = new RequirementFileImpactValue(0); } //round DecimalFormat df = new DecimalFormat("#.##"); df.setRoundingMode(RoundingMode.CEILING); String valString = df.format(value.getImpactPercentage()); addCell(table, valString, 10, Element.ALIGN_CENTER); } } document.add(table); } catch (DocumentException | FileNotFoundException e) { e.printStackTrace(); return false; } finally { document.close(); } return true; }
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// ww w .j a va2 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 . j ava2 s. c o m * * @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 title page to this document//ww w .j a v a 2 s . c o m * * @throws DocumentException */ private void addTitle() throws DocumentException { Paragraph title = new Paragraph(); addEmptyLine(title, 1); title.add(new Paragraph(Messages.alvisExport, titleFont)); addEmptyLine(title, 1); title.add(new Paragraph(Messages.generatedBy + ": " + System.getProperty("user.name") + ", " + new Date(), smallBold)); add(title); }