Example usage for com.itextpdf.text Document newPage

List of usage examples for com.itextpdf.text Document newPage

Introduction

In this page you can find the example usage for com.itextpdf.text Document newPage.

Prototype


public boolean newPage() 

Source Link

Document

Signals that an new page has to be started.

Usage

From source file:Evento.action.ZapisDoPdfAction.java

License:Apache License

public void createPDF(String[] imgURL, String place, String album) throws DocumentException {
    Document document = new Document();
    Rectangle pageSize = new Rectangle(szerokosc, wysokosc);
    document.setPageSize(pageSize);/* www  .  j av a2  s.c  om*/

    try {

        PdfWriter.getInstance(document, new FileOutputStream(new File(place, "nowy.pdf")));
        document.open();

        Image tlo = Image.getInstance(new URL(zdjecieTla));
        tlo.setAbsolutePosition(0f, 0f);
        document.add(tlo);
        Paragraph preface = new Paragraph(album,
                new Font(FontFamily.HELVETICA, 72, Font.BOLDITALIC, new BaseColor(255, 255, 255)));
        preface.setAlignment(Element.ALIGN_CENTER);
        document.add(preface);
        document.newPage();
        for (int i = 0; i < imgURL.length; i++) {

            Image tlo2 = Image.getInstance(new URL(zdjecieTla));
            tlo2.setAbsolutePosition(0f, 0f);
            document.add(tlo2);
            Image image2 = Image.getInstance(new URL(imgURL[i]));
            if (szerokosc * 1.5f <= image2.getWidth() || wysokosc * 1.5f <= image2.getHeight()) {
                image2.scaleAbsolute(image2.getWidth() * 0.25f, image2.getHeight() * 0.25f);
                image2.setAbsolutePosition(szerokosc / 2f - (image2.getWidth() * 0.25f) / 2,
                        wysokosc / 2 - (image2.getHeight() * 0.25f) / 2);
            } else if ((szerokosc * 0.8f <= image2.getWidth() || wysokosc * 0.8f <= image2.getHeight())
                    && (szerokosc * 1.2f >= image2.getWidth() || wysokosc * 1.2f >= image2.getHeight())) {
                image2.scaleAbsolute(image2.getWidth() * 0.8f, image2.getHeight() * 0.8f);
                image2.setAbsolutePosition(szerokosc / 2f - (image2.getWidth() * 0.8f) / 2,
                        wysokosc / 2 - (image2.getHeight() * 0.8f) / 2);
            } else if ((szerokosc * 0.4f >= image2.getWidth() || wysokosc * 0.4f >= image2.getHeight())
                    && (szerokosc * 0.7f <= image2.getWidth() || wysokosc * 0.7f <= image2.getHeight())) {
                image2.scaleAbsolute(image2.getWidth() * 1.4f, image2.getHeight() * 1.4f);
                image2.setAbsolutePosition(szerokosc / 2f - (image2.getWidth() * 1.4f) / 2,
                        wysokosc / 2 - (image2.getHeight() * 1.4f) / 2);
            } else {
                image2.scaleAbsolute(image2.getWidth(), image2.getHeight());
                image2.setAbsolutePosition(szerokosc / 2f - (image2.getWidth()) / 2,
                        wysokosc / 2 - (image2.getHeight()) / 2);
            }
            for (int k = 0; k <= 1000; k++)
                ;
            for (int j = 0; j <= 1000; j++)
                ;
            document.add(image2);
            document.newPage();
        }

        document.close();
    } catch (Exception e) {
        e.printStackTrace();
    }
}

From source file:Excel.pdfsJavaGenerador.java

public void run() {
    Document documento = new Document();
    documento.setPageSize(PageSize.A4.rotate());
    int i = 1;/*ww w.ja  va 2  s .c  o m*/
    String arch = periodo + "_Iva Ventas.pdf";

    File fich = new File(arch);

    FileOutputStream fichero;
    try {
        pdfsJavaGenerador pdf;

        ArrayList listado = new ArrayList();
        String sql = "select * from ivaventas where periodo='" + periodo + "' order by numero";
        Transaccionable tra = new ConeccionLocal();
        ResultSet rs = tra.leerConjuntoDeRegistros(sql);
        while (rs.next()) {
            pdf = new pdfsJavaGenerador();
            pdf.setComprobante(rs.getString("comprobante"));
            pdf.setFecha(rs.getString("fecha"));
            pdf.setNumeroFactura(rs.getString("numero"));
            pdf.setRazonSocial(rs.getString("cliente"));
            pdf.setCondicionIva(rs.getString("condicion"));
            pdf.setCuit(rs.getString("cuit"));
            pdf.setNeto(rs.getString("neto"));
            pdf.setIva(rs.getString("iva"));
            pdf.setTotal(rs.getString("total"));
            listado.add(pdf);
        }
        rs.close();
        Integer totalItems = listado.size();
        Integer totalPaginas = totalItems / 46;
        Integer contadorPaginas = 1;
        totalPaginas = totalPaginas + 1;
        System.out.println(" items " + totalItems + " paginas " + totalPaginas);
        fichero = new FileOutputStream(arch);
        PdfWriter writer = PdfWriter.getInstance(documento, fichero);

        documento.open();
        //writer.addPageDictEntry(PdfName.ROTATE,PdfPage.SEASCAPE);
        writer.addPageDictEntry(PdfName.ROTATE, null);
        PdfContentByte cb = writer.getDirectContent();

        BaseFont bf = BaseFont.createFont(BaseFont.COURIER_BOLD, BaseFont.CP1252, BaseFont.NOT_EMBEDDED);
        cb.setFontAndSize(bf, 12);
        cb.beginText();
        //cb.setTextMatrix(250,820);
        //cb.showText("Subdiario de IVA Ventas");
        cb.setFontAndSize(bf, 10);

        cb.setTextMatrix(20, 480);
        cb.showText("Periodo " + periodo);
        //cb.setTextMatrix(750,550);
        //cb.showText("Hoja "+contadorPaginas+" de "+totalPaginas);

        int renglon = 460;
        String vencimiento;
        String descripcion;
        String monto;
        String recargo;
        String total;
        String totalFinal;
        Double tot = 0.00;
        String razonSocial;
        int itt = 0;
        //aca empieza la iteracion

        //encabezados
        bf = BaseFont.createFont(BaseFont.COURIER_BOLD, BaseFont.CP1252, BaseFont.NOT_EMBEDDED);
        cb.setFontAndSize(bf, 8);
        cb.setTextMatrix(20, renglon);
        cb.showText("Cbte");
        cb.setTextMatrix(50, renglon);
        cb.showText("Fecha");
        cb.setTextMatrix(90, renglon);
        cb.showText("Nro Factura");
        cb.setTextMatrix(150, renglon);
        cb.showText("Cliente");
        cb.setTextMatrix(500, renglon);
        //tot=saldo.getCantidad() * saldo.getPrecioUnitario();
        cb.showText("Cond");
        cb.setTextMatrix(540, renglon);
        cb.showText("C.U.I.T.");
        cb.setTextMatrix(610, renglon);
        cb.showText("Neto");
        cb.setTextMatrix(660, renglon);
        cb.showText("I.V.A.");
        cb.setTextMatrix(700, renglon);
        cb.showText("Imp. Int.");
        cb.setTextMatrix(760, renglon);
        cb.showText("Total");
        renglon = renglon - 20;

        //fin encabezados
        bf = BaseFont.createFont(BaseFont.COURIER, BaseFont.CP1252, BaseFont.NOT_EMBEDDED);
        cb.setFontAndSize(bf, 6);
        Iterator itl = listado.listIterator();
        //vencimiento="Esta cotizacin tendr vigencia 30 das ";
        Double montoCIva = 0.00;
        Double descuento = 0.00;
        Double descUnitario = 0.00;
        Double descTotal = 0.00;
        Double montoCIvaTotal = 0.00;
        Double descuentoTotal = 0.00;
        Double descUnitarioTotal = 0.00;
        Double descTotalTotal = 0.00;
        String descripcionArt = null;
        while (itl.hasNext()) {
            pdf = (pdfsJavaGenerador) itl.next();

            //vencimiento=saldo.getVencimientoString();
            /*
            descripcion="Numero Resumen de cta ";
            montoCIva=saldo.getPrecioUnitario() * 1.21;
            monto=Numeros.ConvertirNumero(montoCIva);
            recargo="10%";
            total="nada";
            */

            //recargo=String.valueOf(saldo.getRecargo());
            //tot=tot + saldo.getTotal();
            //total=String.valueOf(saldo.getTotal());

            cb.setTextMatrix(20, renglon);
            cb.showText(pdf.getComprobante());
            cb.setTextMatrix(45, renglon);
            cb.showText(pdf.getFecha());
            cb.setTextMatrix(90, renglon);
            cb.showText(pdf.getNumeroFactura());
            cb.setTextMatrix(150, renglon);

            razonSocial = pdf.getRazonSocial();

            cb.showText(razonSocial);
            cb.setTextMatrix(500, renglon);

            cb.showText(pdf.getCondicionIva());
            cb.setTextMatrix(540, renglon);
            cb.showText(pdf.getCuit());
            cb.setTextMatrix(600, renglon);

            if (pdf.getComprobante().equals("N.C.")) {
                String neto = pdf.getNeto();
                String iva = pdf.getIva();
                String totalP = pdf.getTotal();
                pdf.setNeto("-" + neto.trim());
                pdf.setIva("-" + iva.trim());
                pdf.setTotal("-" + totalP.trim());
            }
            montoCIva = montoCIva + Numeros.ConvertirStringADouble(pdf.getNeto());
            descuento = descuento + Numeros.ConvertirStringADouble(pdf.getIva());
            descTotal = descTotal + Numeros.ConvertirStringADouble(pdf.getTotal());

            cb.showText(pdf.getNeto());
            cb.setTextMatrix(650, renglon);

            cb.showText(pdf.getIva());
            cb.setTextMatrix(710, renglon);
            cb.showText("0.00");
            cb.setTextMatrix(750, renglon);

            cb.showText(pdf.getTotal());

            //descuento=descuento+saldo.getDescuento();
            renglon = renglon - 10;
            if (renglon < 30) {
                bf = BaseFont.createFont(BaseFont.COURIER_BOLD, BaseFont.CP1252, BaseFont.NOT_EMBEDDED);
                cb.setFontAndSize(bf, 7);
                cb.setTextMatrix(550, renglon);
                cb.showText("Subtotal:");
                cb.setTextMatrix(600, renglon);
                cb.showText(Numeros.ConvetirNumeroDosDigitos(montoCIva));
                cb.setTextMatrix(650, renglon);
                cb.showText(Numeros.ConvetirNumeroDosDigitos(descuento));
                cb.setTextMatrix(710, renglon);
                cb.showText("0.00");
                cb.setTextMatrix(750, renglon);
                cb.showText(Numeros.ConvetirNumeroDosDigitos(descTotal));
                montoCIvaTotal = montoCIvaTotal + montoCIva;
                descuentoTotal = descuentoTotal + descuento;

                descTotalTotal = descTotalTotal + descTotal;
                descuento = 0.00;
                descTotal = 0.00;
                montoCIva = 0.00;
                renglon = 460;
                cb.endText();
                documento.newPage();
                documento.setPageSize(PageSize.A4.rotate());
                cb.beginText();

                contadorPaginas++;
                cb.setFontAndSize(bf, 12);
                //cb.setTextMatrix(250,820);
                //cb.showText("Subdiario de IVA Ventas");
                cb.setFontAndSize(bf, 10);
                cb.setTextMatrix(20, 480);
                cb.showText("Periodo " + periodo);
                //cb.setTextMatrix(750,550);
                //cb.showText("Hoja "+contadorPaginas+" de "+totalPaginas);

                //aca empieza la iteracion

                //encabezados
                bf = BaseFont.createFont(BaseFont.COURIER_BOLD, BaseFont.CP1252, BaseFont.NOT_EMBEDDED);
                cb.setFontAndSize(bf, 8);
                cb.setTextMatrix(20, renglon);
                cb.showText("Cbte");
                cb.setTextMatrix(50, renglon);
                cb.showText("Fecha");
                cb.setTextMatrix(90, renglon);
                cb.showText("Nro Factura");
                cb.setTextMatrix(150, renglon);
                cb.showText("Cliente");
                cb.setTextMatrix(500, renglon);
                //tot=saldo.getCantidad() * saldo.getPrecioUnitario();
                cb.showText("Cond");
                cb.setTextMatrix(540, renglon);
                cb.showText("C.U.I.T.");
                cb.setTextMatrix(610, renglon);
                cb.showText("Neto");
                cb.setTextMatrix(660, renglon);
                cb.showText("I.V.A.");
                cb.setTextMatrix(700, renglon);
                cb.showText("Imp. Int.");
                cb.setTextMatrix(760, renglon);
                cb.showText("Total");
                renglon = renglon - 20;

                //fin encabezados
                bf = BaseFont.createFont(BaseFont.COURIER, BaseFont.CP1252, BaseFont.NOT_EMBEDDED);
                cb.setFontAndSize(bf, 6);
            }
        }

        bf = BaseFont.createFont(BaseFont.COURIER_BOLD, BaseFont.CP1252, BaseFont.NOT_EMBEDDED);
        cb.setFontAndSize(bf, 7);
        cb.setTextMatrix(540, renglon);
        cb.showText("Subtotal:");
        cb.setTextMatrix(600, renglon);
        cb.showText(Numeros.ConvetirNumeroDosDigitos(montoCIva));
        cb.setTextMatrix(650, renglon);
        cb.showText(Numeros.ConvetirNumeroDosDigitos(descuento));
        cb.setTextMatrix(710, renglon);
        cb.showText("0.00");
        cb.setTextMatrix(750, renglon);
        cb.showText(Numeros.ConvetirNumeroDosDigitos(descTotal));
        renglon = renglon - 10;

        montoCIvaTotal = montoCIvaTotal + montoCIva;
        descuentoTotal = descuentoTotal + descuento;

        descTotalTotal = descTotalTotal + descTotal;
        cb.setTextMatrix(540, renglon);
        cb.showText("Total:");
        cb.setTextMatrix(600, renglon);
        cb.showText(Numeros.ConvetirNumeroDosDigitos(montoCIvaTotal));
        cb.setTextMatrix(650, renglon);
        cb.showText(Numeros.ConvetirNumeroDosDigitos(descuentoTotal));
        cb.setTextMatrix(710, renglon);
        cb.showText("0.00");
        cb.setTextMatrix(750, renglon);
        cb.showText(Numeros.ConvetirNumeroDosDigitos(descTotalTotal));

        descuento = 0.00;
        descTotal = 0.00;
        montoCIva = 0.00;

        cb.endText();
        documento.close();

        File f = new File(arch);
        if (f.exists()) {

            Runtime.getRuntime().exec("rundll32 url.dll,FileProtocolHandler " + arch);
        }
        int confirmacion = 0;
        /*
        if(doc.getArchivo().isEmpty()){
                
        }else{
        confirmacion=JOptionPane.showConfirmDialog(null, "DESEA NOTIFICAR POR MAIL?");
        if(confirmacion==0){
        //JOptionPane.showMessageDialog(null,"acepto");
                
        }
        }
            */
        System.out.println("eligio " + confirmacion);
    } catch (FileNotFoundException ex) {
        Logger.getLogger(pdfsJavaGenerador.class.getName()).log(Level.SEVERE, null, ex);

    } catch (DocumentException ex) {
        Logger.getLogger(pdfsJavaGenerador.class.getName()).log(Level.SEVERE, null, ex);
    } catch (IOException ex) {
        Logger.getLogger(pdfsJavaGenerador.class.getName()).log(Level.SEVERE, null, ex);
    } catch (SQLException ex) {
        Logger.getLogger(pdfsJavaGenerador.class.getName()).log(Level.SEVERE, null, ex);
    }

}

From source file:Export.CertificadoViatura.java

public String criarDoc(String numApolice, String numCliente, Contrato c, VeiculoBean vf, String user,
        String moeda, String arquivo) {
    SimpleDateFormat sdf = new SimpleDateFormat("dd-MM-yyyy HH'.'mm'.'ss");
    SimpleDateFormat sdfPT = new SimpleDateFormat("dd/MM/yyyy");

    try {/*www.  j  a  v  a 2  s.c om*/
        Document documento = new Document();
        documento.setPageSize(PageSize.A4);
        documento.setMargins(2f, 2f, 35f, 5f);

        //            File ff= new File("Documentos\\"+user+"\\Seguro Automovel\\");
        //            ff.mkdirs();
        //            ff =new File(ff.getAbsoluteFile()+"\\"+"Certificado Seguro Automovel "+sdf.format(new Date())+".pdf");
        File ff = new File(arquivo + "/" + user + "/Seguro Automovel/");
        ff.mkdirs();
        String Ddata = sdf.format(new Date());
        ff = new File(ff.getAbsoluteFile() + "/" + "Certificado Seguro Automovel " + Ddata + ".pdf");

        reString = "../Documentos/" + user + "/Seguro Automovel/" + "Certificado Seguro Automovel " + 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);
        }

        //            MyFooter event = new MyFooter();
        //            writer.setPageEvent(event);

        Font fontCabecalhoN = FontFactory.getFont(Fontes.FONTB, BaseFont.WINANSI, BaseFont.EMBEDDED, 10.5f);
        Font fontCorpo = FontFactory.getFont(Fontes.FONT, BaseFont.WINANSI, BaseFont.EMBEDDED, 8f);
        Font fontCorpoP = FontFactory.getFont(Fontes.FONT, BaseFont.WINANSI, BaseFont.EMBEDDED, 7f);
        Font fontCorpoN = FontFactory.getFont(Fontes.FONTB, BaseFont.WINANSI, BaseFont.EMBEDDED, 7.5f);
        Font fontCorpoNG = FontFactory.getFont(Fontes.FONTB, BaseFont.WINANSI, BaseFont.EMBEDDED, 11f);
        Font fontCabecalhoNG = FontFactory.getFont(Fontes.FONTB, BaseFont.WINANSI, BaseFont.EMBEDDED, 16f,
                Font.UNDERLINE);
        Font fontUK = FontFactory.getFont(Fontes.FONT, BaseFont.WINANSI, BaseFont.EMBEDDED, 5f, Font.ITALIC);

        documento.open();
        int total = vf.getInfo().size();
        int i = 0;
        for (Veiculo v : vf.getInfo()) {
            i++;
            PdfPTable pTableEmpresaPricipal = new PdfPTable(new float[] { 25f, 75f });
            pTableEmpresaPricipal.setWidthPercentage(93f);
            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(190f, 100f);

            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 pTableTitulo = new PdfPTable(1);

            Paragraph PTitulo = new Paragraph(new Phrase("", fontCorpo));
            Phrase pTitulo = new Phrase("Certificado Seguro de automvel".toUpperCase(), fontCorpoNG);
            Phrase pTituloUK = new Phrase("\nCertificate of motor insurance".toUpperCase(), fontUK);
            PTitulo.add(pTitulo);
            PTitulo.add(pTituloUK);

            PdfPCell cellTitulo = new PdfPCell(PTitulo);
            cellTitulo.setBorder(0);
            cellTitulo.setHorizontalAlignment(Element.ALIGN_CENTER);
            pTableTitulo.addCell(cellTitulo);

            PdfPTable pTableDetalhes = new PdfPTable(new float[] { 55, 45 });
            pTableDetalhes.setWidthPercentage(93f);

            Paragraph pNunCetificado = new Paragraph(new Phrase("", fontCorpo));
            pNunCetificado.add(new Phrase("1. Certificado: ", fontCorpo));
            pNunCetificado.add(new Phrase(v.getCertificado() == null || v.getCertificado().equals("") ? ""
                    : v.getCertificado().toUpperCase(), fontCorpoN));
            pNunCetificado.add(new Phrase("\n1. Certificate NO".toUpperCase(), fontUK));
            pNunCetificado.setPaddingTop(0f);

            ClienteI ci = new ClienteI(numCliente);
            Paragraph pNomeSegurado = new Paragraph(new Phrase("", fontCorpo));
            pNomeSegurado.add(new Phrase("3. Segurado: ", fontCorpo));
            pNomeSegurado.add(new Phrase(ci.getNOME_().toUpperCase(), fontCorpoN));
            pNomeSegurado.add(new Phrase("\n3. Insured".toUpperCase(), fontUK));
            pNomeSegurado.setPaddingTop(0f);

            Paragraph pMarca = new Paragraph(new Phrase("", fontCorpo));
            pMarca.add(new Phrase("5. Marca do Veiculo: ", fontCorpo));
            pMarca.add(new Phrase((v.getMarca() == null) ? " " : v.getMarca().toUpperCase(), fontCorpoN));
            pMarca.add(new Phrase("\n5. vehicle mark".toUpperCase(), fontUK));
            //                pMarca.setPaddingTop(1f);

            Paragraph pModelo = new Paragraph(new Phrase("", fontCorpo));
            pModelo.add(new Phrase("7. Modelo do Veiculo: ", fontCorpo));
            pModelo.add(new Phrase((v.getModelo() == null) ? " " : v.getModelo().toUpperCase(), fontCorpoN));
            pModelo.add(new Phrase("\n7. Model Vehicle".toUpperCase(), fontUK));
            pModelo.setPaddingTop(0f);

            Paragraph pPeriodo = new Paragraph(new Phrase("", fontCorpo));
            pPeriodo.add(new Phrase("9. Perodo de Seguro - De: ", fontCorpo));
            pPeriodo.add(new Phrase(
                    (sdfPT.format(c.getDataInicio()) + "  " + sdfPT.format(c.getDataFim())).toUpperCase(),
                    fontCorpoN));
            pPeriodo.add(new Phrase("\n9. period of insurance - from  to".toUpperCase(), fontUK));
            pPeriodo.setPaddingTop(0f);

            Paragraph pCategoria = new Paragraph(new Phrase("", fontCorpo));
            pCategoria.add(new Phrase("11. Categoria/Uso do Veculo: ", fontCorpo));
            pCategoria.add(new Phrase(" ", fontCorpoN));
            pCategoria.add(new Phrase("\n11. category/use of vehicle".toUpperCase(), fontUK));
            pCategoria.setPaddingTop(0f);

            PdfPCell cellDetalhesRi = new PdfPCell();
            cellDetalhesRi.addElement(pNunCetificado);
            cellDetalhesRi.addElement(pNomeSegurado);
            cellDetalhesRi.addElement(pMarca);
            cellDetalhesRi.addElement(pModelo);
            cellDetalhesRi.addElement(pPeriodo);
            cellDetalhesRi.addElement(pCategoria);

            Paragraph pNumApolice = new Paragraph(new Phrase("", fontCorpo));
            pNumApolice.add(new Phrase("2. Aplice N ", fontCorpo));
            pNumApolice.add(new Phrase(numApolice, fontCorpoN));
            pNumApolice.add(new Phrase("\n2. policy no".toUpperCase(), fontUK));
            pNumApolice.setPaddingTop(0f);

            Paragraph pOcupacaoSegurado = new Paragraph(new Phrase("", fontCorpo));
            pOcupacaoSegurado.add(new Phrase("4. Ocupao do Seguros: ", fontCorpo));
            pOcupacaoSegurado.add(new Phrase(ci.getPROFISSAO_().toUpperCase(), fontCorpoN));
            pOcupacaoSegurado.add(new Phrase("\n4. insured's occupation".toUpperCase(), fontUK));
            pOcupacaoSegurado.setPaddingTop(0f);

            Paragraph pNumChassi = new Paragraph(new Phrase("", fontCorpo));
            pNumChassi.add(new Phrase("6. N de Chassi/Motor: ", fontCorpo));
            pNumChassi.add(new Phrase(v.getChassi()
                    + ((v.getNumMotor() == null || v.getNumMotor().isEmpty()) ? " " : "/" + v.getNumMotor()),
                    fontCorpoN));
            pNumChassi.add(new Phrase("\n6 EnGINE", fontUK));
            pNumChassi.setPaddingTop(0f);

            Paragraph pDataFabrico = new Paragraph(new Phrase("", fontCorpo));
            pDataFabrico.add(new Phrase("8. Data de Fabrico: ", fontCorpo));
            pDataFabrico.add(new Phrase(((v.getAnoFabrico() == null) ? " " : v.getAnoFabrico()), fontCorpo));
            pDataFabrico.add(new Phrase("\n8. Date of manofacturing", fontUK));
            pDataFabrico.setPaddingTop(0f);

            Paragraph pTipoCobertura = new Paragraph(new Phrase("", fontCorpo));
            pTipoCobertura.add(new Phrase("10. Tipo de Cobertura: ", fontCorpo));
            pTipoCobertura
                    .add(new Phrase(
                            ((v.getTipoCobertura() != null) ? (vf.getVeiculo().getTipoCobertura().equals("41")
                                    ? "Contra Terceiros".toUpperCase()
                                    : (vf.getVeiculo().getTipoCobertura().equals("42")
                                            ? "CONTRA Todos os riscos".toUpperCase()
                                            : (vf.getVeiculo().getTipoCobertura().equals("43")
                                                    ? "Compreensivo limitado".toUpperCase()
                                                    : vf.getVeiculo().getTipoCobertura())))
                                    : " "),
                            fontCorpoN));
            pTipoCobertura.add(new Phrase("\n10. Tipo of Cover".toUpperCase(), fontUK));
            pTipoCobertura.setPaddingTop(0f);

            PdfPCell cellDetalhesLe = new PdfPCell();
            cellDetalhesLe.addElement(pNumApolice);
            cellDetalhesLe.addElement(pOcupacaoSegurado);
            cellDetalhesLe.addElement(pNumChassi);
            cellDetalhesLe.addElement(pDataFabrico);
            cellDetalhesLe.addElement(pTipoCobertura);

            pTableDetalhes.addCell(cellDetalhesRi);
            pTableDetalhes.addCell(cellDetalhesLe);
            String f = "";

            Paragraph para = new Paragraph(new Phrase("", fontCorpo));
            para.add(new Phrase("12. Pessoas ou Classe de Pessoas Habilitadas Para Conduzir", fontCorpoN));
            para.add(new Phrase("\n12. Persons or Class of Persons Entitled to Drive", fontUK));
            pTableDetalhes.addCell(new PdfPCell(para));

            para = new Paragraph(new Phrase("", fontCorpo));
            para.add(new Phrase("14. Categorias/Uso de Veculos", fontCorpoN));
            para.add(new Phrase("\n14. Categories / Use of Vehicles", fontUK));
            pTableDetalhes.addCell(new PdfPCell(para));

            Paragraph p11 = new Paragraph(new Phrase("", fontCorpo));
            p11.add(new Phrase(
                    "Qualquer pessoa que conduza sob a ordem do detentor da aplice ou com a sua permisso:",
                    fontCorpo));
            p11.add(new Phrase("\nAny person who is driving on the policy holder's or with his permission",
                    fontUK));
            p11.setPaddingTop(0f);

            Paragraph p12 = new Paragraph(new Phrase("", fontCorpo));
            p12.add(new Phrase(
                    "Desde que o/a condutor/a esteja habilitado/a para conduzir de acordo com a licena/normas que regulam "
                            + "a conduo de veculos a motor ou instrues para conduo lhe tenha sido passada e no esteja impedido de conduzir por"
                            + " ordem do tribunal ou por alguma outra razo.",
                    fontCorpo));
            p12.add(new Phrase(
                    "\nProvided that the person diving is permitted in accodance with the licensing or outher laws or regulations to dive the"
                            + "motor vehicles or has been premitted and is not disiqualified by order of a court of law or reason of any enactment or regulation in that behalf from diving such motor vehice",
                    fontUK));
            p12.setPaddingTop(0f);

            Paragraph p13 = new Paragraph(new Phrase("", fontCorpo));
            p13.add(new Phrase("13. Limite para uso:", fontCorpoN));
            p13.add(new Phrase("\n13. Limitation as to use", fontUK));
            p13.setPaddingTop(0f);

            Paragraph p14 = new Paragraph(new Phrase("", fontCorpo));
            p14.add(new Phrase("  - Usado apenas como descrito na categoria aqui indicada.", fontCorpo));
            p14.add(new Phrase("\n  - Used only as prescribed under the applicable category stated there in.",
                    fontUK));
            p14.setPaddingTop(0f);

            Paragraph p15 = new Paragraph(new Phrase("", fontCorpo));
            p15.add(new Phrase(
                    "  - Em todo caso, a aplice no cobre corridas, prova de segurana teste de velocidade, nem para qualquer outro propsito relacionado com a venda do automvel.",
                    fontCorpo));
            p15.add(new Phrase(
                    "\n  - In all cases, the policy does not cover racing, pace-making, reliability trial, speed testing, nor use for any purpose in connection with the trade",
                    fontUK));
            p15.setPaddingTop(0f);

            cellDetalhesRi = new PdfPCell();
            cellDetalhesRi.addElement(p11);
            cellDetalhesRi.addElement(p12);
            cellDetalhesRi.addElement(p13);
            cellDetalhesRi.addElement(p14);
            cellDetalhesRi.addElement(p15);

            Paragraph p21 = new Paragraph(new Phrase("", fontCorpo));
            p21.add(new Phrase("CATEGORIA 1 ", fontCorpoN));
            p21.add(new Paragraph(
                    "- Veculos usados para actividade social, domstica e de lazer e do segurado incluindo uso comercial.",
                    fontCorpo));
            p21.add(new Phrase(
                    "Vehicles used for social, domestic and pleasure including business use of the insured.",
                    fontUK));
            p21.setPaddingTop(0f);

            Paragraph p22 = new Paragraph(new Phrase("", fontCorpo));
            p22.add(new Phrase("CATEGORIA 2 ", fontCorpoN));
            p22.add(new Paragraph("- Veculo pertence ao segurado e usado no transporte de mercadorias.",
                    fontCorpo));
            p22.add(new Phrase("Vehicle used for transportation of good and belonging to the insured", fontUK));
            p22.setPaddingTop(0f);

            Paragraph p23 = new Paragraph(new Phrase("", fontCorpo));
            p23.add(new Phrase("CATEGORIA 3 ", fontCorpoN));
            p23.add(new Paragraph(
                    "- Veculos alugados utilizados no transporte Comercial de mercadorias pertencente  terceiros.",
                    fontCorpo));
            p23.add(new Phrase(
                    "Vehicles used for commercial transportation of good belonging to third parteis fare paying.",
                    fontUK));
            p23.setPaddingTop(0f);

            Paragraph p24 = new Paragraph(new Phrase("", fontCorpo));
            p24.add(new Phrase("CATEGORIA 5 ", fontCorpoN));
            p24.add(new Paragraph(
                    "- Veculos a motor com duas ou trs rodas para o transporte pblico de passageiro (mediante pagamento de bilhetes).",
                    fontCorpo));
            p24.add(new Phrase("Motor vehicles with two or three wheels for carrying fare paying pessengers.",
                    fontUK));
            p24.setPaddingTop(0f);

            Paragraph p25 = new Paragraph(new Phrase("", fontCorpo));
            p25.add(new Phrase("CATEGORIA 6-10 ", fontCorpoN));
            p25.add(new Paragraph(
                    "- Veculos para fins especiais: Garagem (6), Escola de Conduo (7), Para Aluguer sem motorista (8), Veculo Pesado (9) e Ambulncia, Transporte de distribuio de mercadoria, etc. (10).",
                    fontCorpo));
            p25.add(new Phrase(
                    "To special purposes vehicles: Garage (6) Driving School (7) Haring without driver ( 8) , Heavy trucks ( 9) and ambulance, refuse disposal vans etc. ( 10).",
                    fontUK));
            p25.setPaddingTop(0f);

            cellDetalhesLe = new PdfPCell();
            cellDetalhesLe.addElement(p21);
            cellDetalhesLe.addElement(p22);
            cellDetalhesLe.addElement(p23);
            cellDetalhesLe.addElement(p24);
            cellDetalhesLe.addElement(p25);

            pTableDetalhes.addCell(cellDetalhesRi);
            pTableDetalhes.addCell(cellDetalhesLe);

            PdfPTable pTableArtigo = new PdfPTable(1);
            pTableArtigo.setWidthPercentage(93f);
            Paragraph pArtigoCetificado = new Paragraph(new Phrase("", fontCorpo));
            pArtigoCetificado.add(new Phrase(
                    "O Contrato de seguro cessa, nos termos da legislao em vigor, os efeitos s 24 horas do dia da alienao do veculo.",
                    fontCorpo));
            pArtigoCetificado.add(new Phrase(
                    "\nThe insurance contract ceases, according to law in force, from its effects from 24 hours from the date of alienation of the vehicle.",
                    fontUK));
            PdfPCell cellArtigoCetificado = new PdfPCell(pArtigoCetificado);
            cellArtigoCetificado.setBorder(0);

            Paragraph pLeis = new Paragraph(new Phrase("", fontCorpo));
            pLeis.add(new Phrase(
                    "Este certificado foi emitido em conformidade com os Artigos 1 a 36, lei n 30/2000 da Repblica Democrtica de So Tom e Prncipe e que institui a existncia de uma cobertura pelo seguro",
                    fontCorpo));
            pLeis.add(new Phrase(
                    "\nThis certificate is issurd in pursuat to the prevision of Articles 1 to 36 , Law No. 30/2000 of the Democratic Republic of Sao Tome and Principe and it constitutes the existence of an insurance cover",
                    fontUK));
            PdfPCell cellLeis = new PdfPCell(pLeis);
            cellLeis.setBorder(0);

            pTableArtigo.addCell(cellArtigoCetificado);
            pTableArtigo.addCell(cellLeis);

            PdfPTable pTableAssinaturaTitulo = new PdfPTable(1);
            PdfPTable pTableAssinatura = new PdfPTable(new float[] { 50f, 50f });
            PdfPCell cellAssinatora = new PdfPCell(
                    new Phrase("Assinaturas e Carimbo".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("Nicon Seguros 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);

            PdfPCell assinaturaUK = new PdfPCell(
                    new Phrase("Signature of Insurer and stamp".toUpperCase(), fontUK));
            assinaturaUK.setBorder(0);
            assinaturaUK.setHorizontalAlignment(PdfPCell.ALIGN_CENTER);
            assinaturaUK.setColspan(2);

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

            documento.add(pTableEmpresaPricipal);
            documento.add(pTableNull);
            documento.add(pTableTitulo);
            documento.add(pTableNull);
            documento.add(pTableNull);
            documento.add(pTableDetalhes);
            documento.add(pTableNull);
            documento.add(pTableArtigo);
            documento.add(pTableNull);
            documento.add(pTableAssinaturaTitulo);
            documento.add(pTableNull);
            documento.add(pTableNull);
            documento.add(pTableAssinatura);
            if (i != total)
                documento.newPage();
        }
        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.ExporOnlyViagemPdf.java

private void dataTableDados(Document documento, Date dataInicio, Date dataFim)
        throws IOException, BadElementException, DocumentException {

    PdfPTable pTableDate;/*w w w . jav  a 2 s  . com*/

    int i = 0, p = 0;
    dataViagem(dataInicio, dataFim);
    for (Map.Entry<String, ArrayList<HashMap<String, Object>>> data : hasList.entrySet()) {

        totalSelo = 0f;
        totalConsumo = 0f;
        totalTotal = 0f;
        totalPremio = 0f;
        totalComissao = 0f;

        pTableDate = new PdfPTable(new float[] { 3f, 6.85f, 10.46f, 6.60f, 6.60f, 3.90f, 24.09f, 6.75f, 6.85f,
                5.80f, 5.80f, 5.80f, 7.55f });
        dataTableTitile(documento, toString(data.getKey()));

        pTableDate.setWidthPercentage(100);
        for (int j = 0; j < 13; j++) {
            PdfPCell cellDados = new PdfPCell(funcaoTitulo(j));
            cellDados.setHorizontalAlignment(Element.ALIGN_CENTER);
            pTableDate.addCell(cellDados);
        }

        for (HashMap<String, Object> hashMap : data.getValue()) {

            PdfPCell cellDados = new PdfPCell(new Phrase(i + "", fontCorpoTable));
            cellDados.setHorizontalAlignment(Element.ALIGN_CENTER);
            pTableDate.addCell(cellDados);

            cellDados = new PdfPCell(new Phrase(toString(hashMap.get(DATA)), fontCorpoTable));
            cellDados.setHorizontalAlignment(Element.ALIGN_CENTER);
            pTableDate.addCell(cellDados);

            //---
            cellDados = new PdfPCell(new Phrase(toString(hashMap.get(NUMEROAPOLICE)), fontCorpoTable));
            cellDados.setHorizontalAlignment(Element.ALIGN_CENTER);
            pTableDate.addCell(cellDados);

            cellDados = new PdfPCell(
                    new Phrase(ConfigDoc.toFormat(toString(hashMap.get(INICIO)), "dd-MM-yyyy", "yyyy-MM-dd"),
                            fontCorpoTable));
            cellDados.setHorizontalAlignment(Element.ALIGN_CENTER);
            pTableDate.addCell(cellDados);

            //---
            cellDados = new PdfPCell(
                    new Phrase(ConfigDoc.toFormat(toString(hashMap.get(FIM)), "dd-MM-yyyy", "yyyy-MM-dd"),
                            fontCorpoTable));
            cellDados.setHorizontalAlignment(Element.ALIGN_CENTER);
            pTableDate.addCell(cellDados);

            cellDados = new PdfPCell(new Phrase(toString(hashMap.get(DIAS)), fontCorpoTable));
            cellDados.setHorizontalAlignment(Element.ALIGN_CENTER);
            pTableDate.addCell(cellDados);

            //----
            cellDados = new PdfPCell(new Phrase(toString(hashMap.get(CLIENTE)), fontCorpoTable));
            pTableDate.addCell(cellDados);

            cellDados = new PdfPCell(new Phrase(toString(hashMap.get(RECIBO)), fontCorpoTable));
            cellDados.setHorizontalAlignment(Element.ALIGN_CENTER);
            pTableDate.addCell(cellDados);

            //---
            totalPremio += toFloat(toString(hashMap.get(PREMIO)));
            cellDados = new PdfPCell(
                    new Phrase(ConfigDoc.toMoeda(toString(hashMap.get(PREMIO)), ""), fontCorpoTable));
            cellDados.setHorizontalAlignment(Element.ALIGN_RIGHT);
            pTableDate.addCell(cellDados);

            totalComissao += toFloat(toString(hashMap.get(COMISSAO)));
            cellDados = new PdfPCell(
                    new Phrase(ConfigDoc.toMoeda(toString(hashMap.get(COMISSAO)), ""), fontCorpoTable));
            cellDados.setHorizontalAlignment(Element.ALIGN_RIGHT);
            pTableDate.addCell(cellDados);

            //--
            totalConsumo += toFloat(toString(hashMap.get(CONSUMO)));
            cellDados = new PdfPCell(
                    new Phrase(ConfigDoc.toMoeda(toString(hashMap.get(CONSUMO)), ""), fontCorpoTable));
            cellDados.setHorizontalAlignment(Element.ALIGN_RIGHT);
            pTableDate.addCell(cellDados);

            totalSelo += toFloat(toString(hashMap.get(SELO)));
            cellDados = new PdfPCell(
                    new Phrase(ConfigDoc.toMoeda(toString(hashMap.get(SELO)), ""), fontCorpoTable));
            cellDados.setHorizontalAlignment(Element.ALIGN_RIGHT);
            pTableDate.addCell(cellDados);

            //---
            //                cellDados = new PdfPCell(new Phrase(toString(hashMap.get(NETOUT)), fontCorpoTable));
            //                pTableDate.addCell(cellDados);

            totalTotal += toFloat(toString(hashMap.get(TOTAL)));
            cellDados = new PdfPCell(
                    new Phrase(ConfigDoc.toMoeda(toString(hashMap.get(TOTAL)), ""), fontCorpoTable));
            cellDados.setHorizontalAlignment(Element.ALIGN_RIGHT);
            pTableDate.addCell(cellDados);
            i++;

        }
        radapeTable(pTableDate, documento);
        documento.newPage();
    }
}

From source file:Export.FuncPagamento.java

private String folhaPagamento(String numPagamento, String user, String nomeUser, int j)
        throws NumberFormatException {
    try {//  w  w w  . j a  v a2 s  .c  om

        SimpleDateFormat sdf1 = new SimpleDateFormat("dd-MM-yyyy hh'.'mm'.'ss");

        Font fontCabecalhoN = FontFactory.getFont(ConfigDoc.Fontes.FONTB, BaseFont.WINANSI, BaseFont.EMBEDDED,
                9.5f);
        Font fontCorpo = FontFactory.getFont(ConfigDoc.Fontes.FONT, BaseFont.WINANSI, BaseFont.EMBEDDED, 9f);
        Font fontCorpoP = FontFactory.getFont(ConfigDoc.Fontes.FONT, BaseFont.WINANSI, BaseFont.EMBEDDED, 8f);
        Font fontCorpoN = FontFactory.getFont(ConfigDoc.Fontes.FONTB, BaseFont.WINANSI, BaseFont.EMBEDDED, 9f);
        Font fontCorpoNU = FontFactory.getFont(ConfigDoc.Fontes.FONTB, BaseFont.WINANSI, BaseFont.EMBEDDED, 9f,
                Font.UNDERLINE);
        Font fontCorpoNG = FontFactory.getFont(ConfigDoc.Fontes.FONTB, BaseFont.WINANSI, BaseFont.EMBEDDED,
                11.5f);
        Font fontCorpoNGT = FontFactory.getFont(ConfigDoc.Fontes.FONTB, BaseFont.WINANSI, BaseFont.EMBEDDED,
                13f, Font.UNDERLINE);
        Font fontCabecalhoNG = FontFactory.getFont(ConfigDoc.Fontes.FONTB, BaseFont.WINANSI, BaseFont.EMBEDDED,
                16f, Font.UNDERLINE);

        ArrayList<HashMap<String, Object>> mapList = getObj(numPagamento);

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

        String Ddata = sdf1.format(new Date());

        int size = mapList.size(), i = 0;

        File ff = new File(ConfigDoc.Fontes.getDiretorio() + "/" + user + "/Pagamentos/");

        ff.mkdirs();
        ff = new File(ff.getAbsoluteFile() + "/" + "Pagamentos Func " + Ddata + ".pdf");

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

        MyFooter event = new MyFooter();
        writer.setPageEvent(event);

        documento.open();

        for (HashMap<String, Object> hashMap : mapList) {
            i++;

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

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

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

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

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

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

            PdfPCell pCellSociedade = new PdfPCell(new Phrase(ConfigDoc.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 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);

            documento.add(pTableEmpresaPricipal);

            documento.add(pTableNull);
            documento.add(pTableNull);

            PdfPTable pTableTitulo = new PdfPTable(new float[] { 50, 50 });
            pTableTitulo.setWidthPercentage(90f);
            PdfPCell cellTitulo = new PdfPCell(new Phrase("Comprovativo de Pagamento", fontCorpoNGT));
            cellTitulo.setBorder(0);
            cellTitulo.setHorizontalAlignment(Element.ALIGN_RIGHT);
            cellTitulo.setPaddingRight(-80f);
            cellTitulo.setPaddingTop(-26f);
            pTableTitulo.addCell(cellTitulo);
            cellTitulo = new PdfPCell(new Phrase("N: " + hashMap.get(PAGAMENTO), fontCorpoNGT));
            cellTitulo.setHorizontalAlignment(Element.ALIGN_RIGHT);
            cellTitulo.setBorder(0);
            cellTitulo.setPaddingBottom(5f);
            pTableTitulo.addCell(cellTitulo);

            documento.add(pTableTitulo);

            PdfPTable pTableAno = new PdfPTable(new float[] { 100 });
            pTableAno.setWidthPercentage(90f);
            PdfPCell cellAno = new PdfPCell(new Phrase(toData(hashMap.get(REGISTRO), j), fontCorpoNGT));
            cellAno.setBorder(0);
            cellAno.setPaddingBottom(20f);
            pTableAno.addCell(cellAno);

            documento.add(pTableAno);

            PdfPTable pTableDetalhesPagamento = new PdfPTable(new float[] { 100 });
            pTableDetalhesPagamento.setWidthPercentage(90f);
            PdfPCell cellDetalhesPagamento = new PdfPCell();

            Paragraph pDetalhesPagamento = new Paragraph();
            pDetalhesPagamento.add(new Paragraph("\nDetalhes de Pagamento ", fontCorpoNG));

            pDetalhesPagamento.add(new Phrase("Beneficirio: ", fontCorpoN));
            pDetalhesPagamento.add(new Phrase(toString(hashMap.get(BENEFICIARIO)) + "\n", fontCorpo));
            pDetalhesPagamento.add(new Phrase("Descrio do pagamento: ", fontCorpoN));
            pDetalhesPagamento.add(new Phrase(toString(hashMap.get(DESCRICAOPAGAMENTO)), fontCorpo));
            pDetalhesPagamento.add(new Paragraph("CONFORME APROVADO\n\n", fontCorpoN));

            pDetalhesPagamento.add(new Paragraph("Valor Pagamento", fontCorpoNG));
            pDetalhesPagamento.add(new Phrase("Valor Numerico: ", fontCorpoN));
            pDetalhesPagamento.add(new Phrase(
                    toMoeda(hashMap.get(VALORPAGAMENTO), toString(hashMap.get(SIGLA))) + "\n", fontCorpo));
            System.err.println(toString(hashMap.get(RETENCAOFONTE)) + " hfhfh retensao");
            if (toString(hashMap.get(RETENCAOFONTE)).trim().equals("1")) {
                double ret = getValorImportRetensao();
                pDetalhesPagamento.add(new Phrase("Valor Retensao Fonte: ", fontCorpoN));
                pDetalhesPagamento.add(new Phrase(toMoeda(ret, "%") + "\n", fontCorpo));
                pDetalhesPagamento.add(new Phrase("Valor Retido: ", fontCorpoN));
                double valret = toDouble(hashMap.get(VALORPAGAMENTO)) * ret;
                pDetalhesPagamento
                        .add(new Phrase(toMoeda(valret, toString(hashMap.get(SIGLA))) + "\n", fontCorpo));
            }

            JTextPane jtp = new JTextPane();
            Double valor = Double.valueOf((hashMap.get(VALORPAGAMENTO) + ""));
            Moeda.EscreverEstenso(valor, jtp, toString(hashMap.get(MOEDA)));

            pDetalhesPagamento.add(new Phrase("Valor por Extenso: ", fontCorpoN));
            pDetalhesPagamento.add(new Phrase(jtp.getText().trim() + " \n\n", fontCorpo));

            pDetalhesPagamento.add(new Paragraph("Descrio da Conta", fontCorpoNG));
            pDetalhesPagamento.add(new Phrase("Cod Conta: ", fontCorpoN));
            pDetalhesPagamento.add(new Phrase(hashMap.get(CODIGOCONTAPAGAMENTO) + "\n", fontCorpo));
            pDetalhesPagamento.add(new Phrase("Titulo da Conta: ", fontCorpoN));
            pDetalhesPagamento.add(new Phrase(hashMap.get(TITULOCONTAPAGAMENTO) + "\n", fontCorpo));

            /**
             * For alter
             */
            pDetalhesPagamento.add(new Phrase("Forma de Pagamento: ", fontCorpoN));
            pDetalhesPagamento.add(new Phrase(hashMap.get(FORMAPAGAMENTO) + " \n", fontCorpo));
            pDetalhesPagamento.add(new Phrase("Documento de Pagamento: ", fontCorpoN));
            pDetalhesPagamento.add(new Phrase(toString(hashMap.get(DESCRICAOCONTABANCO)) + " - "
                    + toString(hashMap.get(DOCFORMAPAGAMENTO)) + "\n\n", fontCorpo));
            pDetalhesPagamento.add(new Paragraph(" ", fontCorpoN));

            cellDetalhesPagamento.addElement(pDetalhesPagamento);
            pTableDetalhesPagamento.addCell(cellDetalhesPagamento);

            cellDetalhesPagamento = new PdfPCell();
            pDetalhesPagamento = new Paragraph();

            pDetalhesPagamento.add(new Paragraph(" ", fontCorpo));
            pDetalhesPagamento.add(new Phrase("Preparado por: ", fontCorpoN));
            pDetalhesPagamento.add(new Phrase(nomeUser + " ", fontCorpoP));
            pDetalhesPagamento.add(new Phrase("            Examinado por", fontCorpoN));
            pDetalhesPagamento.add(new Phrase("____________________\n", fontCorpo));

            pDetalhesPagamento.add(new Paragraph(" ", fontCorpoN));
            pDetalhesPagamento.add(new Paragraph("Pagamento Autorizado por:", fontCorpoNG));

            pDetalhesPagamento.add(new Paragraph(" ", fontCorpoN));
            pDetalhesPagamento.add(new Phrase("Assinatura: ", fontCorpoN));
            pDetalhesPagamento.add(new Phrase(" ____________________________________________", fontCorpo));
            pDetalhesPagamento.add(new Phrase("    Data ", fontCorpoN));
            pDetalhesPagamento.add(new Phrase(" ______________________\n\n", fontCorpo));

            pDetalhesPagamento.add(new Phrase("Assinatura: ", fontCorpoN));
            pDetalhesPagamento.add(new Phrase(" ____________________________________________", fontCorpo));
            pDetalhesPagamento.add(new Phrase("    Data ", fontCorpoN));
            pDetalhesPagamento.add(new Phrase(" ______________________\n", fontCorpo));

            pDetalhesPagamento.add(new Paragraph(" ", fontCorpo));
            pDetalhesPagamento.add(new Paragraph(
                    "............................................................................."
                            + "...........................................................................",
                    fontCorpoN));

            pDetalhesPagamento.add(new Paragraph(" ", fontCorpo));
            Paragraph pReceip = new Paragraph("RECIBO", fontCorpoN);
            pReceip.setAlignment(Element.ALIGN_CENTER);
            pDetalhesPagamento.add(pReceip);

            pDetalhesPagamento.add(new Paragraph(" ", fontCorpo));
            pDetalhesPagamento.add(new Phrase("Recebi o valor de: ", fontCorpo));
            pDetalhesPagamento.add(new Phrase(jtp.getText() + " \n", fontCorpoNU));

            pDetalhesPagamento.add(new Paragraph(" ", fontCorpoN));

            PdfPTable pTableNumCheque = new PdfPTable(
                    new float[] { 33.3333333333f, 33.3333333333f, 33.3333333333f });
            pTableNumCheque.setWidthPercentage(90f);
            pTableNumCheque.setWidthPercentage(100f);

            PdfPCell cellNumCheque = new PdfPCell(new Phrase("_______________________", fontCorpo));
            cellNumCheque.setBorder(0);
            cellNumCheque.setHorizontalAlignment(Element.ALIGN_CENTER);
            pTableNumCheque.addCell(cellNumCheque);
            cellNumCheque = new PdfPCell(new Phrase("_______________________", fontCorpo));
            cellNumCheque.setBorder(0);
            cellNumCheque.setHorizontalAlignment(Element.ALIGN_CENTER);
            pTableNumCheque.addCell(cellNumCheque);
            cellNumCheque = new PdfPCell(new Phrase("_______________________", fontCorpo));
            cellNumCheque.setBorder(0);
            cellNumCheque.setHorizontalAlignment(Element.ALIGN_CENTER);
            pTableNumCheque.addCell(cellNumCheque);

            cellNumCheque = new PdfPCell(new Phrase("Cheque No.", fontCorpoN));
            cellNumCheque.setBorder(0);
            cellNumCheque.setHorizontalAlignment(Element.ALIGN_CENTER);
            pTableNumCheque.addCell(cellNumCheque);
            cellNumCheque = new PdfPCell(new Phrase("Data", fontCorpoN));
            cellNumCheque.setBorder(0);
            cellNumCheque.setHorizontalAlignment(Element.ALIGN_CENTER);
            pTableNumCheque.addCell(cellNumCheque);
            cellNumCheque = new PdfPCell(new Phrase("Receiver Name & Signature", fontCorpoN));
            cellNumCheque.setBorder(0);
            cellNumCheque.setHorizontalAlignment(Element.ALIGN_CENTER);
            pTableNumCheque.addCell(cellNumCheque);

            pDetalhesPagamento.add(pTableNumCheque);

            pDetalhesPagamento.add(new Phrase(
                    "\nNOTA: Um recibo oficial pode ser obtido por um pagamento e informado na parte inversa deste comprovativo. \n\n",
                    fontCorpo));

            cellDetalhesPagamento.addElement(pDetalhesPagamento);

            pTableDetalhesPagamento.addCell(cellDetalhesPagamento);

            documento.add(pTableDetalhesPagamento);

            if (i != size) {
                documento.newPage();
            }
        }

        documento.close();

        reString = "../Documentos/" + user + "/Pagamentos/" + "Pagamentos Func " + Ddata + ".pdf";
        return reString;
    } catch (BadElementException | IOException ex) {
        Logger.getLogger(FuncPagamento.class.getName()).log(Level.SEVERE, null, ex);
    } catch (DocumentException ex) {
        Logger.getLogger(FuncPagamento.class.getName()).log(Level.SEVERE, null, ex);
    }
    return reString;
}

From source file:Export.FuncPagamento.java

public static String folhaPagamentoOnlyMovCre(String numPagamento, String user, String nomeUser, Object ob)
        throws NumberFormatException {
    try {//from ww w  .  java2 s  . c  o m

        SimpleDateFormat sdf1 = new SimpleDateFormat("dd-MM-yyyy hh'.'mm'.'ss");

        Font fontCabecalhoN = FontFactory.getFont(ConfigDoc.Fontes.FONTB, BaseFont.WINANSI, BaseFont.EMBEDDED,
                9.5f);
        Font fontCorpo = FontFactory.getFont(ConfigDoc.Fontes.FONT, BaseFont.WINANSI, BaseFont.EMBEDDED, 9f);
        Font fontCorpoP = FontFactory.getFont(ConfigDoc.Fontes.FONT, BaseFont.WINANSI, BaseFont.EMBEDDED, 8f);
        Font fontCorpoN = FontFactory.getFont(ConfigDoc.Fontes.FONTB, BaseFont.WINANSI, BaseFont.EMBEDDED, 9f);
        Font fontCorpoNU = FontFactory.getFont(ConfigDoc.Fontes.FONTB, BaseFont.WINANSI, BaseFont.EMBEDDED, 9f,
                Font.UNDERLINE);
        Font fontCorpoNG = FontFactory.getFont(ConfigDoc.Fontes.FONTB, BaseFont.WINANSI, BaseFont.EMBEDDED,
                11.5f);
        Font fontCorpoNGT = FontFactory.getFont(ConfigDoc.Fontes.FONTB, BaseFont.WINANSI, BaseFont.EMBEDDED,
                13f, Font.UNDERLINE);
        Font fontCabecalhoNG = FontFactory.getFont(ConfigDoc.Fontes.FONTB, BaseFont.WINANSI, BaseFont.EMBEDDED,
                16f, Font.UNDERLINE);

        ArrayList<HashMap<String, Object>> mapList = setObj(numPagamento, ob);

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

        String Ddata = sdf1.format(new Date());

        int size = mapList.size(), i = 0;

        File ff = new File(ConfigDoc.Fontes.getDiretorio() + "/" + user + "/Pagamentos/");

        ff.mkdirs();
        ff = new File(ff.getAbsoluteFile() + "/" + "Pagamentos Func " + Ddata + ".pdf");

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

        MyFooter event = new MyFooter();
        writer.setPageEvent(event);

        documento.open();

        for (HashMap<String, Object> hashMap : mapList) {
            i++;

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

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

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

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

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

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

            PdfPCell pCellSociedade = new PdfPCell(new Phrase(ConfigDoc.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 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);

            documento.add(pTableEmpresaPricipal);

            documento.add(pTableNull);
            documento.add(pTableNull);

            PdfPTable pTableTitulo = new PdfPTable(new float[] { 50, 50 });
            pTableTitulo.setWidthPercentage(90f);
            PdfPCell cellTitulo = new PdfPCell(new Phrase("Comprovativo de Pagamento", fontCorpoNGT));
            cellTitulo.setBorder(0);
            cellTitulo.setHorizontalAlignment(Element.ALIGN_RIGHT);
            cellTitulo.setPaddingRight(-80f);
            cellTitulo.setPaddingTop(-26f);
            pTableTitulo.addCell(cellTitulo);
            cellTitulo = new PdfPCell(new Phrase("N: " + hashMap.get(PAGAMENTO), fontCorpoNGT));
            cellTitulo.setHorizontalAlignment(Element.ALIGN_RIGHT);
            cellTitulo.setBorder(0);
            cellTitulo.setPaddingBottom(5f);
            pTableTitulo.addCell(cellTitulo);

            documento.add(pTableTitulo);

            PdfPTable pTableAno = new PdfPTable(new float[] { 100 });
            pTableAno.setWidthPercentage(90f);

            SimpleDateFormat sdfVeiw = new SimpleDateFormat("MMMM '('dd/MM/yyyy')'", new Locale("pt", "BR"));
            PdfPCell cellAno = new PdfPCell(new Phrase(sdfVeiw.format(new Date()), fontCorpoNGT));
            cellAno.setBorder(0);
            cellAno.setPaddingBottom(20f);
            pTableAno.addCell(cellAno);

            documento.add(pTableAno);

            PdfPTable pTableDetalhesPagamento = new PdfPTable(new float[] { 100 });
            pTableDetalhesPagamento.setWidthPercentage(90f);
            PdfPCell cellDetalhesPagamento = new PdfPCell();

            Paragraph pDetalhesPagamento = new Paragraph();
            pDetalhesPagamento.add(new Paragraph("\nDetalhes de Pagamento ", fontCorpoNG));

            pDetalhesPagamento.add(new Phrase("Beneficirio: ", fontCorpoN));
            pDetalhesPagamento.add(new Phrase(toString(hashMap.get(BENEFICIARIO)) + "\n", fontCorpo));
            pDetalhesPagamento.add(new Phrase("Descrio do pagamento: ", fontCorpoN));
            pDetalhesPagamento.add(new Phrase(toString(hashMap.get(DESCRICAOPAGAMENTO)), fontCorpo));
            pDetalhesPagamento.add(new Paragraph("CONFORME APROVADO\n\n", fontCorpoN));

            pDetalhesPagamento.add(new Paragraph("Valor Pagamento", fontCorpoNG));
            pDetalhesPagamento.add(new Phrase("Valor Numerico: ", fontCorpoN));
            pDetalhesPagamento.add(new Phrase(
                    toMoeda(hashMap.get(VALORPAGAMENTO), toString(hashMap.get(SIGLA))) + "\n", fontCorpo));
            System.err.println(toString(hashMap.get(RETENCAOFONTE)) + " hfhfh retensao");
            if (toString(hashMap.get(RETENCAOFONTE)).trim().equals("1")) {
                double ret = getValorImportRetensao();
                pDetalhesPagamento.add(new Phrase("Valor Retensao Fonte: ", fontCorpoN));
                pDetalhesPagamento.add(new Phrase(toMoeda(ret, "%") + "\n", fontCorpo));
                pDetalhesPagamento.add(new Phrase("Valor Retido: ", fontCorpoN));
                double valret = toDouble(hashMap.get(VALORPAGAMENTO)) * ret;
                pDetalhesPagamento
                        .add(new Phrase(toMoeda(valret, toString(hashMap.get(SIGLA))) + "\n", fontCorpo));
            }

            JTextPane jtp = new JTextPane();
            Double valor = Double.valueOf((hashMap.get(VALORPAGAMENTO) + ""));
            Moeda.EscreverEstenso(valor, jtp, toString(hashMap.get(MOEDA)));

            pDetalhesPagamento.add(new Phrase("Valor por Extenso: ", fontCorpoN));
            pDetalhesPagamento.add(new Phrase(jtp.getText().trim() + " \n\n", fontCorpo));

            pDetalhesPagamento.add(new Paragraph("Descrio da Conta", fontCorpoNG));
            pDetalhesPagamento.add(new Phrase("Cod Conta: ", fontCorpoN));
            pDetalhesPagamento.add(new Phrase(hashMap.get(CODIGOCONTAPAGAMENTO) + "\n", fontCorpo));
            pDetalhesPagamento.add(new Phrase("Titulo da Conta: ", fontCorpoN));
            pDetalhesPagamento.add(new Phrase(hashMap.get(TITULOCONTAPAGAMENTO) + "\n", fontCorpo));

            /**
             * For alter
             */
            //                pDetalhesPagamento.add(new Phrase("Forma de Pagamento: ", fontCorpoN));
            //                pDetalhesPagamento.add(new Phrase(hashMap.get(FORMAPAGAMENTO) + " \n", fontCorpo));
            pDetalhesPagamento.add(new Phrase("Documento de Pagamento: ", fontCorpoN));
            pDetalhesPagamento.add(new Phrase(toString(hashMap.get(DESCRICAOCONTABANCO)) + " - "
                    + toString(hashMap.get(DOCFORMAPAGAMENTO)) + "\n\n", fontCorpo));
            pDetalhesPagamento.add(new Paragraph(" ", fontCorpoN));

            cellDetalhesPagamento.addElement(pDetalhesPagamento);
            pTableDetalhesPagamento.addCell(cellDetalhesPagamento);

            cellDetalhesPagamento = new PdfPCell();
            pDetalhesPagamento = new Paragraph();

            pDetalhesPagamento.add(new Paragraph(" ", fontCorpo));
            pDetalhesPagamento.add(new Phrase("Preparado por: ", fontCorpoN));
            pDetalhesPagamento.add(new Phrase(nomeUser + " ", fontCorpoP));
            pDetalhesPagamento.add(new Phrase("            Examinado por", fontCorpoN));
            pDetalhesPagamento.add(new Phrase("____________________\n", fontCorpo));

            pDetalhesPagamento.add(new Paragraph(" ", fontCorpoN));
            pDetalhesPagamento.add(new Paragraph("Pagamento Autorizado por:", fontCorpoNG));

            pDetalhesPagamento.add(new Paragraph(" ", fontCorpoN));
            pDetalhesPagamento.add(new Phrase("Assinatura: ", fontCorpoN));
            pDetalhesPagamento.add(new Phrase(" ____________________________________________", fontCorpo));
            pDetalhesPagamento.add(new Phrase("    Data ", fontCorpoN));
            pDetalhesPagamento.add(new Phrase(" ______________________\n\n", fontCorpo));

            pDetalhesPagamento.add(new Phrase("Assinatura: ", fontCorpoN));
            pDetalhesPagamento.add(new Phrase(" ____________________________________________", fontCorpo));
            pDetalhesPagamento.add(new Phrase("    Data ", fontCorpoN));
            pDetalhesPagamento.add(new Phrase(" ______________________\n", fontCorpo));

            pDetalhesPagamento.add(new Paragraph(" ", fontCorpo));
            pDetalhesPagamento.add(new Paragraph(
                    "............................................................................."
                            + "...........................................................................",
                    fontCorpoN));

            pDetalhesPagamento.add(new Paragraph(" ", fontCorpo));
            Paragraph pReceip = new Paragraph("RECIBO", fontCorpoN);
            pReceip.setAlignment(Element.ALIGN_CENTER);
            pDetalhesPagamento.add(pReceip);

            pDetalhesPagamento.add(new Paragraph(" ", fontCorpo));
            pDetalhesPagamento.add(new Phrase("Recebi o valor de: ", fontCorpo));
            pDetalhesPagamento.add(new Phrase(jtp.getText() + " \n", fontCorpoNU));

            pDetalhesPagamento.add(new Paragraph(" ", fontCorpoN));

            PdfPTable pTableNumCheque = new PdfPTable(
                    new float[] { 33.3333333333f, 33.3333333333f, 33.3333333333f });
            pTableNumCheque.setWidthPercentage(90f);
            pTableNumCheque.setWidthPercentage(100f);

            PdfPCell cellNumCheque = new PdfPCell(new Phrase("_______________________", fontCorpo));
            cellNumCheque.setBorder(0);
            cellNumCheque.setHorizontalAlignment(Element.ALIGN_CENTER);
            pTableNumCheque.addCell(cellNumCheque);
            cellNumCheque = new PdfPCell(new Phrase("_______________________", fontCorpo));
            cellNumCheque.setBorder(0);
            cellNumCheque.setHorizontalAlignment(Element.ALIGN_CENTER);
            pTableNumCheque.addCell(cellNumCheque);
            cellNumCheque = new PdfPCell(new Phrase("_______________________", fontCorpo));
            cellNumCheque.setBorder(0);
            cellNumCheque.setHorizontalAlignment(Element.ALIGN_CENTER);
            pTableNumCheque.addCell(cellNumCheque);

            cellNumCheque = new PdfPCell(new Phrase("Cheque No.", fontCorpoN));
            cellNumCheque.setBorder(0);
            cellNumCheque.setHorizontalAlignment(Element.ALIGN_CENTER);
            pTableNumCheque.addCell(cellNumCheque);
            cellNumCheque = new PdfPCell(new Phrase("Data", fontCorpoN));
            cellNumCheque.setBorder(0);
            cellNumCheque.setHorizontalAlignment(Element.ALIGN_CENTER);
            pTableNumCheque.addCell(cellNumCheque);
            cellNumCheque = new PdfPCell(new Phrase("Receiver Name & Signature", fontCorpoN));
            cellNumCheque.setBorder(0);
            cellNumCheque.setHorizontalAlignment(Element.ALIGN_CENTER);
            pTableNumCheque.addCell(cellNumCheque);

            pDetalhesPagamento.add(pTableNumCheque);

            pDetalhesPagamento.add(new Phrase(
                    "\nNOTA: Um recibo oficial pode ser obtido por um pagamento e informado na parte inversa deste comprovativo. \n\n",
                    fontCorpo));

            cellDetalhesPagamento.addElement(pDetalhesPagamento);

            pTableDetalhesPagamento.addCell(cellDetalhesPagamento);

            documento.add(pTableDetalhesPagamento);

            if (i != size) {
                documento.newPage();
            }
        }

        documento.close();
        String ret = "../Documentos/" + user + "/Pagamentos/" + "Pagamentos Func " + Ddata + ".pdf";

        RequestContext.getCurrentInstance().execute("openAllDocument('" + ret + "')");

        return ret;
    } catch (BadElementException | IOException ex) {
        Logger.getLogger(FuncPagamento.class.getName()).log(Level.SEVERE, null, ex);
    } catch (DocumentException ex) {
        Logger.getLogger(FuncPagamento.class.getName()).log(Level.SEVERE, null, ex);
    }
    return null;
}

From source file:Export.GrossSarary.java

public static void criaDoc(String user) {
    OutputStream outputStraem;/*from  w ww .j  av a2s  .c  o m*/
    try {
        Font fontCabecalhoN = FontFactory.getFont(ConfigDoc.Fontes.FONTB, BaseFont.WINANSI, BaseFont.EMBEDDED,
                10f);
        Font fontCorpo = FontFactory.getFont(ConfigDoc.Fontes.FONT, BaseFont.WINANSI, BaseFont.EMBEDDED, 9f);
        Font fontCorpoBP = FontFactory.getFont(ConfigDoc.Fontes.FONTB, BaseFont.WINANSI, BaseFont.EMBEDDED, 9f);
        Font fontCorpoN = FontFactory.getFont(ConfigDoc.Fontes.FONTB, BaseFont.WINANSI, BaseFont.EMBEDDED,
                9.5f);
        Font fontCorpoNG = FontFactory.getFont(ConfigDoc.Fontes.FONTB, BaseFont.WINANSI, BaseFont.EMBEDDED,
                13f);
        Font fontCorpoTitile = FontFactory.getFont(ConfigDoc.Fontes.FONTB, BaseFont.WINANSI, BaseFont.EMBEDDED,
                11f);
        Font fontCabecalhoNG = FontFactory.getFont(ConfigDoc.Fontes.FONTB, BaseFont.WINANSI, BaseFont.EMBEDDED,
                16f, Font.UNDERLINE);

        SimpleDateFormat sdf1 = new SimpleDateFormat("dd-MM-yyyy hh'.'mm'.'ss");
        File ff = new File(ConfigDoc.Fontes.getDiretorio() + "/" + user + "/Relatorio");
        ff.mkdirs();
        String Ddata = sdf1.format(new Date());
        ff = new File(ff.getAbsoluteFile() + "/" + "Gross Salary " + Ddata + ".pdf");
        outputStraem = new FileOutputStream(ff);

        String reString = "../Documentos/" + user + "/Relatorio/Gross Salary " + Ddata + ".pdf";

        PdfPTable pTableEmpresaPricipal = new PdfPTable(new float[] { 15f, 85f });
        PdfPTable pTableEmpresaInforImpres1 = 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(ConfigDoc.Empresa.NOME, fontCabecalhoNG));
        pCellNomeEmpresa.setBorder(0);

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

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

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

        PdfPCell pCellSociedade = new PdfPCell(new Phrase(ConfigDoc.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 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.setWidthPercentage(97);
        pTableEmpresaPricipal.addCell(cellTabela6);
        pTableEmpresaPricipal.addCell(cellTabela5);

        Document documento = new Document(PageSize.A4.rotate());
        PdfWriter writer = PdfWriter.getInstance(documento, outputStraem);

        //Table Principal
        PdfPTable pTableTitile = new PdfPTable(new float[] { 100 });
        PdfPTable pTableTablePrincipal = new PdfPTable(
                new float[] { 16.875f, 11.875f, 11.875f, 11.875f, 11.875f, 11.875f, 11.875f, 11.875f });
        pTableTablePrincipal.setWidthPercentage(100f);

        PdfPCell pCellTable = new PdfPCell(new Phrase("Categoria".toUpperCase(), fontCorpoTitile));
        pCellTable.setHorizontalAlignment(PdfPCell.ALIGN_CENTER);
        pCellTable.setVerticalAlignment(PdfPCell.ALIGN_MIDDLE);
        pTableTablePrincipal.addCell(pCellTable);

        //Table principal
        PdfPTable tableCell;
        for (int i = 1; i <= 7; i++) {
            tableCell = new PdfPTable(new float[] { 100 });

            pCellTable = new PdfPCell(new Phrase("NIVEL", fontCorpoTitile));
            pCellTable.setHorizontalAlignment(PdfPCell.ALIGN_CENTER);
            tableCell.addCell(pCellTable);

            pCellTable = new PdfPCell(new Phrase(i + "", fontCorpoTitile));
            pCellTable.setHorizontalAlignment(PdfPCell.ALIGN_CENTER);
            tableCell.addCell(pCellTable);

            pTableTablePrincipal.addCell(tableCell);
        }

        de = getList();

        for (DadosEstrutura de1 : de) {
            pCellTable = new PdfPCell(new Phrase(de1.categoria, fontCorpoN));
            pCellTable.setHorizontalAlignment(PdfPCell.ALIGN_LEFT);
            pTableTablePrincipal.addCell(pCellTable);

            pCellTable = new PdfPCell(new Phrase(de1.set1, fontCorpo));
            pCellTable.setHorizontalAlignment(PdfPCell.ALIGN_RIGHT);
            pTableTablePrincipal.addCell(pCellTable);

            pCellTable = new PdfPCell(new Phrase(de1.set2, fontCorpo));
            pCellTable.setHorizontalAlignment(PdfPCell.ALIGN_RIGHT);
            pTableTablePrincipal.addCell(pCellTable);

            pCellTable = new PdfPCell(new Phrase(de1.set3, fontCorpo));
            pCellTable.setHorizontalAlignment(PdfPCell.ALIGN_RIGHT);
            pTableTablePrincipal.addCell(pCellTable);

            pCellTable = new PdfPCell(new Phrase(de1.set4, fontCorpo));
            pCellTable.setHorizontalAlignment(PdfPCell.ALIGN_RIGHT);
            pTableTablePrincipal.addCell(pCellTable);

            pCellTable = new PdfPCell(new Phrase(de1.set5, fontCorpo));
            pCellTable.setHorizontalAlignment(PdfPCell.ALIGN_RIGHT);
            pTableTablePrincipal.addCell(pCellTable);

            pCellTable = new PdfPCell(new Phrase(de1.set6, fontCorpo));
            pCellTable.setHorizontalAlignment(PdfPCell.ALIGN_RIGHT);
            pTableTablePrincipal.addCell(pCellTable);

            pCellTable = new PdfPCell(new Phrase(de1.set7, fontCorpo));
            pCellTable.setHorizontalAlignment(PdfPCell.ALIGN_RIGHT);
            pTableTablePrincipal.addCell(pCellTable);
        }

        //Titulo de Table
        pCellTable = new PdfPCell(new Phrase("Estrutura de salrio Grosso".toUpperCase(), fontCorpoNG));
        pCellTable.setHorizontalAlignment(PdfPCell.ALIGN_CENTER);
        pCellTable.setBorder(PdfPCell.NO_BORDER);
        pCellTable.setPadding(15f);
        pTableTitile.addCell(pCellTable);

        pCellTable = new PdfPCell(new Phrase("Mensal".toUpperCase(), fontCorpoNG));
        pCellTable.setHorizontalAlignment(PdfPCell.ALIGN_CENTER);
        pCellTable.setBorder(PdfPCell.NO_BORDER);
        pTableTitile.addCell(pCellTable);

        @SuppressWarnings("UnusedAssignment")
        PdfPTable pTableInf = null;
        PdfPTable pTableInfTile = new PdfPTable(new float[] { 6, 18.5f, 18.5f, 18.5f, 18f, 20f });
        PdfPTable pTableInfReal = new PdfPTable(new float[] { 100f });
        pTableInfTile.setWidthPercentage(95f);
        pTableInfReal.setWidthPercentage(95f);

        pTableInfTile.setHorizontalAlignment(PdfPTable.ALIGN_CENTER);
        pTableInfReal.setHorizontalAlignment(PdfPTable.ALIGN_CENTER);

        pCellTable = new PdfPCell(new Phrase("NIVEL", fontCorpoN));
        pCellTable.setHorizontalAlignment(PdfPCell.ALIGN_CENTER);
        pCellTable.setVerticalAlignment(PdfPCell.ALIGN_MIDDLE);
        pTableInfTile.addCell(pCellTable);

        pCellTable = new PdfPCell(new Phrase("SAL?RIO BASE", fontCorpoN));
        pCellTable.setHorizontalAlignment(PdfPCell.ALIGN_CENTER);
        pCellTable.setVerticalAlignment(PdfPCell.ALIGN_MIDDLE);
        pTableInfTile.addCell(pCellTable);

        pCellTable = new PdfPCell(new Phrase("SUBSIDIO ALMOO", fontCorpoN));
        pCellTable.setHorizontalAlignment(PdfPCell.ALIGN_CENTER);
        pCellTable.setVerticalAlignment(PdfPCell.ALIGN_MIDDLE);
        pTableInfTile.addCell(pCellTable);

        pCellTable = new PdfPCell(new Phrase("SUBSIDIO ALOGAMENTO", fontCorpoN));
        pCellTable.setHorizontalAlignment(PdfPCell.ALIGN_CENTER);
        pCellTable.setVerticalAlignment(PdfPCell.ALIGN_MIDDLE);
        pTableInfTile.addCell(pCellTable);

        pCellTable = new PdfPCell(new Phrase("SUBSIDIO TRANSPORTE", fontCorpoN));
        pCellTable.setHorizontalAlignment(PdfPCell.ALIGN_CENTER);
        pCellTable.setVerticalAlignment(PdfPCell.ALIGN_MIDDLE);
        pTableInfTile.addCell(pCellTable);

        pCellTable = new PdfPCell(new Phrase("TOTAL", fontCorpoN));
        pCellTable.setHorizontalAlignment(PdfPCell.ALIGN_CENTER);
        pCellTable.setVerticalAlignment(PdfPCell.ALIGN_MIDDLE);
        pTableInfTile.addCell(pCellTable);

        HashMap<String, ArrayList<Categoria>> outherAr = GrossSarary.getCatList();
        int si = outherAr.size(), i = 0;
        for (Map.Entry<String, ArrayList<Categoria>> eSet : outherAr.entrySet()) {

            pTableInf = new PdfPTable(new float[] { 6, 18.5f, 18.5f, 18.5f, 18f, 20f });
            pTableInf.setWidthPercentage(95f);
            pTableInf.setHorizontalAlignment(PdfPTable.ALIGN_CENTER);

            pCellTable = new PdfPCell(new Phrase(eSet.getKey(), fontCorpoNG));
            pCellTable.setHorizontalAlignment(PdfPCell.ALIGN_LEFT);
            pCellTable.setVerticalAlignment(PdfPCell.ALIGN_MIDDLE);
            pCellTable.setBorder(PdfPCell.NO_BORDER);
            pCellTable.setColspan(6);
            pTableInf.addCell(pCellTable);

            pCellTable = new PdfPCell(new Phrase(" ", fontCorpoN));
            pCellTable.setHorizontalAlignment(PdfPCell.ALIGN_CENTER);
            pCellTable.setVerticalAlignment(PdfPCell.ALIGN_MIDDLE);
            pCellTable.setColspan(6);
            pCellTable.setBorder(PdfPCell.NO_BORDER);
            pTableInf.addCell(pCellTable);

            pCellTable = new PdfPCell(pTableInfTile);
            pCellTable.setHorizontalAlignment(PdfPCell.ALIGN_CENTER);
            pCellTable.setVerticalAlignment(PdfPCell.ALIGN_MIDDLE);
            pCellTable.setColspan(6);
            pCellTable.setBorder(PdfPCell.NO_BORDER);
            pTableInf.addCell(pCellTable);

            for (Categoria ca : eSet.getValue()) {
                pCellTable = new PdfPCell(new Phrase(ca.nivel, fontCorpo));
                pCellTable.setHorizontalAlignment(PdfPCell.ALIGN_LEFT);
                pCellTable.setVerticalAlignment(PdfPCell.ALIGN_MIDDLE);
                pTableInf.addCell(pCellTable);

                pCellTable = new PdfPCell(new Phrase(toConverterToMoeda(ca.salarioBase), fontCorpo));
                pCellTable.setHorizontalAlignment(PdfPCell.ALIGN_RIGHT);
                pCellTable.setVerticalAlignment(PdfPCell.ALIGN_MIDDLE);
                pCellTable.setPaddingRight(10f);
                pTableInf.addCell(pCellTable);

                pCellTable = new PdfPCell(new Phrase(toConverterToMoeda(ca.subsidioAlmoco), fontCorpo));
                pCellTable.setHorizontalAlignment(PdfPCell.ALIGN_RIGHT);
                pCellTable.setVerticalAlignment(PdfPCell.ALIGN_MIDDLE);
                pCellTable.setPaddingRight(10f);
                pTableInf.addCell(pCellTable);

                pCellTable = new PdfPCell(new Phrase(toConverterToMoeda(ca.subsidioAlogamento), fontCorpo));
                pCellTable.setHorizontalAlignment(PdfPCell.ALIGN_RIGHT);
                pCellTable.setVerticalAlignment(PdfPCell.ALIGN_MIDDLE);
                pCellTable.setPaddingRight(10f);
                pTableInf.addCell(pCellTable);

                pCellTable = new PdfPCell(new Phrase(toConverterToMoeda(ca.subsidioTransporte), fontCorpo));
                pCellTable.setHorizontalAlignment(PdfPCell.ALIGN_RIGHT);
                pCellTable.setVerticalAlignment(PdfPCell.ALIGN_MIDDLE);
                pCellTable.setPaddingRight(10f);
                pTableInf.addCell(pCellTable);

                pCellTable = new PdfPCell(new Phrase(toConverterToMoeda(ca.total), fontCorpo));
                pCellTable.setHorizontalAlignment(PdfPCell.ALIGN_RIGHT);
                pCellTable.setVerticalAlignment(PdfPCell.ALIGN_MIDDLE);
                pCellTable.setPaddingRight(10f);
                pTableInf.addCell(pCellTable);
            }

            pCellTable = new PdfPCell(new Phrase(" ", fontCorpoN));
            pCellTable.setHorizontalAlignment(PdfPCell.ALIGN_CENTER);
            pCellTable.setVerticalAlignment(PdfPCell.ALIGN_MIDDLE);
            pCellTable.setBorder(PdfPCell.NO_BORDER);
            pCellTable.setColspan(6);

            i++;
            if (si == i) {
                pTableInf.addCell(pCellTable);
                pTableInf.addCell(pCellTable);
                pTableInf.addCell(pCellTable);
            }

            pCellTable = new PdfPCell(pTableInf);
            pCellTable.setHorizontalAlignment(PdfPCell.ALIGN_CENTER);
            pCellTable.setVerticalAlignment(PdfPCell.ALIGN_MIDDLE);
            pCellTable.setBorder(PdfPCell.NO_BORDER);
            pTableInfReal.addCell(pCellTable);

        }

        documento.open();
        documento.add(pTableEmpresaPricipal);
        documento.add(pTableNull);
        documento.add(pTableTitile);
        documento.add(pTableNull);
        documento.add(pTableTablePrincipal);
        //                documento.add(pTableNull);
        documento.newPage();
        documento.add(pTableInfReal);
        documento.close();

        RequestContext.getCurrentInstance().execute("openAllDocument('" + reString + "')");

    } catch (FileNotFoundException ex) {
        Logger.getLogger(GrossSarary.class.getName()).log(Level.SEVERE, null, ex);
    } catch (BadElementException | IOException ex) {
        Logger.getLogger(GrossSarary.class.getName()).log(Level.SEVERE, null, ex);
    } catch (DocumentException ex) {
        Logger.getLogger(GrossSarary.class.getName()).log(Level.SEVERE, null, ex);
    }
}

From source file:Export.SeguroAPG.java

public String criarDoc(String numApolice, String numCliente, Contrato c, AcidentePGBean apg, String user,
        String moeda, String arquivo) {
    try {/*w  ww .  ja  va 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);//from   w w  w .  j  a  va  2s.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();
}

From source file:Export.SeguroRoubo.java

public String criarDoc(String numApolice, String numCliente, RouboBean rb, Contrato c, String user,
        String arquivo) {/*from w w  w  . j a v a 2 s.  c  o m*/
    try {
        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, 9.5f);
        Font fontCorpo = FontFactory.getFont(Fontes.FONT, BaseFont.WINANSI, BaseFont.EMBEDDED, 8f);
        Font fontCorpoP = FontFactory.getFont(Fontes.FONT, BaseFont.WINANSI, BaseFont.EMBEDDED, 7f);
        Font fontCorpoN = FontFactory.getFont(Fontes.FONTB, BaseFont.WINANSI, BaseFont.EMBEDDED, 8f);
        Font fontCorpoNG = FontFactory.getFont(Fontes.FONTB, BaseFont.WINANSI, BaseFont.EMBEDDED, 8.5f);
        Font fontCorpoNGT = FontFactory.getFont(Fontes.FONTB, BaseFont.WINANSI, BaseFont.EMBEDDED, 10f);
        Font fontCabecalhoNG = FontFactory.getFont(Fontes.FONTB, BaseFont.WINANSI, BaseFont.EMBEDDED, 16f,
                Font.UNDERLINE);

        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 Roubo".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);

        PdfPTable pTableDadosTitulo = new PdfPTable(1);
        PdfPCell cellDadosTitulo = new PdfPCell(new Phrase());
        cellDadosTitulo.setBorder(0);
        Paragraph pInfoTitulo = new Paragraph("2 - Informaes do(s) Objecto (s) Segurado(s)".toUpperCase(),
                fontCorpoN);
        Paragraph pInfo1 = new Paragraph("   O Segurado: ".toUpperCase() + rb.getRoubo().getTipoEdificio(),
                fontCorpo);
        Paragraph pInfo2 = new Paragraph("   Endereo: ".toUpperCase() + rb.getRoubo().getEnderecoEdificio(),
                fontCorpo);

        cellDadosTitulo.addElement(pInfoTitulo);
        cellDadosTitulo.addElement(pInfo1);
        cellDadosTitulo.addElement(pInfo2);
        pTableDadosTitulo.addCell(cellDadosTitulo);

        PdfPCell cellSeguro = new PdfPCell(new Phrase());
        cellSeguro.setBorder(0);
        Paragraph pSegTitulo = new Paragraph("3 - Informaes Montante Segurado".toUpperCase(), fontCorpoN);
        Paragraph pSeg1 = new Paragraph(
                "   A Propriendade SEgurada: ......................................................... veja a especificao I"
                        .toUpperCase(),
                fontCorpo);
        Paragraph pSeg2 = new Paragraph("   Periodo Do Seguro ".toUpperCase(), fontCorpo);
        Paragraph pSeg3 = new Paragraph("   - DE " + sdf.format(c.getDataInicio()) + " At "
                + sdf.format(c.getDataFim()) + " (16:00 Da DATA DE Epirao): ".toUpperCase(), fontCorpo);

        Paragraph pSeg4 = new Paragraph("   Data de Renovao: "
                + ((c.getDataRenovacao() == null) ? "" : sdf.format(c.getDataRenovacao()).toUpperCase()),
                fontCorpo);
        Paragraph pSeg5 = new Paragraph("   Primeiro premio: ".toUpperCase() + c.getPrimeiroPremio(),
                fontCorpo);
        Paragraph pSeg6 = new Paragraph("   Prmeio Anual: ".toUpperCase() + c.getPremioAnual(), fontCorpo);
        Paragraph pSeg7 = new Paragraph(
                "Ojectos/Limite de responsabilidade dedutvel/prmio/observao/natureza/Do Risco/valor segurado/preo excesso"
                        .toUpperCase(),
                fontCorpo);
        Paragraph pSeg8 = new Paragraph("   ".toUpperCase(), fontCorpo);
        Paragraph pSeg9 = new Paragraph("   Prmio grosso:".toUpperCase(), fontCorpo);
        Paragraph pSeg10 = new Paragraph("   MeNor: ".toUpperCase(), fontCorpo);
        Paragraph pSeg11 = new Paragraph("   Adiciona: ".toUpperCase(), fontCorpo);
        Paragraph pSeg12 = new Paragraph("   Prmio Liquido Pagvel: ".toUpperCase(), fontCorpo);
        Paragraph pSeg13 = new Paragraph(
                "   outras condies/memorando .......................................................... queira por favor vira a pgina "
                        .toUpperCase(),
                fontCorpo);

        Paragraph pSegData = new Paragraph("   Data Em ".toUpperCase() + sdf.format(new Date()).toUpperCase(),
                fontCorpo);

        cellSeguro.addElement(pSegTitulo);
        cellSeguro.addElement(pSeg1);
        cellSeguro.addElement(pSeg2);
        cellSeguro.addElement(pSeg3);
        cellSeguro.addElement(pSeg4);
        cellSeguro.addElement(pSeg5);
        cellSeguro.addElement(pSeg6);
        cellSeguro.addElement(pSeg8);
        cellSeguro.addElement(pSeg7);
        cellSeguro.addElement(pSeg8);
        cellSeguro.addElement(pSeg9);
        cellSeguro.addElement(pSeg10);
        cellSeguro.addElement(pSeg11);
        cellSeguro.addElement(pSeg12);
        cellSeguro.addElement(pSeg13);
        cellSeguro.addElement(pSeg8);
        cellSeguro.addElement(pSeg8);
        cellSeguro.addElement(pSegData);

        pTableSeguro.addCell(cellSeguro);

        PdfPTable pTableObs = new PdfPTable(1);
        PdfPCell cellObs = new PdfPCell();
        cellObs.setBorder(0);
        Paragraph pObs = new Paragraph(
                "2.2 Especificao lidada e que faz parte de aplice de seguro contra Roubo N. 1"
                        .toUpperCase(),
                fontCorpo);
        cellObs.addElement(pSeg8);
        cellObs.addElement(pSeg8);
        cellObs.setBorderWidthBottom(0.6f);
        cellObs.addElement(pObs);

        PdfPCell cellObs1 = new PdfPCell();
        cellObs1.setBorder(0);
        Paragraph pObs1 = new Paragraph(
                "Sobre artigos domsticos e afetos pessoais incluindo mobilias e instalaes, a proprriedade do Seguro ou"
                        + "ou em fiana ou sobre comisso do qual o Segurado  responsavel enqunto estiver num edificio de contruo padro.",
                fontCorpo);
        cellObs1.addElement(pObs1);
        cellObs1.addElement(pSeg8);
        cellObs1.addElement(pSeg8);

        pTableObs.addCell(cellObs);
        pTableObs.addCell(cellObs1);

        PdfPTable pTableOjsSegurado = new PdfPTable(new float[] { 8, 40, 26, 26 });
        pTableOjsSegurado.setWidthPercentage(90);
        PdfPTable pTableOjsSegurado1 = new PdfPTable(new float[] { 74, 26 });
        pTableOjsSegurado1.setWidthPercentage(90);
        PdfPCell cellOjsSegurado1 = new PdfPCell(new Phrase("Quant.", fontCorpoNG));
        PdfPCell cellOjsSegurado2 = new PdfPCell(
                new Phrase("Descrio de Propriedade".toUpperCase(), fontCorpoNG));
        PdfPCell cellOjsSegurado3 = new PdfPCell(
                new Phrase("Modelo No/n DE Serie".toUpperCase(), fontCorpoNG));
        PdfPCell cellOjsSegurado4 = new PdfPCell(new Phrase("Valor Segurado".toUpperCase(), fontCorpoNG));

        cellOjsSegurado1.setHorizontalAlignment(Element.ALIGN_CENTER);
        cellOjsSegurado2.setHorizontalAlignment(Element.ALIGN_CENTER);
        cellOjsSegurado3.setHorizontalAlignment(Element.ALIGN_CENTER);
        cellOjsSegurado4.setHorizontalAlignment(Element.ALIGN_CENTER);

        pTableOjsSegurado.addCell(cellOjsSegurado1);
        pTableOjsSegurado.addCell(cellOjsSegurado2);
        pTableOjsSegurado.addCell(cellOjsSegurado3);
        pTableOjsSegurado.addCell(cellOjsSegurado4);

        Double valortotal = 0.0;
        for (Roubo r : rb.getInfo()) {
            cellOjsSegurado1 = new PdfPCell(new Phrase(r.getQuantidade(), fontCorpo));
            cellOjsSegurado2 = new PdfPCell(new Phrase(r.getDescricao(), fontCorpo));
            cellOjsSegurado3 = new PdfPCell(new Phrase(r.getModelo(), fontCorpo));
            cellOjsSegurado4 = new PdfPCell(new Phrase(r.getValor(), fontCorpo));

            valortotal += Double.valueOf(r.getValor());

            cellOjsSegurado1.setHorizontalAlignment(Element.ALIGN_LEFT);
            cellOjsSegurado2.setHorizontalAlignment(Element.ALIGN_LEFT);
            cellOjsSegurado3.setHorizontalAlignment(Element.ALIGN_CENTER);
            cellOjsSegurado4.setHorizontalAlignment(Element.ALIGN_LEFT);

            pTableOjsSegurado.addCell(cellOjsSegurado1);
            pTableOjsSegurado.addCell(cellOjsSegurado2);
            pTableOjsSegurado.addCell(cellOjsSegurado3);
            pTableOjsSegurado.addCell(cellOjsSegurado4);
        }

        PdfPCell cellOjs1Segurado1 = new PdfPCell(new Phrase(
                "Somatrio ----------------------------------------------------------------------------------------------"
                        .toUpperCase(),
                fontCorpo));
        cellOjs1Segurado1.setHorizontalAlignment(Element.ALIGN_CENTER);
        PdfPCell cellOjs1Segurado2 = new PdfPCell(new Phrase(valortotal + "", fontCorpo));
        cellOjs1Segurado2.setHorizontalAlignment(Element.ALIGN_LEFT);

        pTableOjsSegurado1.addCell(cellOjs1Segurado1);
        pTableOjsSegurado1.addCell(cellOjs1Segurado2);

        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 Roubo\\");
        //            ff.mkdirs();
        //            ff =new File(ff.getAbsoluteFile()+"\\"+"Formulario Seguro Roubo "+sdf1.format(new Date())+".pdf");
        File ff = new File(arquivo + "/" + user + "/Seguro Roubo/");

        ff.mkdirs();
        String Ddata = sdf1.format(new Date());
        ff = new File(ff.getAbsoluteFile() + "/" + "Formulario Seguro Roubo " + Ddata + ".pdf");

        reString = "../Documentos/" + user + "/Seguro Roubo/" + "Formulario Seguro Roubo " + 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(pTableTitulo);
        documento.add(pTableNull);
        documento.add(pTableCliente);
        documento.add(pTableNull);
        documento.add(pTableDadosTitulo);
        documento.add(pTableNull);
        documento.add(pTableSeguro);
        documento.add(pTableNull);
        documento.add(pTableAssinaturaTitulo);
        documento.add(pTableNull);
        documento.add(pTableNull);
        documento.add(pTableAssinatura);
        if (rb.getInfo().size() >= 10) {
            documento.newPage();
        }
        documento.add(pTableObs);
        documento.add(pTableOjsSegurado);
        documento.add(pTableOjsSegurado1);
        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;
}