Example usage for com.itextpdf.text Element ALIGN_JUSTIFIED

List of usage examples for com.itextpdf.text Element ALIGN_JUSTIFIED

Introduction

In this page you can find the example usage for com.itextpdf.text Element ALIGN_JUSTIFIED.

Prototype

int ALIGN_JUSTIFIED

To view the source code for com.itextpdf.text Element ALIGN_JUSTIFIED.

Click Source Link

Document

A possible value for paragraph alignment.

Usage

From source file:controller.pdfcita.java

/**
 * Processes requests for both HTTP <code>GET</code> and <code>POST</code>
 * methods./*w w  w . j  a va 2s.  c  o  m*/
 *
 * @param request servlet request
 * @param response servlet response
 * @throws ServletException if a servlet-specific error occurs
 * @throws IOException if an I/O error occurs
 */
protected void processRequest(HttpServletRequest request, HttpServletResponse response)
        throws ServletException, IOException {
    response.setContentType("application/pdf");

    OutputStream out = response.getOutputStream();

    String codigocita = request.getParameter("codigocita");
    String nombre = request.getParameter("nombre");
    String especialidad = request.getParameter("especialidad");
    String fecha = request.getParameter("fecha");
    String hora = request.getParameter("hora");
    String doctor = request.getParameter("doctor");

    try {

        try {

            Document documento = new Document();
            Rectangle one = new Rectangle(400, 280);
            documento.setPageSize(one);
            PdfWriter.getInstance(documento, out);

            documento.open();

            Paragraph par1 = new Paragraph();
            Font fontitulo = new Font(Font.FontFamily.HELVETICA, 16, Font.BOLD, BaseColor.BLACK);
            par1.add(new Phrase("Cita", fontitulo));
            par1.setAlignment(Element.ALIGN_CENTER);
            par1.add(new Phrase(Chunk.NEWLINE));
            par1.add(new Phrase(Chunk.NEWLINE));
            documento.add(par1);

            Paragraph par2 = new Paragraph();
            Font fontescrip = new Font(Font.FontFamily.TIMES_ROMAN, 9, Font.NORMAL, BaseColor.BLACK);
            par2.add(
                    new Phrase("LUGAR DE CONSULTA :  POLICL?NICO NUESTRA SEORA DE LOS ANGELES", fontescrip));
            par2.add(new Phrase(Chunk.NEWLINE));
            par2.add(new Phrase("CODIGO DE CITA :  " + codigocita, fontescrip));
            par2.add(new Phrase(Chunk.NEWLINE));
            par2.add(new Phrase("PACIENTE :  " + nombre, fontescrip));
            par2.add(new Phrase(Chunk.NEWLINE));
            par2.add(new Phrase("ESPECIALIDAD :  " + especialidad, fontescrip));
            par2.add(new Phrase(Chunk.NEWLINE));
            par2.add(new Phrase("FECHA :  " + fecha, fontescrip));
            par2.add(new Phrase(Chunk.NEWLINE));
            par2.add(new Phrase("HORA DE CITA :  " + hora, fontescrip));
            par2.add(new Phrase(Chunk.NEWLINE));
            par2.add(new Phrase("DOCTOR(A) :  " + doctor, fontescrip));
            par2.add(new Phrase(Chunk.NEWLINE));
            par2.add(new Phrase("COSTO DE CITA :  10.00 SOLES", fontescrip));
            par2.add(new Phrase(Chunk.NEWLINE));
            par2.add(new Phrase(
                    "El paciente tendr que imprimir esta cita y acercarse a caja para cancelar el monto de la cita para posteriormente acudir a su cita en el consultorio establecido en el recibo.",
                    fontescrip));
            par2.add(new Phrase(Chunk.NEWLINE));
            //par2.add(new Phrase(Chunk.NEWLINE));
            par2.add(new Phrase(
                    "                                                                                                                      - Administracin",
                    fontescrip));
            par2.add(new Phrase(Chunk.NEWLINE));
            par2.setAlignment(Element.ALIGN_JUSTIFIED);
            documento.add(par2);

            documento.close();

        } catch (Exception ex) {
            ex.getMessage();
        }

    } finally {
        out.close();
    }

    ////            try{
    //                
    //                
    //                
    //                Document document = new Document();
    //                Rectangle one = new Rectangle(70,140);
    //                document.setPageSize(one);
    //                
    //                document.open();
    //                Paragraph par1=new Paragraph();
    //                Font fonttitulo=new Font(Font.FontFamily.HELVETICA,25,Font.BOLD,BaseColor.BLACK);   
    //                
    //                par1.add(new Phrase("Citas del dia: Turno Maana",fonttitulo)); 
    //                document.add(par1);
    //                
    //                
    //                
    //                
    ////                Paragraph p = new Paragraph("Hi");
    ////                document.add(p);
    ////                document.setPageSize(two);
    ////                document.setMargins(20, 20, 20, 20);
    ////                document.newPage();
    ////                document.add(p);
    //                document.close();
    //                
    //                
    //                
    ////                String especialidad=request.getParameter("especialidad");
    ////                String turno=request.getParameter("turno");
    ////                String dia=request.getParameter("dia");
    //                
    ////                Document documento=new Document();
    ////                documento.setPageSize(PageSize.A4);
    ////                documento.setPageSize(PageSize.A4.rotate());
    ////                PdfWriter.getInstance(documento, out);
    ////                
    ////                documento.open();
    //                
    ////                Paragraph par1=new Paragraph();
    ////                Font fonttitulo=new Font(Font.FontFamily.HELVETICA,25,Font.BOLD,BaseColor.BLACK);
    ////                if (turno.equalsIgnoreCase("M")) {
    ////                par1.add(new Phrase("Citas del dia: "+dia+" Turno Maana",fonttitulo));    
    ////                }
    ////                else{par1.add(new Phrase("Citas del dia: "+dia+" Turno Tarde",fonttitulo));}
    ////                
    ////                
    ////                par1.setAlignment(Element.ALIGN_CENTER);
    ////                par1.add(new Phrase(Chunk.NEWLINE));
    ////                par1.add(new Phrase(Chunk.NEWLINE));
    ////                documento.add(par1);
    ////                
    ////                PdfPTable tabla=new PdfPTable(9);
    ////                PdfPCell celda1=new PdfPCell(new Paragraph("Codigo Cita",FontFactory.getFont("Arial", 12, Font.BOLD)));
    ////                PdfPCell celda2=new PdfPCell(new Paragraph("Especialidad",FontFactory.getFont("Arial", 12, Font.BOLD)));
    ////                PdfPCell celda3=new PdfPCell(new Paragraph("Codigo Paciente",FontFactory.getFont("Arial", 12, Font.BOLD)));
    ////                PdfPCell celda4=new PdfPCell(new Paragraph("Nombre",FontFactory.getFont("Arial", 12, Font.BOLD)));
    ////                PdfPCell celda5=new PdfPCell(new Paragraph("Apellido Paterno",FontFactory.getFont("Arial", 12, Font.BOLD)));
    ////                PdfPCell celda6=new PdfPCell(new Paragraph("Apellido Materno",FontFactory.getFont("Arial", 12, Font.BOLD)));
    ////                PdfPCell celda7=new PdfPCell(new Paragraph("Hora",FontFactory.getFont("Arial", 12, Font.BOLD)));
    ////                PdfPCell celda8=new PdfPCell(new Paragraph("Doctor",FontFactory.getFont("Arial", 12, Font.BOLD)));
    ////                PdfPCell celda9=new PdfPCell(new Paragraph("Da",FontFactory.getFont("Arial", 12, Font.BOLD)));
    //                
    ////                tabla.addCell(celda1);
    ////                tabla.addCell(celda2);
    ////                tabla.addCell(celda3);
    ////                tabla.addCell(celda4);
    ////                tabla.addCell(celda5);
    ////                tabla.addCell(celda6);
    ////                tabla.addCell(celda7);
    ////                tabla.addCell(celda8);
    ////                tabla.addCell(celda9);
    ////                
    ////                try{
    ////                    
    ////                              Connection conex=conexion.obtener();
    ////                                
    ////                            PreparedStatement consulta2=conex.prepareStatement("call pacientegeneral_select();");
    ////                            ResultSet resultado2=consulta2.executeQuery();
    ////                            
    ////                            while(resultado2.next()){
    ////                                
    ////                                PreparedStatement consulta=conex.prepareStatement("call cita_select();");
    ////                            ResultSet resultado=consulta.executeQuery();
    ////                                
    ////                            while(resultado.next()){
    ////                                
    ////                                if (turno.equalsIgnoreCase("M") && resultado.getString(4).charAt(6)=='A' && resultado.getInt(3)==resultado2.getInt(1) && resultado.getString(7).equalsIgnoreCase(dia) && resultado.getString(2).equalsIgnoreCase(especialidad)) {
    ////
    ////                                    tabla.addCell(resultado.getString(1));
    ////                                    tabla.addCell(resultado.getString(2));
    ////                                    tabla.addCell(resultado2.getString(1));
    ////                                    tabla.addCell(resultado2.getString(2));
    ////                                    tabla.addCell(resultado2.getString(3));
    ////                                    tabla.addCell(resultado2.getString(4));
    ////                                    tabla.addCell(resultado.getString(4));
    ////                                    tabla.addCell(resultado.getString(5));
    ////                                    tabla.addCell(resultado.getString(7));
    ////                                    
    ////                                    }
    ////                                
    ////                            }    
    ////                            }
    ////                            
    ////                        conexion.cerrar();
    ////                        }catch(Exception ex){JOptionPane.showMessageDialog(null, ex.toString());}
    //                
    //                
    //                
    //                
    ////                try{
    ////                    
    ////                              Connection conex=conexion.obtener();
    ////                                
    ////                            PreparedStatement consulta2=conex.prepareStatement("call pacientegeneral_select();");
    ////                            ResultSet resultado2=consulta2.executeQuery();
    ////                            
    ////                            while(resultado2.next()){
    ////                                
    ////                                PreparedStatement consulta=conex.prepareStatement("call cita_select();");
    ////                            ResultSet resultado=consulta.executeQuery();
    ////                                
    ////                            while(resultado.next()){
    ////                                
    ////                                if (turno.equalsIgnoreCase("T") && resultado.getString(4).charAt(6)=='P' && resultado.getInt(3)==resultado2.getInt(1) && resultado.getString(7).equalsIgnoreCase(dia) && resultado.getString(2).equalsIgnoreCase(especialidad)) {
    ////
    ////                                    tabla.addCell(resultado.getString(1));
    ////                                    tabla.addCell(resultado.getString(2));
    ////                                    tabla.addCell(resultado2.getString(1));
    ////                                    tabla.addCell(resultado2.getString(2));
    ////                                    tabla.addCell(resultado2.getString(3));
    ////                                    tabla.addCell(resultado2.getString(4));
    ////                                    tabla.addCell(resultado.getString(4));
    ////                                    tabla.addCell(resultado.getString(5));
    ////                                    tabla.addCell(resultado.getString(7));
    ////                                    
    ////                                    }
    ////                                
    ////                            }    
    ////                            }
    ////                            
    ////                        conexion.cerrar();
    ////                        }catch(Exception ex){JOptionPane.showMessageDialog(null, ex.toString());}
    //                
    //                
    //                
    //                
    //                
    //                
    ////            float[] columnWidths = new float[]{15f, 30f, 18f, 23f, 23f, 23f, 20f, 25f, 18f};
    ////                tabla.setWidths(columnWidths);
    ////                
    ////                            documento.add(tabla);
    //                            document.close();    
    //                
    //            }catch(Exception ex){ex.getMessage();}
    //            
    //            String redirectURL="principal.jsp";
    ////            response.sendRedirect(redirectURL);

}

From source file:de.beimax.talenttree.PageGeneratorCareer.java

License:Open Source License

/**
 * Add skill data/* www  . j a va  2s.  c o m*/
 * @param prefix translated prefix (printed bold) without :
 * @param dataKey data key in YAML file, skills/bonus_skills
 * @throws Exception
 */
protected void addSkillData(String prefix, String dataKey) throws Exception {
    Font fontRegular = new Font(generator.getFontRegular(), 10.5f);
    Font fontBold = new Font(generator.getFontBold(), 10.5f);

    // add career skills
    Phrase phrase = new Phrase();
    phrase.add(new Chunk(prefix + ": ", fontBold));
    ArrayList<String> skills = new ArrayList<String>();
    //noinspection unchecked
    for (String key : (Iterable<String>) data.get(dataKey))
        skills.add(getLocalizedString(key));
    // sort localized
    Collections.sort(skills, Collator.getInstance());
    // build skill list
    StringBuilder sb = new StringBuilder();
    for (String skill : skills) {
        if (sb.length() != 0)
            sb.append(", ");
        sb.append(skill);
    }
    phrase.add(new Chunk(sb.toString(), fontRegular));
    Paragraph p = new Paragraph(phrase);
    p.setAlignment(Element.ALIGN_JUSTIFIED);
    p.setIndentationRight(getUsablePageWidth() - PDFGenerator.headerTextMaxWidth);
    p.setLeading(13.2f);
    document.add(p);
}

From source file:de.fau.osr.util.matrix.MatrixTools.java

License:Open Source License

/**
 * /**//  ww w. jav  a 2 s  .  co  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/*from   w w w . ja v a  2 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 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 a  va 2 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:edu.eci.pdsw.aeci.managedbeans.GenerarPDFbean.java

@PostConstruct
public void init() {

    try {/*from   w  ww  .ja v  a  2s .  c o  m*/
        //----------------------------------
        nombre = login.getPersonaLog().getFirstName() + " " + login.getPersonaLog().getLastName();

        Carrera = login.getPersonaLog().getProgram().getName();
        periodo = login.getPersonaLog().getPeriod();
        String pe = login.getPersonaLog().getYearGraduate() + " - " + periodo;
        Cedula = login.getPersonaLog().getId();

        Document doc = new Document();
        Paragraph parrafo, parrafo2, parrafo3, parrafo4;
        Image imagenLogo = Image.getInstance("Logo.jpeg");
        Image imagenFirma = Image.getInstance("firmaDigital.jpeg");
        OutputStream out = new ByteArrayOutputStream();
        PdfWriter writer = PdfWriter.getInstance(doc, out);

        doc.open();
        imagenLogo.setAlignment(Element.ALIGN_CENTER);
        doc.add(imagenLogo);
        doc.add(new Paragraph("\n"));
        doc.add(new Paragraph("\n"));
        doc.add(new Paragraph("\n"));
        doc.add(new Paragraph("\n"));
        parrafo = new Paragraph("CERTIFICADO DE AFILIACIN AECI");
        parrafo.setAlignment(Element.ALIGN_CENTER);
        doc.add(parrafo);
        doc.add(new Paragraph("\n"));
        doc.add(new Paragraph("\n"));
        doc.add(new Paragraph("\n"));
        doc.add(new Paragraph("\n"));
        parrafo2 = new Paragraph(
                "La Asociacin de  Egresados de la  Escuela Colombiana de Ingeniera Julio Garavito AECI, con "
                        + "Nit. 830.031.137- 4, certifica que el Ingeniero(a) egresado de la carrera " + Carrera
                        + " Graduado en el periodo " + pe + "," + " " + nombre
                        + ", identificado con la cdula de Ciudadana N" + Cedula + ","
                        + " est afiliado a esta Asociacin y se encuentra al da con su aporte, "
                        + " el cual fue realizado a travs de la consignacin " + Consignacion + " y"
                        + " la factura de venta N " + factura + " del dia " + fechaActual);
        parrafo2.setAlignment(Element.ALIGN_JUSTIFIED);
        doc.add(parrafo2);
        doc.add(new Paragraph("\n"));
        doc.add(new Paragraph("\n"));
        doc.add(new Paragraph("\n"));
        doc.add(new Paragraph("\n"));
        /** add **/
        parrafo = new Paragraph("Coordialmente");
        parrafo.setAlignment(Element.ALIGN_CENTER);
        doc.add(parrafo);

        imagenFirma.setAlignment(Element.ALIGN_CENTER);
        doc.add(imagenFirma);
        parrafo = new Paragraph("JUAN CARLOS ROMERO ORDEZ");
        parrafo.setAlignment(Element.ALIGN_CENTER);
        doc.add(parrafo);
        parrafo = new Paragraph("Director");
        parrafo.setAlignment(Element.ALIGN_CENTER);
        doc.add(parrafo);
        parrafo = new Paragraph("Asociacion de Egresados Escuela Colombiana de Ingeniera Julio Garavito");
        parrafo.setAlignment(Element.ALIGN_CENTER);
        doc.add(parrafo);
        doc.add(new Paragraph("\n"));
        doc.add(new Paragraph("\n"));
        parrafo = new Paragraph(
                "AK 45 no 205-59 * Bloque A -piso 2 * Telfonos 6683600 ext 323-Mvil 3124570612 *");
        parrafo.setAlignment(Element.ALIGN_CENTER);
        doc.add(parrafo);
        parrafo = new Paragraph(
                "Correo electronico aeci@escuelaing.edu.co * Facebook Twitter AECI/escuelaing www.aeci.org.co");
        parrafo.setAlignment(Element.ALIGN_CENTER);
        doc.add(parrafo);
        parrafo = new Paragraph("Bogot-Colombia");
        parrafo.setAlignment(Element.ALIGN_CENTER);
        doc.add(parrafo);
        doc.close();
        out.close();

        InputStream in = new ByteArrayInputStream(((ByteArrayOutputStream) out).toByteArray());

        streamedContent = new DefaultStreamedContent(in, "application/pdf");
        //-------
        Map<String, Object> session = FacesContext.getCurrentInstance().getExternalContext().getSessionMap();
        byte[] b = (byte[]) session.get("reportBytes");
        if (b != null) {
            streamedContent = new DefaultStreamedContent(new ByteArrayInputStream(b), "application/pdf");
        }
    } catch (Exception e) {
        System.out.println(Carrera + "mierdaadw");
    }

}

From source file:eu.aniketos.wp1.ststool.report.pdfgenerator.AbstractContentFactory.java

License:Open Source License

protected Paragraph getDefaultParagraph() {

    Paragraph result = new Paragraph();
    result.setFont(CONTENT_NORMAL);/*from   ww w .  java 2  s . com*/
    result.setAlignment(Element.ALIGN_JUSTIFIED);
    result.setSpacingAfter(result.getFont().getSize() * 1.5f);
    return result;
}

From source file:eu.aniketos.wp1.ststool.report.pdfgenerator.AbstractContentFactory.java

License:Open Source License

protected Phrase getDefaultPhrase() {

    Paragraph result = new Paragraph();
    result.setFont(CONTENT_NORMAL);//from  w ww.j  a va  2  s.  c  o m
    result.setAlignment(Element.ALIGN_JUSTIFIED);
    result.setSpacingAfter(result.getFont().getSize() * 1.5f);
    return result;
}

From source file:Export.SeguroAPG.java

public String criarDoc(String numApolice, String numCliente, Contrato c, AcidentePGBean apg, String user,
        String moeda, String arquivo) {
    try {// ww w  .  j a v  a 2 s . c  o  m
        SimpleDateFormat sdf = new SimpleDateFormat("dd 'de' MMMM 'de' yyyy", new Locale("pt", "BR"));
        SimpleDateFormat sdf1 = new SimpleDateFormat("dd-MM-yyyy hh'.'mm'.'ss");

        Font fontCabecalhoN = FontFactory.getFont(Fontes.FONTB, BaseFont.WINANSI, BaseFont.EMBEDDED, 10.5f);
        Font fontCorpo = FontFactory.getFont(Fontes.FONT, BaseFont.WINANSI, BaseFont.EMBEDDED, 9f);
        Font fontCorpoTab = FontFactory.getFont(Fontes.FONT, BaseFont.WINANSI, BaseFont.EMBEDDED, 7.5f);
        Font fontCorpoP = FontFactory.getFont(Fontes.FONT, BaseFont.WINANSI, BaseFont.EMBEDDED, 7.5f);
        Font fontCorpoN = FontFactory.getFont(Fontes.FONTB, BaseFont.WINANSI, BaseFont.EMBEDDED, 9f);
        Font fontCorpoNTable = FontFactory.getFont(Fontes.FONTB, BaseFont.WINANSI, BaseFont.EMBEDDED, 8f);
        Font fontCorpoNG = FontFactory.getFont(Fontes.FONTB, BaseFont.WINANSI, BaseFont.EMBEDDED, 10.5f);
        Font fontCorpoNGT = FontFactory.getFont(Fontes.FONTB, BaseFont.WINANSI, BaseFont.EMBEDDED, 11f);
        Font fontCabecalhoNG = FontFactory.getFont(Fontes.FONTB, BaseFont.WINANSI, BaseFont.EMBEDDED, 16f,
                Font.UNDERLINE);
        //            Font fontCorpoNGTi= FontFactory.getFont(Fontes.FONTB, BaseFont.WINANSI, BaseFont.EMBEDDED ,10f );

        PdfPTable pTableEmpresaPricipal = new PdfPTable(new float[] { 25f, 75f });
        PdfPTable pTableEmpresaInforImpres1 = new PdfPTable(1);
        PdfPTable pTableEmpresaInforImpres2 = new PdfPTable(1);
        PdfPTable pTableEmpresaInforImpres5 = new PdfPTable(1);

        PdfPTable pTableNull = new PdfPTable(1);
        PdfPCell cellNull = new PdfPCell(new Phrase(" ", fontCorpo));
        cellNull.setBorder(0);
        pTableNull.addCell(cellNull);

        PdfPCell pCellNomeEmpresa = new PdfPCell(new Phrase(Empresa.NOME, fontCabecalhoNG));
        pCellNomeEmpresa.setBorder(0);

        PdfPCell pCellNomeEndereco = new PdfPCell(new Phrase(Empresa.ENDERECO, fontCabecalhoN));
        pCellNomeEndereco.setBorder(0);

        PdfPCell pCellCaixaPostal = new PdfPCell(new Phrase(Empresa.CAIXAPOSTAL, fontCabecalhoN));
        pCellCaixaPostal.setBorder(0);

        PdfPCell pCellTeleFax = new PdfPCell(
                new Phrase(Empresa.TELEFAX + " " + ConfigDoc.Empresa.EMAIL, fontCabecalhoN));
        pCellTeleFax.setBorder(0);

        PdfPCell pCellSociedade = new PdfPCell(new Phrase(Empresa.SOCIEDADE, fontCabecalhoN));
        pCellSociedade.setBorder(0);

        PdfPCell pCellPolice = new PdfPCell(new Phrase(Empresa.APOLICE + numApolice, fontCabecalhoN));
        pCellPolice.setBorder(0);

        Image imageEmpresa = Image.getInstance("logo.png");
        imageEmpresa.scaleToFit(120f, 85f);

        pTableEmpresaInforImpres1.addCell(pCellNomeEmpresa);
        pTableEmpresaInforImpres1.addCell(pCellNomeEndereco);
        pTableEmpresaInforImpres1.addCell(pCellCaixaPostal);
        pTableEmpresaInforImpres1.addCell(pCellTeleFax);
        pTableEmpresaInforImpres1.addCell(pCellSociedade);

        pTableEmpresaInforImpres1.addCell(pCellPolice);

        PdfPCell cellTabela3 = new PdfPCell(pTableEmpresaInforImpres1);
        cellTabela3.setBorder(0);

        pTableEmpresaInforImpres5.addCell(cellTabela3);

        PdfPCell cellTabela5 = new PdfPCell(pTableEmpresaInforImpres5);
        cellTabela5.setBorder(0);

        PdfPCell cellTabela6 = new PdfPCell(imageEmpresa);
        cellTabela6.setBorder(0);

        pTableEmpresaPricipal.addCell(cellTabela6);
        pTableEmpresaPricipal.addCell(cellTabela5);

        PdfPTable pTableSeguro = new PdfPTable(1);
        PdfPTable pTableCliente = new PdfPTable(1);

        PdfPTable pTableTitulo = new PdfPTable(1);
        Phrase pTitulo = new Phrase("Formulario de SEguro Acidente Para grupo".toUpperCase(), fontCorpoNGT);
        PdfPCell cellTitulo = new PdfPCell(pTitulo);
        cellTitulo.setBorder(0);
        cellTitulo.setHorizontalAlignment(Element.ALIGN_CENTER);
        pTableTitulo.addCell(cellTitulo);

        ClienteI ci = new ClienteI(numCliente);

        PdfPCell cellTituloTsbleSegurado = new PdfPCell(
                new Phrase("1 - Informaes Cliente".toUpperCase(), fontCorpoNG));
        cellTituloTsbleSegurado.setBorder(0);

        Paragraph pCl = new Paragraph();
        pCl.add(new Phrase("   " + ci.getNOMEL_(), fontCorpo));
        pCl.add(new Phrase(ci.getNOME_(), fontCorpoN));
        PdfPCell cellNome = new PdfPCell(new Phrase(pCl));
        cellNome.setBorder(0);

        pCl = new Paragraph();
        pCl.add(new Phrase("   " + ci.getENDERECOL_(), fontCorpo));
        pCl.add(new Phrase(ci.getENDERECO_(), fontCorpoN));
        PdfPCell cellEndereco = new PdfPCell(pCl);
        cellEndereco.setBorder(0);

        pCl = new Paragraph();
        pCl.add(new Phrase("   " + ci.getNUNCLIENTEL_(), fontCorpo));
        pCl.add(new Phrase(ci.getNUNCLIENTE_(), fontCorpoN));
        PdfPCell cellNCliente = new PdfPCell(pCl);
        cellNCliente.setBorder(0);

        pCl = new Paragraph();
        pCl.add(new Phrase("   " + ci.getPROFISSAOL_(), fontCorpo));
        pCl.add(new Phrase(ci.getPROFISSAO_(), fontCorpoN));
        PdfPCell cellProfissao = new PdfPCell(pCl);
        cellProfissao.setBorder(0);

        pCl = new Paragraph();
        pCl.add(new Phrase("   " + ci.getLOCALTRABALHOL_(), fontCorpo));
        pCl.add(new Phrase(ci.getLOCALTRABALHO_(), fontCorpoN));
        PdfPCell cellLocalTrabalho = new PdfPCell(pCl);
        cellLocalTrabalho.setBorder(0);

        pTableCliente.addCell(cellTituloTsbleSegurado);
        pTableCliente.addCell(cellNome);
        pTableCliente.addCell(cellEndereco);
        pTableCliente.addCell(cellNCliente);
        pTableCliente.addCell(cellProfissao);
        pTableCliente.addCell(cellLocalTrabalho);

        PdfPCell cellTiltuloSegro = new PdfPCell(
                new Phrase("2 - Informaes Premio".toUpperCase(), fontCorpoNG));
        cellTiltuloSegro.setBorder(0);
        PdfPCell cellApolice = new PdfPCell(
                new Phrase("   N Aplice: ".toUpperCase() + numApolice, fontCorpo));
        cellApolice.setBorder(0);
        PdfPCell cellPropriedadeSegurada = new PdfPCell(
                new Phrase(
                        "   Propriedade segurada: ".toUpperCase() + apg.getInfo().size() + " "
                                + "Trabalhodor".toUpperCase() + ((apg.getInfo().size() > 1) ? "ES" : ""),
                        fontCorpo));
        cellPropriedadeSegurada.setBorder(0);
        PdfPCell cellTotalSegurado = new PdfPCell(
                new Phrase("   Valor Total segrurado: ".toUpperCase() + c.getTotalSeguradoMoeda() + " " + moeda,
                        fontCorpo));
        cellTotalSegurado.setBorder(0);
        PdfPCell cellValor1Preminio = new PdfPCell(new Phrase(
                "   Valor Primeiro Premio: ".toUpperCase()
                        + ((c.getPrimeiroPremio() == null) ? "" : c.getPrimeiroPremio() + " " + moeda),
                fontCorpo));
        cellValor1Preminio.setBorder(0);
        PdfPCell cellTotalPremioAnual = new PdfPCell(new Phrase("   Valor Premio Anual: ".toUpperCase()
                + ((c.getPremioAnual() == null) ? " " : c.getPremioAnual() + " " + moeda), fontCorpo));
        cellTotalPremioAnual.setBorder(0);
        PdfPCell cellPeriodo = new PdfPCell(new Phrase("   Periodo Do Seguro: ".toUpperCase()
                + ((c.getDataInicio() != null) ? sdf.format(c.getDataInicio()) : "") + "  "
                + ((c.getDataFim() != null) ? sdf.format(c.getDataFim()) : ""), fontCorpo));
        cellPeriodo.setBorder(0);
        PdfPCell cellDataRenovacao = new PdfPCell(new Phrase(
                "   Data Renovao: ".toUpperCase()
                        + ((c.getDataRenovacao() == null) ? " " : c.getDataRenovacao() + " " + moeda),
                fontCorpo));
        cellDataRenovacao.setBorder(0);
        Paragraph p = new Paragraph();
        Phrase p1 = new Phrase("BEnefcio (s) De Peessoa e Plano: ".toUpperCase(), fontCorpoN);
        Phrase p2 = new Phrase(
                "O Seguro Sob esta seco se aplique apenas as pessoas ou grupo das pessoas seguradas indicadas"
                        .toUpperCase()
                        + " e apenas de acordo com s coberturas para qual o valor foi especificado. o Valor especificado ser aplicado para "
                                .toUpperCase()
                        + "cada pessoa segurada por sinistro subjeito a todos os termos da apolice."
                                .toUpperCase(),
                fontCorpo);

        p.add(p1);
        p.add(p2);

        PdfPCell cellNotaBenefi = new PdfPCell(p);
        cellNotaBenefi.setBorder(0);
        cellNotaBenefi.setHorizontalAlignment(Element.ALIGN_JUSTIFIED);

        PdfPCell cellCobertura = new PdfPCell(new Phrase(
                "Cobertuta Diria: ".toUpperCase() + ((apg.getAcidentePG().getTipoCobertura().equals("1"))
                        ? "Apenas em situao de acidente de trabalho"
                        : ((apg.getAcidentePG().getTipoCobertura().equals("2") ? "24 horas"
                                : apg.getAcidentePG().getTipoCobertura()))),
                fontCorpo));
        cellCobertura.setBorder(0);

        PdfPCell cellLimiteBeneficio = new PdfPCell(
                new Phrase("3 - Informaes de Limites de Benefcio:".toUpperCase(), fontCorpoNG));
        cellLimiteBeneficio.setBorder(0);

        PdfPCell cellLimiteA = new PdfPCell(new Phrase("   Benefcio A: Morte: ".toUpperCase()
                + apg.getAcidentePG().getPremioMorteMoeda() + " " + moeda, fontCorpo));
        cellLimiteA.setBorder(0);
        PdfPCell cellLimiteB = new PdfPCell(new Phrase("   Benefcio B: Invalidez permanete: ".toUpperCase()
                + apg.getAcidentePG().getPremioIncapacidadePermanenteMoeda() + " " + moeda, fontCorpo));
        cellLimiteB.setBorder(0);
        PdfPCell cellLimiteC = new PdfPCell(
                new Phrase("   Benefcio C: Reembolso das despesas Mdica Acidental: ".toUpperCase()
                        + apg.getAcidentePG().getPremioDespesaMedicaMoeda() + " " + moeda, fontCorpo));
        cellLimiteC.setBorder(0);
        PdfPCell cellLimiteGlobal = new PdfPCell(
                new Phrase("   Limite Global de Responsabilidade: ".toUpperCase() + c.getTotalSeguradoMoeda()
                        + " " + moeda, fontCorpo));
        cellLimiteGlobal.setBorder(0);

        pTableSeguro.addCell(cellTiltuloSegro);
        pTableSeguro.addCell(cellApolice);
        pTableSeguro.addCell(cellPropriedadeSegurada);
        pTableSeguro.addCell(cellTotalSegurado);
        pTableSeguro.addCell(cellValor1Preminio);
        pTableSeguro.addCell(cellTotalPremioAnual);
        pTableSeguro.addCell(cellPeriodo);
        pTableSeguro.addCell(cellDataRenovacao);
        pTableSeguro.addCell(cellNull);
        pTableSeguro.addCell(cellNotaBenefi);
        pTableSeguro.addCell(cellNull);
        pTableSeguro.addCell(cellCobertura);
        pTableSeguro.addCell(cellNull);
        pTableSeguro.addCell(cellLimiteBeneficio);
        pTableSeguro.addCell(cellLimiteA);
        pTableSeguro.addCell(cellLimiteB);
        pTableSeguro.addCell(cellLimiteC);
        pTableSeguro.addCell(cellLimiteGlobal);

        PdfPTable pTableDados = new PdfPTable(new float[] { 7, 15.5f, 15.5f, 15.5f, 15.f, 15.5f, 15.5f });
        PdfPCell cellDadosNum = new PdfPCell(new Phrase("No.".toUpperCase(), fontCorpoNTable));
        cellDadosNum.setBorderWidth(1);

        PdfPCell cellDadosSegurado = new PdfPCell(new Phrase("Nome Segurado".toUpperCase(), fontCorpoNTable));
        cellDadosSegurado.setBorderWidth(1);

        PdfPCell cellDadosCategoria = new PdfPCell(
                new Phrase("Categoria do Segurado".toUpperCase(), fontCorpoNTable));
        cellDadosCategoria.setBorderWidth(1);

        PdfPCell cellDadosBeneficioMorte = new PdfPCell(
                new Phrase("Beneficio Em caso de morte por pessoa".toUpperCase(), fontCorpoNTable));
        cellDadosBeneficioMorte.setBorderWidth(1);

        PdfPCell cellDadosInvalidez = new PdfPCell(new Phrase(
                "Beneficio Em caso de Invalidez permanente por pessoa".toUpperCase(), fontCorpoNTable));
        cellDadosInvalidez.setBorderWidth(1);

        PdfPCell cellDadosTemporaria = new PdfPCell(new Phrase(
                "Beneficio Em caso de Invalidez temporaria por pessoa".toUpperCase(), fontCorpoNTable));
        cellDadosTemporaria.setBorderWidth(1);

        PdfPCell cellDadosDepesasMedica = new PdfPCell(
                new Phrase("Despesa Medica Por Pessoa".toUpperCase(), fontCorpoNTable));
        cellDadosDepesasMedica.setBorderWidth(1);

        pTableDados.addCell(cellDadosNum);
        pTableDados.addCell(cellDadosSegurado);
        pTableDados.addCell(cellDadosCategoria);
        pTableDados.addCell(cellDadosBeneficioMorte);
        pTableDados.addCell(cellDadosInvalidez);
        pTableDados.addCell(cellDadosTemporaria);
        pTableDados.addCell(cellDadosDepesasMedica);

        int total = (apg.getInfo() == null) ? 0 : apg.getInfo().size();
        for (int i = 0; i < total; i++) {
            cellDadosNum = new PdfPCell(new Phrase((i + 1) + " ", fontCorpoTab));
            cellDadosNum.setBorderWidth(1);
            cellDadosNum.setPaddingTop(5f);
            cellDadosNum.setPaddingBottom(5f);

            cellDadosSegurado = new PdfPCell(new Phrase(apg.getInfo().get(i).getNome(), fontCorpoTab));
            cellDadosSegurado.setBorderWidth(1);
            cellDadosSegurado.setPaddingTop(5f);
            cellDadosSegurado.setPaddingBottom(5f);

            cellDadosCategoria = new PdfPCell(new Phrase(apg.getInfo().get(i).getCategoria(), fontCorpoTab));
            cellDadosCategoria.setHorizontalAlignment(Element.ALIGN_CENTER);
            cellDadosCategoria.setBorderWidth(1);
            cellDadosCategoria.setPaddingTop(5f);
            cellDadosCategoria.setPaddingBottom(5f);

            cellDadosBeneficioMorte = new PdfPCell(
                    new Phrase(apg.getInfo().get(i).getValorMorte() + " " + moeda, fontCorpoTab));
            cellDadosBeneficioMorte.setHorizontalAlignment(Element.ALIGN_CENTER);
            cellDadosBeneficioMorte.setBorderWidth(1);
            cellDadosBeneficioMorte.setPaddingTop(5f);
            cellDadosBeneficioMorte.setPaddingBottom(5f);

            cellDadosInvalidez = new PdfPCell(
                    new Phrase(apg.getInfo().get(i).getIncapacidadeTotal() + " " + moeda, fontCorpoTab));
            cellDadosInvalidez.setHorizontalAlignment(Element.ALIGN_CENTER);
            cellDadosInvalidez.setBorderWidth(1);
            cellDadosInvalidez.setPaddingTop(5f);
            cellDadosInvalidez.setPaddingBottom(5f);

            cellDadosTemporaria = new PdfPCell(new Phrase(
                    apg.getInfo().get(i).getIncapacidadeTotalTemporaria() + " " + moeda, fontCorpoTab));
            cellDadosTemporaria.setHorizontalAlignment(Element.ALIGN_CENTER);
            cellDadosTemporaria.setBorderWidth(1);
            cellDadosTemporaria.setPaddingTop(5f);
            cellDadosTemporaria.setPaddingBottom(5f);

            cellDadosDepesasMedica = new PdfPCell(
                    new Phrase(apg.getInfo().get(i).getDespesaMedica() + " " + moeda, fontCorpoTab));
            cellDadosDepesasMedica.setHorizontalAlignment(Element.ALIGN_CENTER);
            cellDadosDepesasMedica.setBorderWidth(1);
            cellDadosDepesasMedica.setPaddingTop(5f);
            cellDadosDepesasMedica.setPaddingBottom(5f);

            pTableDados.addCell(cellDadosNum);
            pTableDados.addCell(cellDadosSegurado);
            pTableDados.addCell(cellDadosCategoria);
            pTableDados.addCell(cellDadosBeneficioMorte);
            pTableDados.addCell(cellDadosInvalidez);
            pTableDados.addCell(cellDadosTemporaria);
            pTableDados.addCell(cellDadosDepesasMedica);
        }

        PdfPTable pTableRenovacaoDataHoje = new PdfPTable(1);
        PdfPCell cellRenovacao = new PdfPCell(new Phrase("Prmio de renovao: ".toUpperCase()
                + ((c.getPremioAnual() == null) ? " " : c.getPremioAnual() + " " + moeda), fontCorpo));
        cellRenovacao.setBorder(0);
        PdfPCell cellData = new PdfPCell(
                new Phrase("Data: ".toUpperCase() + sdf.format(new Date()), fontCorpo));
        cellData.setBorder(0);
        pTableRenovacaoDataHoje.addCell(cellRenovacao);
        pTableRenovacaoDataHoje.addCell(cellData);

        PdfPTable pTableAssinaturaTitulo = new PdfPTable(1);
        PdfPTable pTableAssinatura = new PdfPTable(new float[] { 50f, 50f });
        PdfPCell cellAssinatora = new PdfPCell(new Phrase("Assinaturas".toUpperCase(), fontCorpoN));
        cellAssinatora.setBorder(0);
        cellAssinatora.setHorizontalAlignment(Element.ALIGN_CENTER);
        PdfPCell celllinha1 = new PdfPCell(new Phrase("___________________________".toUpperCase(), fontCorpo));
        celllinha1.setBorder(0);
        celllinha1.setHorizontalAlignment(Element.ALIGN_CENTER);
        PdfPCell celllinha2 = new PdfPCell(new Phrase("___________________________".toUpperCase(), fontCorpo));
        celllinha2.setBorder(0);
        celllinha2.setHorizontalAlignment(Element.ALIGN_CENTER);

        PdfPCell celllinha11 = new PdfPCell(new Phrase("para nicon Seguro sa stp".toUpperCase(), fontCorpoP));
        celllinha11.setBorder(0);
        celllinha11.setHorizontalAlignment(Element.ALIGN_CENTER);
        PdfPCell celllinha21 = new PdfPCell(new Phrase("o segurado ".toUpperCase(), fontCorpoP));
        celllinha21.setBorder(0);
        celllinha21.setHorizontalAlignment(Element.ALIGN_CENTER);

        pTableAssinaturaTitulo.addCell(cellAssinatora);
        pTableAssinatura.addCell(celllinha1);
        pTableAssinatura.addCell(celllinha2);
        pTableAssinatura.addCell(celllinha11);
        pTableAssinatura.addCell(celllinha21);

        Document documento = new Document();
        documento.setPageSize(PageSize.A4);
        documento.setMargins(20f, 20f, 35f, 5f);

        //            File ff= new File("Documentos\\"+user+"\\Seguro Acidente para Grupo\\");
        //            ff.mkdirs();
        //            ff =new File(ff.getAbsoluteFile()+"\\"+"Formulario Seguro Acidente Para Grupo "+sdf1.format(new Date())+".pdf");
        File ff = new File(arquivo + "/" + user + "/Seguro Acidente Para Grupo/");
        ff.mkdirs();
        String Ddata = sdf1.format(new Date());
        System.err.println(ff.getAbsoluteFile());
        ff = new File(ff.getAbsoluteFile() + "/" + "Formulario Seguro Acidente Para Grupo " + Ddata + ".pdf");

        reString = "../Documentos/" + user + "/Seguro Acidente Para Grupo/"
                + "Formulario Seguro Acidente Para Grupo " + Ddata + ".pdf";

        OutputStream outputStraem = new FileOutputStream(ff);
        PdfWriter writer = PdfWriter.getInstance(documento, outputStraem);

        if (MarcaDAgua.isSimulation) {
            MarcaDAgua.SimulacaoVertical v = new MarcaDAgua.SimulacaoVertical();
            writer.setPageEvent(v);
        }

        if (MarcaDAgua.isCanceled) {
            MarcaDAgua.AnulacaoVertical v = new MarcaDAgua.AnulacaoVertical();
            writer.setPageEvent(v);
        }

        documento.open();
        documento.add(pTableEmpresaPricipal);
        documento.add(pTableNull);
        documento.add(pTableNull);
        documento.add(pTableNull);
        documento.add(pTableTitulo);
        documento.add(pTableNull);
        documento.add(pTableNull);
        documento.add(pTableCliente);
        documento.add(pTableNull);
        documento.add(pTableSeguro);
        documento.newPage();
        documento.add(pTableDados);
        documento.add(pTableNull);
        documento.add(pTableRenovacaoDataHoje);
        documento.add(pTableNull);
        documento.add(pTableAssinaturaTitulo);
        documento.add(pTableNull);
        documento.add(pTableNull);
        documento.add(pTableAssinatura);
        documento.close();

        //           PrintPdf printPdf = new PrintPdf(ff.getAbsolutePath(), ff.getAbsolutePath(), 0, 595f,842f,"Enviar Para o OneNote 2013",1); 
        //           //PrintPdf printPdf = new PrintPdf(ff.getAbsolutePath(), ff.getAbsolutePath(), 0, 595f,842f,"Hewlett-Packard HP LaserJet P2035",1); 
        //             
        //            printPdf.print();
    } catch (BadElementException | IOException ex) {
        Logger.getLogger(SeguroAPG.class.getName()).log(Level.SEVERE, null, ex);
    } catch (DocumentException ex) {
        Logger.getLogger(SeguroAPG.class.getName()).log(Level.SEVERE, null, ex);
    }
    return reString;
}

From source file:Export.SeguroCoberturaViagem.java

private static void criarDoc(Document documento, ViagemBean vb, String numCriente, String user, Contrato c,
        int i) throws DocumentException, FileNotFoundException, IOException, BadElementException {
    BaseColor colorVermelho = new BaseColor(193, 51, 51);
    BaseColor coloAzul = new BaseColor(0, 0, 179);

    Font fontCabecalhoN = FontFactory.getFont(Fontes.FONTB, BaseFont.WINANSI, BaseFont.EMBEDDED, 10.5f,
            Font.NORMAL, coloAzul);
    Font fontCabecalhoTitile = FontFactory.getFont(Fontes.FONTB, BaseFont.WINANSI, BaseFont.EMBEDDED, 14.5f,
            Font.UNDERLINE, colorVermelho);
    Font fontTableSimple = FontFactory.getFont(Fontes.FONT, BaseFont.WINANSI, BaseFont.EMBEDDED, 8.5f);
    Font fontTableNegrito = FontFactory.getFont(Fontes.FONTB, BaseFont.WINANSI, BaseFont.EMBEDDED, 8.5f);
    Font fontTableSimpleMenor = FontFactory.getFont(Fontes.FONT, BaseFont.WINANSI, BaseFont.EMBEDDED, 8f);
    Font fontTableItalico = FontFactory.getFont(Fontes.FONTBI, BaseFont.WINANSI, BaseFont.EMBEDDED, 8f);
    Font fontTableNormal = FontFactory.getFont(Fontes.FONT, BaseFont.WINANSI, BaseFont.EMBEDDED, 8f);
    Font fontTableSimpleCausulas = FontFactory.getFont(Fontes.FONT, BaseFont.WINANSI, BaseFont.EMBEDDED,
            8.999999f);/* w  ww .j  a  v  a2  s .  c  o  m*/

    //        SimpleDateFormat sdf= new SimpleDateFormat("dd-MM-yyyy");

    Font fontCabecalhoNP = FontFactory.getFont(Fontes.FONTB, BaseFont.WINANSI, BaseFont.EMBEDDED, 9.5f);
    Font fontCorpo = FontFactory.getFont(Fontes.FONT, BaseFont.WINANSI, BaseFont.EMBEDDED, 8.5f);
    Font fontCabecalhoNG = FontFactory.getFont(Fontes.FONTB, BaseFont.WINANSI, BaseFont.EMBEDDED, 16f,
            Font.UNDERLINE, coloAzul);

    PdfPTable pTableEmpresaPricipal = new PdfPTable(new float[] { 23f, 77f });
    pTableEmpresaPricipal.setWidthPercentage(92);
    PdfPTable pTableEmpresaInforImpres1 = new PdfPTable(1);
    PdfPTable pTableEmpresaInforImpres2 = new PdfPTable(1);
    PdfPTable pTableEmpresaInforImpres5 = new PdfPTable(1);

    PdfPTable pTableNull = new PdfPTable(1);
    PdfPCell cellNull = new PdfPCell(new Phrase(" ", fontCorpo));
    cellNull.setBorder(0);
    pTableNull.addCell(cellNull);

    PdfPCell pCellNomeEmpresa = new PdfPCell(new Phrase(Empresa.NOME, fontCabecalhoNG));
    pCellNomeEmpresa.setBorder(0);

    PdfPCell pCellNomeEndereco = new PdfPCell(new Phrase(Empresa.ENDERECO, fontCabecalhoN));
    pCellNomeEndereco.setBorder(0);

    PdfPCell pCellCaixaPostal = new PdfPCell(new Phrase(Empresa.CAIXAPOSTAL, fontCabecalhoN));
    pCellCaixaPostal.setBorder(0);

    PdfPCell pCellTeleFax = new PdfPCell(
            new Phrase(Empresa.TELEFAX + " " + ConfigDoc.Empresa.EMAIL, fontCabecalhoN));
    pCellTeleFax.setBorder(0);

    PdfPCell pCellSociedade = new PdfPCell(new Phrase(Empresa.SOCIEDADE, fontCabecalhoN));
    pCellSociedade.setBorder(0);

    Image imageEmpresa = Image.getInstance("logo.png");
    imageEmpresa.scaleToFit(120f, 85f);

    pTableEmpresaInforImpres1.addCell(pCellNomeEmpresa);
    pTableEmpresaInforImpres1.addCell(pCellNomeEndereco);
    pTableEmpresaInforImpres1.addCell(pCellCaixaPostal);
    pTableEmpresaInforImpres1.addCell(pCellTeleFax);
    pTableEmpresaInforImpres1.addCell(pCellSociedade);

    PdfPCell cellTabela1 = new PdfPCell(pTableEmpresaInforImpres2);
    cellTabela1.setBorder(0);

    PdfPCell cellTabela3 = new PdfPCell(pTableEmpresaInforImpres1);
    cellTabela3.setBorder(0);

    pTableEmpresaInforImpres5.addCell(cellTabela3);

    PdfPCell cellTabela5 = new PdfPCell(pTableEmpresaInforImpres5);
    cellTabela5.setBorder(0);

    PdfPCell cellTabela6 = new PdfPCell(imageEmpresa);
    cellTabela6.setBorder(0);

    pTableEmpresaPricipal.addCell(cellTabela6);
    pTableEmpresaPricipal.addCell(cellTabela5);

    PdfPTable pTableTitulo = new PdfPTable(1);
    pTableTitulo.setWidthPercentage(92f);
    PdfPCell paragraphTitulo = new PdfPCell(new Phrase("SEGURO DE VIAGEM", fontCabecalhoTitile));
    paragraphTitulo.setHorizontalAlignment(Element.ALIGN_CENTER);
    paragraphTitulo.setBorder(0);
    pTableTitulo.addCell(paragraphTitulo);

    PdfPTable pTablePrincipalSegurado = new PdfPTable(new float[] { 55, 45 });
    pTablePrincipalSegurado.setWidthPercentage(92);
    Paragraph pa = new Paragraph(new Phrase("NOME DO SEGURADO: ", fontTableSimple));
    pa.add(new Phrase(vb.getInfoPessoaSegurada().get(i).getNomePessoaSegurada().toUpperCase(),
            fontTableNegrito));
    PdfPCell cellSegurado02 = new PdfPCell(pa);

    pa = new Paragraph(new Phrase("Endereo: ".toUpperCase(), fontTableSimple));
    pa.add(new Phrase(vb.getInfoPessoaSegurada().get(i).getEndereco().toUpperCase(), fontTableNegrito));
    PdfPCell cellSegurado12 = new PdfPCell(pa);

    pa = new Paragraph(new Phrase("Data e Local de Nascimento: ".toUpperCase(), fontTableSimple));
    pa.add(new Phrase(vb.getInfoPessoaSegurada().get(i).getDataNascFormatada().toUpperCase(),
            fontTableNegrito));
    pa.add(new Phrase(" EM", fontTableSimple));
    pa.add(new Phrase(" " + vb.getInfoPessoaSegurada().get(i).getLocalNascimento().toUpperCase(),
            fontTableNegrito));
    PdfPCell cellSegurado21 = new PdfPCell(pa);

    pa = new Paragraph(new Phrase("Sexo: ".toUpperCase(), fontTableSimple));
    pa.add(new Phrase(vb.getInfoPessoaSegurada().get(i).getSexo().toUpperCase(), fontTableNegrito));
    pa.add(new Phrase("  Tel: ".toUpperCase(), fontTableSimple));
    pa.add(new Phrase(vb.getInfoPessoaSegurada().get(i).getTelefone().toUpperCase(), fontTableNegrito));
    PdfPCell cellSegurado22 = new PdfPCell(pa);

    pa = new Paragraph(new Phrase("Aplice: ".toUpperCase(), fontTableSimple));
    pa.add(new Phrase(vb.getInfoPessoaSegurada().get(i).getNumApolice().toUpperCase(), fontTableNegrito));
    PdfPCell cellSegurado31 = new PdfPCell(pa);

    String[] codCliente = vb.getInfoPessoaSegurada().get(i).getNumApolice().split("/");

    pa = new Paragraph(new Phrase("Cliente: ".toUpperCase(), fontTableSimple));
    pa.add(new Phrase(((codCliente.length == 2) ? "TIN " + codCliente[1] : "TIN ").toUpperCase(),
            fontTableNegrito));
    PdfPCell cellSegurado32 = new PdfPCell(pa);

    pa = new Paragraph(new Phrase("Durao: ".toUpperCase(), fontTableSimple));
    pa.add(new Phrase(vb.getInfoPessoaSegurada().get(i).getNumDias() + " DIAS", fontTableNegrito));
    PdfPCell cellSegurado41 = new PdfPCell(pa);

    pa = new Paragraph(new Phrase("Perodo: DE ".toUpperCase(), fontTableSimple));
    pa.add(new Phrase(sdfPot.format(vb.getInfoPessoaSegurada().get(i).getDataInicio()).toUpperCase(),
            fontTableNegrito));
    pa.add(new Phrase("  ".toUpperCase(), fontTableSimple));
    pa.add(new Phrase(((vb.getInfoPessoaSegurada().get(i).getDataFim() != null)
            ? sdfPot.format(vb.getInfoPessoaSegurada().get(i).getDataFim())
            : " ").toUpperCase(), fontTableNegrito));
    PdfPCell cellSegurado42 = new PdfPCell(pa);

    pa = new Paragraph(new Phrase("Data de Emisso: ".toUpperCase(), fontTableSimple));
    pa.add(new Phrase(sdfPot.format(c.getDataContrato()).toUpperCase(), fontTableNegrito));
    PdfPCell cellSegurado51 = new PdfPCell(pa);

    pa = new Paragraph(new Phrase("Destino: ".toUpperCase(), fontTableSimple));
    pa.add(new Phrase(
            ClienteDao.paisesSelected(vb.getInfoPessoaSegurada().get(i).getPaisDestino().toUpperCase()),
            fontTableNegrito));
    pa.add(new Phrase(" N de Pessoas: ".toUpperCase(), fontTableSimple));
    pa.add(new Phrase((i + 1) + "".toUpperCase(), fontTableNegrito));
    PdfPCell cellSegurado52 = new PdfPCell(pa);

    //        PASSAPORTE   BILHETE IDENTIDADE
    pa = new Paragraph(new Phrase("Meio de Identificao: ".toUpperCase(), fontTableSimple));
    pa.add(new Phrase(
            (vb.getInfoPessoaSegurada().get(i).getTipoDoc().toUpperCase().equals("PASSAPORTE") ? "PASS"
                    : (vb.getInfoPessoaSegurada().get(i).getTipoDoc().toUpperCase().equals("BILHETE IDENTIDADE")
                            ? "BI"
                            : vb.getInfoPessoaSegurada().get(i).getTipoDoc().toUpperCase())),
            fontTableNegrito));
    pa.add(new Phrase(" N ".toUpperCase(), fontTableSimple));
    pa.add(new Phrase(vb.getInfoPessoaSegurada().get(i).getNumDoc().toUpperCase(), fontTableNegrito));
    PdfPCell cellSegurado61 = new PdfPCell(pa);

    pa = new Paragraph(new Phrase("Emitido EM: ".toUpperCase(), fontTableSimple));
    pa.add(new Phrase(vb.getInfoPessoaSegurada().get(i).getLocalEmissao().toUpperCase() + " ".toUpperCase(),
            fontTableNegrito));
    pa.add(new Phrase(" em ".toUpperCase(), fontTableSimple));
    pa.add(new Phrase(vb.getInfoPessoaSegurada().get(i).getDataEmissaoFormatada().toUpperCase(),
            fontTableNegrito));
    PdfPCell cellSegurado62 = new PdfPCell(pa);

    pa = new Paragraph(new Phrase("Outras Informaes: ".toUpperCase(), fontTableSimple));
    pa.add(new Phrase(
            ((vb.getInfoPessoaSegurada().get(i).getOutrasInformacoes() == null) ? " "
                    : vb.getInfoPessoaSegurada().get(i).getOutrasInformacoes().toUpperCase()).toUpperCase(),
            fontTableNegrito));
    PdfPCell cellSegurado72 = new PdfPCell(pa);

    cellSegurado02.setBorder(0);
    cellSegurado02.setColspan(2);
    pTablePrincipalSegurado.addCell(cellSegurado02);
    cellSegurado12.setColspan(2);
    cellSegurado12.setBorder(0);
    pTablePrincipalSegurado.addCell(cellSegurado12);
    cellSegurado21.setBorder(0);
    pTablePrincipalSegurado.addCell(cellSegurado21);
    cellSegurado22.setBorder(0);
    pTablePrincipalSegurado.addCell(cellSegurado22);
    cellSegurado31.setBorder(0);
    pTablePrincipalSegurado.addCell(cellSegurado31);
    cellSegurado32.setBorder(0);
    pTablePrincipalSegurado.addCell(cellSegurado32);
    cellSegurado41.setBorder(0);
    pTablePrincipalSegurado.addCell(cellSegurado41);
    cellSegurado42.setBorder(0);
    pTablePrincipalSegurado.addCell(cellSegurado42);
    cellSegurado51.setBorder(0);
    pTablePrincipalSegurado.addCell(cellSegurado51);
    cellSegurado52.setBorder(0);
    pTablePrincipalSegurado.addCell(cellSegurado52);
    cellSegurado61.setBorder(0);
    pTablePrincipalSegurado.addCell(cellSegurado61);
    cellSegurado62.setBorder(0);
    pTablePrincipalSegurado.addCell(cellSegurado62);
    cellSegurado72.setBorder(0);
    cellSegurado72.setColspan(2);
    pTablePrincipalSegurado.addCell(cellSegurado72);

    PdfPTable pTableOtros = new PdfPTable(1);
    pTableOtros.setWidthPercentage(92f);
    //            PdfPCell paragraphOutros = new PdfPCell(new Phrase("Outros Informaes:",fontTableSimple));
    PdfPCell paragraphNotaDebito = new PdfPCell(new Phrase(" ", fontTableNegrito));
    PdfPCell paragraphAmbitoC = new PdfPCell(
            new Phrase("mbito de Cobertura/Condies Particulares:", fontTableSimple));

    //            paragraphOutros.setBorder(0);
    //            pTableOtros.addCell(paragraphOutros);
    paragraphNotaDebito.setBorder(0);
    pTableOtros.addCell(paragraphNotaDebito);
    paragraphAmbitoC.setBorder(0);
    paragraphAmbitoC.setPaddingBottom(5f);
    pTableOtros.addCell(paragraphAmbitoC);

    PdfPTable pTableCobertura = new PdfPTable(new float[] { 70, 30 });
    pTableCobertura.setWidthPercentage(92);
    PdfPCell cellTable11 = new PdfPCell(new Phrase("COBERTURA", fontTableNegrito));
    PdfPCell cellTable12 = new PdfPCell(new Phrase("Limites de Indemnizao", fontTableNegrito));
    PdfPCell cellTable21 = new PdfPCell(
            new Phrase("Depesas mdicas, Cirgias, Farmacutica e de Hospitalizao no Estrangeiro",
                    fontTableSimpleMenor));
    PdfPCell cellTable22 = new PdfPCell(new Phrase("Euros 30.000 Franquia: 80 Euros", fontTableSimpleMenor));
    PdfPCell cellTable31 = new PdfPCell(
            new Phrase("Acompanhamento da pessoa segura hospitalizada", fontTableSimpleMenor));
    PdfPCell cellTable32 = new PdfPCell(new Phrase("Dia: Euros 70/ Mximo:Euros 700", fontTableSimpleMenor));
    PdfPCell cellTable41 = new PdfPCell(
            new Phrase("Transporte de ida e volta de familiar e estadia", fontTableSimpleMenor));
    PdfPCell cellTable42 = new PdfPCell(new Phrase("Dia: Euros 70/ Mximo: Euros 700", fontTableSimpleMenor));
    PdfPCell cellTable51 = new PdfPCell(new Phrase("Prolongamento de estadia no Hotel", fontTableSimpleMenor));
    PdfPCell cellTable52 = new PdfPCell(new Phrase("Dia: Euros 40/ Mximo: Euros 400", fontTableSimpleMenor));
    PdfPCell cellTable61 = new PdfPCell(
            new Phrase("Repatriamento / Transporte sanitrio de feridos e doentes", fontTableSimpleMenor));
    PdfPCell cellTable62 = new PdfPCell(new Phrase("Ilimitado", fontTableSimpleMenor));
    PdfPCell cellTable71 = new PdfPCell(
            new Phrase("Repatriamento / Transporte aps a morte", fontTableSimpleMenor));
    PdfPCell cellTable72 = new PdfPCell(new Phrase("Ilimitado", fontTableSimpleMenor));
    PdfPCell cellTable81 = new PdfPCell(
            new Phrase("Transporte ou Repatriamento das restantes pessoas seguras", fontTableSimpleMenor));
    PdfPCell cellTable82 = new PdfPCell(new Phrase("Ilimitado", fontTableSimpleMenor));
    PdfPCell cellTable91 = new PdfPCell(
            new Phrase("Superviso de crianas no estrangeiro", fontTableSimpleMenor));
    PdfPCell cellTable92 = new PdfPCell(new Phrase("Ilimitado", fontTableSimpleMenor));
    PdfPCell cellTable101 = new PdfPCell(
            new Phrase("Regresso antecipado por falecimento de familiar", fontTableSimpleMenor));
    PdfPCell cellTable102 = new PdfPCell(new Phrase("Ilimitado", fontTableSimpleMenor));
    PdfPCell cellTable111 = new PdfPCell(
            new Phrase("Localizao e envio de medicamentos de urgncia", fontTableSimpleMenor));
    PdfPCell cellTable112 = new PdfPCell(new Phrase("Ilimitado", fontTableSimpleMenor));
    PdfPCell cellTable121 = new PdfPCell(
            new Phrase("Transporte ou repatriamento de bagagens", fontTableSimpleMenor));
    PdfPCell cellTable122 = new PdfPCell(
            new Phrase("Limite imposto pela Empresa Transportadora", fontTableSimpleMenor));
    PdfPCell cellTable131 = new PdfPCell(
            new Phrase("Adiantamento de fundos no estrangeiro", fontTableSimpleMenor));
    PdfPCell cellTable132 = new PdfPCell(new Phrase("Mximo: Euros 700", fontTableSimpleMenor));
    PdfPCell cellTable141 = new PdfPCell(new Phrase("Aconselhamento mdico", fontTableSimpleMenor));
    PdfPCell cellTable142 = new PdfPCell(new Phrase("Ilimitado", fontTableSimpleMenor));
    PdfPCell cellTable151 = new PdfPCell(
            new Phrase("Pagamento de despesas de comunicao", fontTableSimpleMenor));
    PdfPCell cellTable152 = new PdfPCell(new Phrase("Ilimitado", fontTableSimpleMenor));
    PdfPCell cellTable161 = new PdfPCell(new Phrase("Servios informativos", fontTableSimpleMenor));
    PdfPCell cellTable162 = new PdfPCell(new Phrase("Ilimitado", fontTableSimpleMenor));

    cellTable11.setHorizontalAlignment(Element.ALIGN_CENTER);
    pTableCobertura.addCell(cellTable11);
    cellTable12.setHorizontalAlignment(Element.ALIGN_CENTER);
    pTableCobertura.addCell(cellTable12);
    pTableCobertura.addCell(cellTable21);
    cellTable22.setHorizontalAlignment(Element.ALIGN_CENTER);
    pTableCobertura.addCell(cellTable22);
    pTableCobertura.addCell(cellTable31);
    cellTable32.setHorizontalAlignment(Element.ALIGN_CENTER);
    pTableCobertura.addCell(cellTable32);
    pTableCobertura.addCell(cellTable41);
    cellTable42.setHorizontalAlignment(Element.ALIGN_CENTER);
    pTableCobertura.addCell(cellTable42);
    pTableCobertura.addCell(cellTable51);
    cellTable52.setHorizontalAlignment(Element.ALIGN_CENTER);
    pTableCobertura.addCell(cellTable52);
    pTableCobertura.addCell(cellTable61);
    cellTable62.setHorizontalAlignment(Element.ALIGN_CENTER);
    pTableCobertura.addCell(cellTable62);
    pTableCobertura.addCell(cellTable71);
    cellTable72.setHorizontalAlignment(Element.ALIGN_CENTER);
    pTableCobertura.addCell(cellTable72);
    pTableCobertura.addCell(cellTable81);
    cellTable82.setHorizontalAlignment(Element.ALIGN_CENTER);
    pTableCobertura.addCell(cellTable82);
    pTableCobertura.addCell(cellTable91);
    cellTable92.setHorizontalAlignment(Element.ALIGN_CENTER);
    pTableCobertura.addCell(cellTable92);
    pTableCobertura.addCell(cellTable101);
    cellTable102.setHorizontalAlignment(Element.ALIGN_CENTER);
    pTableCobertura.addCell(cellTable102);
    pTableCobertura.addCell(cellTable111);
    cellTable112.setHorizontalAlignment(Element.ALIGN_CENTER);
    pTableCobertura.addCell(cellTable112);
    pTableCobertura.addCell(cellTable121);
    cellTable122.setHorizontalAlignment(Element.ALIGN_CENTER);
    pTableCobertura.addCell(cellTable122);
    pTableCobertura.addCell(cellTable131);
    cellTable132.setHorizontalAlignment(Element.ALIGN_CENTER);
    pTableCobertura.addCell(cellTable132);
    pTableCobertura.addCell(cellTable141);
    cellTable142.setHorizontalAlignment(Element.ALIGN_CENTER);
    pTableCobertura.addCell(cellTable142);
    pTableCobertura.addCell(cellTable151);
    cellTable152.setHorizontalAlignment(Element.ALIGN_CENTER);
    pTableCobertura.addCell(cellTable152);
    pTableCobertura.addCell(cellTable161);
    cellTable162.setHorizontalAlignment(Element.ALIGN_CENTER);
    pTableCobertura.addCell(cellTable162);

    PdfPTable pTableCausuala = new PdfPTable(1);
    pTableCausuala.setWidthPercentage(92);
    PdfPCell paragraphParaFamilha = new PdfPCell(new Phrase(
            "1. Para Famlia e/ou Grupo, fornecer uma lista anexada com outros detalhes necessrios.",
            fontTableSimpleCausulas));
    paragraphParaFamilha.setHorizontalAlignment(Element.ALIGN_JUSTIFIED);
    paragraphParaFamilha.setPaddingBottom(7f);

    PdfPCell paragraphOPresente = new PdfPCell(new Phrase(
            "2. O presente Contrato baseia-se na proposta do Segurador e  regido pelos termos referidos nas "
                    + "Condies Gerais e Especiais e de Excluses anexadas ao presente documento.",
            fontTableSimpleCausulas));
    paragraphOPresente.setHorizontalAlignment(Element.ALIGN_JUSTIFIED);
    paragraphOPresente.setPaddingBottom(7f);

    PdfPCell paragraphOPremio = new PdfPCell(new Phrase(
            "3. O Prmio pago no  reembolsvel excepto a rejeio da aplice pela Embaixada.",
            fontTableSimpleCausulas));
    paragraphOPremio.setHorizontalAlignment(Element.ALIGN_JUSTIFIED);
    paragraphOPremio.setPaddingBottom(7f);

    PdfPCell paragraphOSeguro = new PdfPCell(new Phrase(
            "4. O Segurado declara que as informaes prestadas so verdadeiras e completas e declara ter "
                    + "lido as condies Gerais e Especiais e as Excluses e concordado com as disposies nelas contidas.",
            fontTableSimpleCausulas));
    paragraphOSeguro.setHorizontalAlignment(Element.ALIGN_JUSTIFIED);
    paragraphOSeguro.setPaddingBottom(7f);

    PdfPCell paragraphSolitacao = new PdfPCell(new Phrase(
            "5. Solicitao de reembolso deve ser feita por carta dirigida a Directora Geral da NICON Seguros STP, "
                    + "3 dias antes da data de inicio do seguro, e deve ser acompanhada da aplice original e da fotocpia da carta de rejeio da Embaixada.",
            fontTableSimpleCausulas));
    paragraphSolitacao.setHorizontalAlignment(Element.ALIGN_JUSTIFIED);
    //            paragraphSolitacao.setPaddingBottom(7f);

    paragraphParaFamilha.setBorder(0);
    pTableCausuala.addCell(paragraphParaFamilha);
    paragraphOPresente.setBorder(0);
    pTableCausuala.addCell(paragraphOPresente);
    paragraphOPremio.setBorder(0);
    pTableCausuala.addCell(paragraphOPremio);
    paragraphOSeguro.setBorder(0);
    pTableCausuala.addCell(paragraphOSeguro);
    paragraphSolitacao.setBorder(0);
    pTableCausuala.addCell(paragraphSolitacao);

    PdfPTable pTableNota = new PdfPTable(1);
    pTableNota.setWidthPercentage(92);
    PdfPCell paragraphNota = new PdfPCell(new Phrase(
            " condio indispensvel para usufruir das garantias deste contrato que o Subscritor ou Pessoas Seguradas contactem de imediato:",
            fontTableItalico));
    paragraphNota.setBorder(0);
    pTableNota.addCell(paragraphNota);

    PdfPTable pTableRotape = new PdfPTable(1);
    pTableRotape.setWidthPercentage(92);
    Paragraph p = new Paragraph();
    Image imageRotape = Image.getInstance(ConfigDoc.Fontes.getDiretorio() + "/europ-assistance2.jpg");
    imageRotape.scaleToFit(90, 40);
    p.add(new Chunk(imageRotape, 1, 1, true));

    Phrase phraseRodape = new Phrase(
            ", COMPAINHA PORTUGUESA DE SEGUROS DE ASSISTNCIA, Tel. 351 21 384 80 97 Fax: 351 21 386 03 08 www.europ-assitance.pt",
            fontTableNormal);
    p.add(phraseRodape);

    PdfPCell cellRodape = new PdfPCell(p);
    cellRodape.setPaddingTop(10f);
    cellRodape.setBorder(0);
    pTableRotape.addCell(cellRodape);

    PdfPTable pTableAsinatura = new PdfPTable(2);
    pTableAsinatura.setWidthPercentage(92);
    PdfPCell cellSeguradora = new PdfPCell(new Phrase("A Seguradora", fontTableSimpleCausulas));
    cellSeguradora.setBorder(0);
    cellSeguradora.setPaddingTop(25);
    cellSeguradora.setHorizontalAlignment(Element.ALIGN_CENTER);

    PdfPCell cellSegurado = new PdfPCell(new Phrase("O Segurado", fontTableSimpleCausulas));
    cellSegurado.setPaddingTop(25);
    cellSegurado.setBorder(0);
    cellSegurado.setHorizontalAlignment(Element.ALIGN_CENTER);

    PdfPCell cellSeguradoValor = new PdfPCell(
            new Phrase("____________________________", fontTableSimpleCausulas));
    cellSeguradoValor.setBorder(0);
    cellSeguradoValor.setHorizontalAlignment(Element.ALIGN_CENTER);

    pTableAsinatura.addCell(cellSeguradora);
    pTableAsinatura.addCell(cellSegurado);
    pTableAsinatura.addCell(cellSeguradoValor);
    pTableAsinatura.addCell(cellSeguradoValor);

    //        documento.open();
    documento.add(pTableEmpresaPricipal);
    documento.add(pTableTitulo);
    documento.add(pTableNull);
    documento.add(pTablePrincipalSegurado);
    documento.add(pTableOtros);
    //            documento.add(pTableNull);
    documento.add(pTableCobertura);
    documento.add(pTableNull);
    documento.add(pTableCausuala);
    documento.add(pTableNull);
    documento.add(pTableNota);
    documento.add(pTableRotape);
    documento.add(pTableNull);
    documento.add(pTableAsinatura);

    if ((i + 1) != vb.getInfoPessoaSegurada().size())
        documento.newPage();

    //PrintPdf printPdf = new PrintPdf("Cobertura Viagem.pdf", "Cobertura Viagem.pdf", 0, 595f,842f,"Enviar Para o OneNote 2013",1);
    //            PrintPdf printPdf = new PrintPdf("Cobertura Viagem.pdf", "Cobertura Viagem.pdf", 0, 595f,842f,"Hewlett-Packard HP LaserJet P2035",1);

    //            printPdf.print();
}