Example usage for com.itextpdf.text Document setPageSize

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

Introduction

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

Prototype


public boolean setPageSize(Rectangle pageSize) 

Source Link

Document

Sets the pagesize.

Usage

From source file:Export.FuncPagamento.java

public static String folhaPagamentoOnlyMovCre(String numPagamento, String user, String nomeUser, Object ob)
        throws NumberFormatException {
    try {/*from  w  w w .  j  ava2s  . 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 = 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.GenericPDFs.java

/**
 *
 * @param user//from  w  w w . j a va2 s . co  m
 * @param nomeDoc
 * @param titleDoc
 * @param rs
 * @param op
 * @param paramFilter
 * @return
 */
public static String createDoc(String user, String nomeDoc, String titleDoc, DataTableControl rs,
        OrientacaoPagina op, int paramFilter) {
    nomeDocR = nomeDoc;
    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 fontCorpoTable = FontFactory.getFont(ConfigDoc.Fontes.FONT, BaseFont.WINANSI, BaseFont.EMBEDDED,
                7.5f);
        Font fontCorpoTableN = FontFactory.getFont(ConfigDoc.Fontes.FONTB, BaseFont.WINANSI, BaseFont.EMBEDDED,
                7.8f);
        Font fontCorpoNG = FontFactory.getFont(ConfigDoc.Fontes.FONTB, BaseFont.WINANSI, BaseFont.EMBEDDED, 9f);
        Font fontCorpoTitile = FontFactory.getFont(ConfigDoc.Fontes.FONTB, BaseFont.WINANSI, BaseFont.EMBEDDED,
                11.5f);
        Font fontCabecalhoNG = FontFactory.getFont(ConfigDoc.Fontes.FONTB, BaseFont.WINANSI, BaseFont.EMBEDDED,
                16f, Font.UNDERLINE);

        getMap(rs, paramFilter);
        ar = createPerncetage(list, paramFilter);
        PdfPTable tableDados = new PdfPTable(ar);

        Document documento = new Document();

        i = 0;
        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() + "/" + nomeDoc + " " + Ddata + ".pdf");
        OutputStream outputStraem = new FileOutputStream(ff);

        reString = "../Documentos/" + user + "/Relatorio/" + nomeDoc + " " + Ddata + ".pdf";

        PdfWriter writer = PdfWriter.getInstance(documento, outputStraem);

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

        if (op == OrientacaoPagina.HORIZONTAL) {
            documento.setPageSize(PageSize.A4.rotate());
        } else {
            documento.setPageSize(PageSize.A4);
        }

        documento.setMargins(10f, 10f, 35f, 35f);

        PdfPTable pTableEmpresaPricipal = new PdfPTable(
                (OrientacaoPagina.HORIZONTAL == op) ? new float[] { 14f, 86f } : new float[] { 18.5f, 82.5f });
        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);

        documento.open();
        documento.add(pTableEmpresaPricipal);
        documento.add(pTableNull);

        PdfPTable pTableTitile = new PdfPTable(1);
        SimpleDateFormat format = new SimpleDateFormat("dd 'de' MMMM 'de' yyyy", new Locale("pt", "BR"));
        PdfPCell cellTitile = new PdfPCell(new Phrase(titleDoc.toUpperCase() + ((dF != null && dI != null)
                ? (" de " + format.format(dI) + "  " + format.format(dF)).toUpperCase()
                : ""), fontCorpoTitile));
        cellTitile.setPaddingBottom(20f);
        cellTitile.setBorder(0);
        cellTitile.setHorizontalAlignment(PdfPCell.ALIGN_CENTER);
        pTableTitile.addCell(cellTitile);
        documento.add(pTableTitile);

        tableDados.setWidthPercentage(97f);
        PdfPTable tableTitile = new PdfPTable(ar);
        tableTitile.setWidthPercentage(97f);

        if (paramFilter < 0) {
            for (Object[] emap : list) {
                tableDados = new PdfPTable(ar);
                tableDados.setWidthPercentage(97f);
                if (emap[0] == null || !emap[0].equals("TOTAL")) {
                    for (int j = 0; j < emap.length; j++) {
                        if (cabe && i == 0) {
                            lista_titulo_table = emap;
                            PdfPCell cellTitileTable = new PdfPCell(
                                    new Phrase(toString(emap[j]).toUpperCase(), fontCorpoNG));
                            cellTitileTable.setBorderWidth(1f);
                            cellTitileTable.setPaddingTop(8f);
                            cellTitileTable.setVerticalAlignment(PdfPCell.ALIGN_MIDDLE);
                            cellTitileTable.setHorizontalAlignment(PdfPCell.ALIGN_CENTER);
                            BaseColor colorAzul = new BaseColor(255, 255, 255);
                            cellTitileTable.setBackgroundColor(colorAzul);
                            cellTitileTable.setPaddingBottom(8f);
                            tableTitile.addCell(cellTitileTable);
                        } else {
                            PdfPCell dados = new PdfPCell(new Phrase(toString(emap[j]), fontCorpoTable));
                            dados.setHorizontalAlignment(
                                    (alignment.containsKey(j)) ? alignment.get(j).i : PdfPCell.ALIGN_LEFT);
                            dados.setPaddingTop(5f);
                            dados.setPaddingBottom(5f);
                            BaseColor colorCinza = new BaseColor(255, 255, 255);
                            dados.setBackgroundColor(((i % 2 != 0) ? colorCinza : null));
                            tableDados.addCell(dados);
                        }
                    }
                    i++;
                    cabe = false;
                }

                if (i == 1) {
                    documento.add(tableTitile);
                }

                documento.add(tableDados);

            }

            PdfPTable tableTotal = new PdfPTable(ar);
            tableTotal.setWidthPercentage(97f);

            mapTotal.entrySet().stream().forEach((entrySet) -> {
                mapTotal.get(entrySet.getKey()).stream().forEach((get) -> {
                    for (int g = 0; g < get.length; g++) {
                        if (g != paramFilter) {
                            PdfPCell dados = new PdfPCell(
                                    new Phrase(((g == 0) ? "TOTAL" : toString(get[g])), fontCorpoTableN));
                            dados.setHorizontalAlignment(
                                    (alignment.containsKey(g)) ? alignment.get(g).i : PdfPCell.ALIGN_LEFT);
                            dados.setPaddingTop(5f);
                            dados.setPaddingBottom(5f);
                            BaseColor colorCinza = new BaseColor(255, 255, 255);
                            dados.setBackgroundColor(colorCinza);
                            tableTotal.addCell(dados);
                        }
                    }
                });
            });
            documento.add(tableTotal);
        } else {
            int t = 0;
            for (Map.Entry<String, ArrayList<Object[]>> lista : map.entrySet()) {
                i = 0;
                cabe = true;

                PdfPTable pTableSubTitile = new PdfPTable(new float[] { 100 });
                pTableSubTitile.setWidthPercentage(97f);

                PdfPCell cellSubTitile = new PdfPCell(
                        new Paragraph(lista.getKey().toUpperCase(), fontCorpoTitile));
                cellSubTitile.setBorder(PdfPCell.NO_BORDER);
                cellSubTitile.setPaddingTop(0f);
                cellSubTitile.setPaddingBottom(0f);
                pTableSubTitile.addCell(cellSubTitile);
                documento.add(pTableSubTitile);

                documento.add(new Paragraph(" "));

                for (Object[] emap : lista.getValue()) {
                    tableDados = new PdfPTable(ar);
                    tableTitile = new PdfPTable(ar);
                    tableDados.setWidthPercentage(97f);
                    tableTitile.setWidthPercentage(97f);
                    int k = 0;
                    for (int j = 0; j < emap.length; j++) {
                        if (k != paramFilterOculta) {
                            if (cabe && i == 0) {
                                lista_titulo_table = emap;
                                PdfPCell cellTitileTable = new PdfPCell(
                                        new Phrase(toString(emap[j]).toUpperCase(), fontCorpoNG));
                                cellTitileTable.setBorderWidth(1f);
                                cellTitileTable.setPaddingTop(8f);
                                cellTitileTable.setVerticalAlignment(PdfPCell.ALIGN_MIDDLE);
                                cellTitileTable.setHorizontalAlignment(PdfPCell.ALIGN_CENTER);
                                BaseColor colorAzul = new BaseColor(255, 255, 255);
                                cellTitileTable.setBackgroundColor(colorAzul);
                                cellTitileTable.setPaddingBottom(8f);
                                tableTitile.addCell(cellTitileTable);
                            } else {
                                PdfPCell dados = new PdfPCell(new Phrase(toString(emap[j]), fontCorpoTable));
                                dados.setHorizontalAlignment(
                                        (alignment.containsKey(j)) ? alignment.get(j).i : PdfPCell.ALIGN_LEFT);
                                dados.setPaddingTop(5f);
                                dados.setPaddingBottom(5f);
                                BaseColor colorCinza = new BaseColor(255, 255, 255);
                                dados.setBackgroundColor(((i % 2 != 0) ? colorCinza : null));
                                tableDados.addCell(dados);
                            }
                        }
                        k++;
                    }
                    i++;

                    cabe = false;
                    if (i == 1) {
                        documento.add(tableTitile);
                    }

                    documento.add(tableDados);

                }
                PdfPTable tableTotal = new PdfPTable(ar);
                tableTotal.setWidthPercentage(97f);
                if (mapTotal.containsKey(lista.getKey())) {
                    mapTotal.get(lista.getKey()).stream().forEach((get) -> {
                        for (int g = 0; g < get.length; g++) {
                            if (g != paramFilterOculta) {
                                PdfPCell dados = new PdfPCell(
                                        new Phrase(((g == 0) ? "TOTAL" : toString(get[g])), fontCorpoTableN));
                                dados.setHorizontalAlignment(
                                        (alignment.containsKey(g)) ? alignment.get(g).i : PdfPCell.ALIGN_LEFT);
                                dados.setPaddingTop(5f);
                                dados.setPaddingBottom(5f);
                                BaseColor colorCinza = new BaseColor(255, 255, 255);
                                dados.setBackgroundColor(colorCinza);
                                tableTotal.addCell(dados);
                            }
                        }
                    });
                }
                documento.add(tableTotal);
                t++;

                documento.add(new Paragraph(" "));
                documento.add(new Paragraph(" "));
                documento.add(new Paragraph(" "));

                if (t == map.size() && paramFilter > -1) {
                    PdfPTable tableTotal_t = new PdfPTable(ar);
                    tableTotal_t.setWidthPercentage(97f);
                    for (int j = 0; j < lista_titulo_table.length; j++) {
                        if (j != paramFilterOculta) {
                            PdfPCell cellTitileTable = new PdfPCell(
                                    new Phrase(toString(lista_titulo_table[j]).toUpperCase(), fontCorpoNG));
                            cellTitileTable.setBorderWidth(1f);
                            cellTitileTable.setPaddingTop(8f);
                            cellTitileTable.setVerticalAlignment(PdfPCell.ALIGN_MIDDLE);
                            cellTitileTable.setHorizontalAlignment(PdfPCell.ALIGN_CENTER);
                            BaseColor colorAzul = new BaseColor(255, 255, 255);
                            cellTitileTable.setBackgroundColor(colorAzul);
                            cellTitileTable.setPaddingBottom(8f);
                            tableTotal_t.addCell(cellTitileTable);
                        }
                    }

                    Double[] total_total = new Double[lista_titulo_table.length];
                    mapTotal.entrySet().stream().forEach((entrySet) -> {
                        mapTotal.get(entrySet.getKey()).stream().forEach((value) -> {
                            for (int g = 0; g < value.length; g++) {
                                if (!entrySet.getKey().equals("TOTAL")) {
                                    if (g != paramFilterOculta) {
                                        if (Moeda.unFormat(toString(value[g]).replaceAll(" ", "")
                                                .replaceAll(",", ".").replaceAll("STD", "")) != -1) {
                                            double v = ((total_total[g] == null) ? 0.0 : total_total[g]);
                                            total_total[g] = (Moeda
                                                    .unFormat(toString(value[g]).replaceAll(" ", "")
                                                            .replaceAll(",", ".").replaceAll("STD", ""))
                                                    + v);
                                        }
                                        PdfPCell dados = new PdfPCell(new Phrase(
                                                ((g == 0) ? "TOTAL " + entrySet.getKey().toUpperCase()
                                                        : toString(value[g])),
                                                fontCorpoTableN));
                                        dados.setHorizontalAlignment(
                                                (alignment.containsKey(g)) ? alignment.get(g).i
                                                        : PdfPCell.ALIGN_LEFT);
                                        dados.setPaddingTop(5f);
                                        dados.setPaddingBottom(5f);
                                        BaseColor colorCinza = new BaseColor(255, 255, 255);
                                        dados.setBackgroundColor(colorCinza);
                                        tableTotal_t.addCell(dados);
                                    }
                                }
                            }
                        });
                    });
                    for (int j = 0; j < total_total.length; j++) {
                        if (j != paramFilterOculta) {
                            PdfPCell cellTitileTable = new PdfPCell(
                                    new Phrase((total_total[j] != null) ? Moeda.format(total_total[j]) : " ",
                                            fontCorpoNG));
                            cellTitileTable.setPaddingTop(5f);
                            cellTitileTable.setHorizontalAlignment(
                                    (alignment.containsKey(j)) ? alignment.get(j).i : PdfPCell.ALIGN_LEFT);
                            BaseColor colorAzul = new BaseColor(255, 255, 255);
                            cellTitileTable.setBackgroundColor(colorAzul);
                            cellTitileTable.setPaddingBottom(5f);
                            tableTotal_t.addCell(cellTitileTable);
                        }
                    }
                    documento.add(tableTotal_t);
                }
            }
        }
        documento.close();
        no = false;
        nomeNo = "";
        dI = null;
        dF = null;
        paramFilterOculta = -1;
        removeItem = new int[] {};
        renameItem = new HashMap<>();
        alignment = new HashMap<>();
        arrValoresTotal = new int[] {};
        valoresTotal = new String[] {};
        RequestContext.getCurrentInstance().execute("openAllDocument('" + reString + "')");
        return reString;
    } catch (BadElementException | IOException ex) {
        Logger.getLogger(GenericPDFs.class.getName()).log(Level.SEVERE, null, ex);
        return "";
    } catch (DocumentException ex) {
        Logger.getLogger(GenericPDFs.class.getName()).log(Level.SEVERE, null, ex);
        return "";
    }
}

From source file:Export.SeguroAPG.java

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

public String criarDoc(String numApolice, String numCliente, Contrato c, CargaMaritimaBean cm, String user,
        String arquivo) {/*  w  w  w.java  2s. c  o  m*/
    try {
        SimpleDateFormat sdf = new SimpleDateFormat("dd-MM-yyyy");
        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);
        Font fontUK = FontFactory.getFont(Fontes.FONTB, BaseFont.WINANSI, BaseFont.EMBEDDED, 5.5f, Font.ITALIC);

        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(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);
        Paragraph pUK = new Paragraph(new Phrase("", fontCorpo));
        pUK.add(new Phrase("Formulario de SEguro Carga Maritma".toUpperCase(), fontCorpoNGT));
        pUK.add(new Phrase("\nMarine cargo policy schedule".toUpperCase(), fontUK));
        PdfPCell cellTitulo = new PdfPCell(pUK);
        cellTitulo.setBorder(0);
        cellTitulo.setHorizontalAlignment(Element.ALIGN_CENTER);
        pTableTitulo.addCell(cellTitulo);
        pTableTitulo.addCell(cellNull);
        pTableTitulo.addCell(cellNull);

        ClienteI ci = new ClienteI(numCliente);

        pUK = new Paragraph(new Phrase("", fontCorpo));
        pUK.add(new Phrase("1 - Informaes do Segurado".toUpperCase(), fontCorpoNG));
        pUK.add(new Phrase("\n1 - information Insured".toUpperCase(), fontUK));
        PdfPCell cellTituloTsbleSegurado = new PdfPCell(pUK);
        cellTituloTsbleSegurado.setBorder(0);

        Paragraph pCl = new Paragraph();
        pCl.add(new Phrase("-" + ci.getNOMEL_(), fontCorpo));
        pCl.add(new Phrase(ci.getNOME_(), fontCorpoN));
        pCl.add(new Phrase("\nNAME", fontUK));
        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));
        pCl.add(new Phrase("Address".toUpperCase(), fontUK));
        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));
        pCl.add(new Phrase("occupation".toUpperCase(), fontUK));
        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));
        pCl.add(new Phrase("\nworkplace".toUpperCase(), fontUK));
        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);

        pUK = new Paragraph(new Phrase("", fontCorpo));
        pUK.add(new Phrase("3 - Informaes do Seguro".toUpperCase(), fontCorpoNG));
        pUK.add(new Phrase("\n3 - Insurance Information".toUpperCase(), fontUK));
        PdfPCell cellTiltuloSegro = new PdfPCell(pUK);
        cellTiltuloSegro.setBorder(0);

        pUK = new Paragraph(new Phrase("", fontCorpo));
        pUK.add(new Phrase("N Aplice : ".toUpperCase() + numApolice, fontCorpoNG));
        pUK.add(new Phrase("\npolicy no".toUpperCase(), fontUK));
        PdfPCell cellApolice = new PdfPCell(pUK);
        cellApolice.setBorder(0);

        pUK = new Paragraph(new Phrase("", fontCorpo));
        pUK.add(new Phrase("VIAGEM ou Periodo Do Seguro: ".toUpperCase()
                + ((c.getDataInicio() != null) ? sdf.format(c.getDataInicio()) : "") + "  "
                + ((c.getDataFim() != null) ? sdf.format(c.getDataFim()) : "")));
        pUK.add(new Phrase("\nvoyage or period of insurance".toUpperCase(), fontUK));
        PdfPCell cellPeriodo = new PdfPCell(pUK);
        cellPeriodo.setBorder(0);

        pUK = new Paragraph(new Phrase("", fontCorpo));
        pUK.add(new Phrase("Montante Segurado: ".toUpperCase() + c.getPremioLiquidoMoeda(), fontCorpo));
        pUK.add(new Phrase("\namount insured hereunder".toUpperCase(), fontUK));
        PdfPCell cellMontanteSegurado = new PdfPCell(pUK);
        cellMontanteSegurado.setBorder(0);

        pUK = new Paragraph(new Phrase("", fontCorpo));
        pUK.add(new Phrase("Premio: ".toUpperCase() + c.getPrimeiroPremio(), fontCorpo));
        pUK.add(new Phrase("\npremium".toUpperCase(), fontUK));
        PdfPCell cellPremio = new PdfPCell(pUK);
        cellPremio.setBorder(0);

        pUK = new Paragraph(new Phrase("", fontCorpo));
        pUK.add(new Phrase("Franquia: ".toUpperCase() + c.getFranquia(), fontCorpo));
        pUK.add(new Phrase("\nfranchise".toUpperCase(), fontUK));
        PdfPCell cellFranquia = new PdfPCell(pUK);
        cellFranquia.setBorder(0);

        pUK = new Paragraph(new Phrase("", fontCorpo));
        pUK.add(new Phrase("Condies e Garantia: ".toUpperCase() + numApolice, fontCorpo));
        pUK.add(new Phrase("\nconditions & warrantes".toUpperCase(), fontUK));
        PdfPCell cellCondicaoEGarantia = new PdfPCell(pUK);
        cellCondicaoEGarantia.setBorder(0);

        PdfPCell cellNotas = new PdfPCell();
        Paragraph pTituloIntrucaoes = new Paragraph("INTRUDES PARA INSPECO", fontCorpoN);
        pTituloIntrucaoes.add(new Phrase("\nINSTRUTOIN FOR SERVEY", fontUK));

        Paragraph pIntrucaoes = new Paragraph(
                "No Caso de perda ou dano que possa envolver uma reclamao ao abrigo deste seguro, aviso imediato do dano ser dado  Seguradoura em um relatrio de inspeo obtido do inspetor ou por indicado.",
                fontCorpo);
        pIntrucaoes.add(new Phrase(
                "\nIn the envent of loss or damage which may involve a claim this insurance immediate notice of damage should be given to the assurers and survey report obtained from the survey or named herein.",
                fontUK));

        Paragraph pTituloReclamacoes = new Paragraph("RECLAMAES", fontCorpoN);
        pTituloReclamacoes.add(new Phrase("\nclaims".toUpperCase(), fontUK));

        Paragraph pReclamacoes = new Paragraph(
                "No caso reclamao de qualquer reclamao legal resultante sobre a aplice, fica acordado que as mesma sero resolvidas pela Coporao ou a reclamao estabelecida por agente indicado mediante entrega pela Corporao ou a sujeito s Leis e pratica Inglesas mas na Jurisdio Sontomense.",
                fontCorpo);
        pReclamacoes.add(new Phrase(
                "\nIn case of any lawful claim arising on the policy it is agreed that the same shall be settled by the claims settling agente named herein upon serrender of the orignal Policy duly signed. This insurance shall be subject to English Law and Practice but So Tom Jurisdiction.",
                fontUK));

        cellNotas.addElement(pTituloIntrucaoes);
        cellNotas.addElement(pIntrucaoes);
        cellNotas.addElement(cellNull.getPhrase());
        cellNotas.addElement(pTituloReclamacoes);
        cellNotas.addElement(pReclamacoes);
        cellNotas.setBorder(0);

        pTableSeguro.addCell(cellTiltuloSegro);
        pTableSeguro.addCell(cellApolice);
        pTableSeguro.addCell(cellPeriodo);
        pTableSeguro.addCell(cellMontanteSegurado);
        pTableSeguro.addCell(cellPremio);
        pTableSeguro.addCell(cellFranquia);
        pTableSeguro.addCell(cellCondicaoEGarantia);
        pTableSeguro.addCell(cellNull);
        pTableSeguro.addCell(cellNotas);

        PdfPTable pTableDadosTitulo = new PdfPTable(1);
        PdfPCell cellDadosTitulo = new PdfPCell(new Phrase());
        cellDadosTitulo.setBorder(0);

        pUK = new Paragraph(new Phrase("", fontCorpo));
        pUK.add(new Phrase("I2 - nformao do Navio: ".toUpperCase() + c.getFranquia(), fontCorpoNG));
        pUK.add(new Phrase("\n2 - Ship Information".toUpperCase(), fontUK));
        Paragraph pInfoTitulo = pUK;

        pUK = new Paragraph(new Phrase("", fontCorpo));
        pUK.add(new Phrase("Navio: ".toUpperCase() + cm.getCargaMaritima().getNomeNavio(), fontCorpo));
        pUK.add(new Phrase("\nShip".toUpperCase(), fontUK));
        Paragraph pInfoShip = pUK;

        pUK = new Paragraph(new Phrase("", fontCorpo));
        pUK.add(new Phrase("Mercadoria SeGurada: ".toUpperCase() + cm.getCargaMaritima().getDecricaoMecadoria(),
                fontCorpo));
        pUK.add(new Phrase("\nSubject - matter insured".toUpperCase(), fontUK));
        Paragraph pInfo1 = pUK;

        cellDadosTitulo.addElement(pInfoTitulo);
        cellDadosTitulo.addElement(pInfoShip);
        cellDadosTitulo.addElement(pInfo1);
        cellDadosTitulo.addElement(cellNull.getPhrase());
        pTableDadosTitulo.addCell(cellDadosTitulo);

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

        //            File ff= new File("Documentos\\"+user+"\\Seguro Carga Maritima\\");
        //            ff.mkdirs();
        //            ff =new File(ff.getAbsoluteFile()+"\\"+"Formulario Seguro Carga Maritima "+sdf1.format(new Date())+".pdf");

        File ff = new File(arquivo + "/" + user + "/Seguro Carga Maritima/");

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

        reString = "../Documentos/" + user + "/Seguro Carga Maritima/" + "Formulario Seguro Carga Maritima "
                + 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(pTableTitulo);
        documento.add(pTableNull);
        documento.add(pTableCliente);
        documento.add(pTableNull);
        documento.add(pTableDadosTitulo);
        documento.add(pTableNull);
        documento.add(pTableSeguro);
        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

public static void criarDoc(ViagemBean vb, String numCriente, String user, String arquivo, Contrato c) {
    try {//from   w  w  w.java2 s .co m
        Document documento = new Document();
        documento.setPageSize(PageSize.A4);
        documento.setMargins(10f, 10f, 35f, 5f);
        File ff = new File(arquivo + "/" + user + "/Seguro Viagem/");
        ff.mkdirs();
        String Ddata = sdf.format(new Date());
        ff = new File(ff.getAbsoluteFile() + "/" + "Doc Seguro Viagem-r " + Ddata + ".pdf");
        String reString = "../Documentos/" + user + "/Seguro Viagem/" + "Doc Seguro Viagem-r " + Ddata + ".pdf";
        FileOutputStream 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();
        for (int i = 0; i < vb.getInfoPessoaSegurada().size(); i++) {
            criarDoc(documento, vb, numCriente, user, c, i);
        }
        documento.close();

        RequestContext.getCurrentInstance().execute("openAllDocument('" + reString + "')");
    } catch (BadElementException | IOException ex) {
        Logger.getLogger(SeguroCoberturaViagem.class.getName()).log(Level.SEVERE, null, ex);
    } catch (DocumentException ex) {
        Logger.getLogger(SeguroCoberturaViagem.class.getName()).log(Level.SEVERE, null, ex);
    }
}

From source file:Export.SeguroIncendio.java

public String criarDoc(String numApolice, String numCliente, Contrato c, IncendioBean ib, String user,
        String sigla, String arquivo) {
    try {/* w w w .  j  a  v a2  s .c o  m*/
        SimpleDateFormat sdf = new SimpleDateFormat("dd 'DE' MMMM 'DE' yyyy", new Locale("pt", "BR"));
        SimpleDateFormat sdfS = new SimpleDateFormat("dd/MM/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, 9f);
        //            Font fontTableCo= new Font(Font.FontFamily.HELVETICA,9f , Font.NORMAL);
        //            Font fontTableCa= new Font(Font.FontFamily.HELVETICA,9.5f , Font.BOLD);
        Font fontCorpoP = FontFactory.getFont(Fontes.FONT, BaseFont.WINANSI, BaseFont.EMBEDDED, 8f);
        Font fontCorpoN = FontFactory.getFont(Fontes.FONTB, BaseFont.WINANSI, BaseFont.EMBEDDED, 9f);
        //            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);
        Font fontUK = FontFactory.getFont(Fontes.FONT, BaseFont.WINANSI, BaseFont.EMBEDDED, 5.5f, Font.ITALIC);

        PdfPTable pTableEmpresaPricipal = new PdfPTable(new float[] { 25f, 75f });
        pTableEmpresaPricipal.setWidthPercentage(90f);
        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);
        pTableCliente.setWidthPercentage(90f);

        Phrase phraseUK;

        PdfPTable pTableTitulo = new PdfPTable(1);
        Paragraph pTitulo = new Paragraph("", fontCorpo);
        phraseUK = new Phrase("Formulario de SEguro Incndio".toUpperCase(), fontCorpoNGT);
        pTitulo.add(phraseUK);
        phraseUK = new Phrase("\nfire insurance schedule".toUpperCase(), fontUK);
        pTitulo.add(phraseUK);
        PdfPCell cellTitulo = new PdfPCell(pTitulo);
        cellTitulo.setBorder(0);
        cellTitulo.setHorizontalAlignment(Element.ALIGN_CENTER);
        pTableTitulo.addCell(cellTitulo);

        ClienteI ci = new ClienteI(numCliente);

        Paragraph p = new Paragraph("", fontCorpo);
        phraseUK = new Phrase("1 - Informaes Cliente".toUpperCase(), fontCorpoNGT);
        p.add(phraseUK);
        phraseUK = new Phrase("\n(1 - Customer information)".toUpperCase(), fontUK);
        p.add(phraseUK);
        PdfPCell cellTituloTsbleSegurado = new PdfPCell(p);
        cellTituloTsbleSegurado.setBorder(0);

        Paragraph pCl = new Paragraph();
        pCl.add(new Phrase(ci.getNOMEL_(), fontCorpo));
        pCl.add(new Phrase(ci.getNOME_(), fontCorpoN));
        pCl.add(new Phrase("\n(THE INSURED)", fontUK));
        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));
        pCl.add(new Phrase("\nAddress".toUpperCase(), fontUK));
        PdfPCell cellEndereco = new PdfPCell(pCl);
        cellEndereco.setBorder(0);

        pCl = new Paragraph();
        pCl.add(new Phrase("A SEGURADORA: ", fontCorpo));
        pCl.add(new Phrase("NICON SEGUROS S.A", fontCorpoN));
        pCl.add(new Phrase("\n(THE COMPANY)", fontUK));
        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));
        pCl.add(new Phrase("\n(occupation)".toUpperCase(), fontUK));
        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));
        pCl.add(new Phrase("\n(workplace)", fontUK));
        PdfPCell cellLocalTrabalho = new PdfPCell(pCl);
        cellLocalTrabalho.setBorder(0);

        cellTituloTsbleSegurado.setPaddingBottom(8f);
        pTableCliente.addCell(cellTituloTsbleSegurado);
        cellNome.setPaddingBottom(8f);
        pTableCliente.addCell(cellNome);
        cellEndereco.setPaddingBottom(8f);
        pTableCliente.addCell(cellEndereco);
        cellProfissao.setPaddingBottom(8f);
        pTableCliente.addCell(cellProfissao);
        cellLocalTrabalho.setPaddingBottom(8f);
        pTableCliente.addCell(cellLocalTrabalho);
        cellNCliente.setPaddingBottom(8f);
        pTableCliente.addCell(cellNCliente);
        //            CellData.setPaddingBottom(8f);
        pTableCliente.addCell(cellNull);

        //            PdfPTable pTableDadosTitulo= new PdfPTable(1);
        //            PdfPCell cellDadosTitulo= new PdfPCell(new Phrase());
        //            cellDadosTitulo.setBorder(0);

        Paragraph pInfoTitulo = new Paragraph("".toUpperCase(), fontCorpo);
        phraseUK = new Phrase("2 - Informaes do seguro".toUpperCase(), fontCorpoN);
        pInfoTitulo.add(phraseUK);
        phraseUK = new Phrase("\n(2 - insurance information)".toUpperCase(), fontUK);
        pInfoTitulo.add(phraseUK);

        Paragraph pInfoPro1 = new Paragraph("".toUpperCase(), fontCorpo);
        phraseUK = new Phrase("Valor Da propriedade segurada: ".toUpperCase(), fontCorpo);
        pInfoPro1.add(phraseUK);
        phraseUK = new Phrase(c.getPremioLiquidoMoeda().toUpperCase(), fontCorpo);
        pInfoPro1.add(phraseUK);
        phraseUK = new Phrase("\n(insured property value)".toUpperCase(), fontUK);
        pInfoPro1.add(phraseUK);

        Paragraph pInfoPro = new Paragraph("".toUpperCase(), fontCorpo);
        phraseUK = new Phrase("Endereo da propriedade segurada: ".toUpperCase(), fontCorpo);
        pInfoPro.add(phraseUK);
        phraseUK = new Phrase(ib.getIncendio().getEndereco(), fontCorpo);
        pInfoPro.add(phraseUK);
        phraseUK = new Phrase("\n(property address insured)".toUpperCase(), fontUK);
        pInfoPro.add(phraseUK);

        Paragraph pInfo1 = new Paragraph("".toUpperCase(), fontCorpoN);
        phraseUK = new Phrase("Riscos Bascos:".toUpperCase(), fontCorpoN);
        pInfo1.add(phraseUK);
        phraseUK = new Phrase("\n(basic risks)".toUpperCase(), fontUK);
        pInfo1.add(phraseUK);

        Paragraph pInfo2 = new Paragraph("".toUpperCase(), fontCorpo);
        phraseUK = new Phrase("-Edifcio".toUpperCase(), fontCorpo);
        pInfo2.add(phraseUK);
        phraseUK = new Phrase("\n(Building)".toUpperCase(), fontUK);
        pInfo2.add(phraseUK);

        Paragraph pInfo3 = new Paragraph("".toUpperCase(), fontCorpo);
        phraseUK = new Phrase("-Maquinaria: ".toUpperCase() + testeUsado(""), fontCorpo);
        pInfo3.add(phraseUK);
        phraseUK = new Phrase("\n(Machinery)".toUpperCase(), fontUK);
        pInfo3.add(phraseUK);

        Paragraph pInfo4 = new Paragraph("".toUpperCase(), fontCorpo);
        phraseUK = new Phrase("-Contedos".toUpperCase(), fontCorpo);
        pInfo4.add(phraseUK);
        phraseUK = new Phrase("\n(contents)".toUpperCase(), fontUK);
        pInfo4.add(phraseUK);

        Paragraph pInfo5 = new Paragraph("".toUpperCase(), fontCorpo);
        phraseUK = new Phrase("-Reserva: ".toUpperCase() + testeUsado(""), fontCorpo);
        pInfo5.add(phraseUK);
        phraseUK = new Phrase("\n(STOKS) NA".toUpperCase(), fontUK);
        pInfo5.add(phraseUK);

        Paragraph pInfo6 = new Paragraph("", fontCorpo);
        phraseUK = new Phrase("-Risco Para com Terceiro/Vizinhos: ".toUpperCase() + testeUsado(""), fontCorpo);
        pInfo6.add(phraseUK);
        phraseUK = new Phrase("\n(third party/neighbour's risk )".toUpperCase(), fontUK);
        pInfo6.add(phraseUK);

        Paragraph pInfo7 = new Paragraph("".toUpperCase(), fontCorpo);
        phraseUK = new Phrase("-Renda: ".toUpperCase() + testeUsado(""), fontCorpo);
        pInfo7.add(phraseUK);
        phraseUK = new Phrase("\n(RENT)".toUpperCase(), fontUK);
        pInfo7.add(phraseUK);

        Paragraph pInfo8 = new Paragraph("".toUpperCase(), fontCorpo);
        phraseUK = new Phrase("-Despesas com perito: ".toUpperCase() + testeUsado(""), fontCorpo);
        pInfo8.add(phraseUK);
        phraseUK = new Phrase("\n(expert fees)".toUpperCase(), fontUK);
        pInfo8.add(phraseUK);

        Paragraph pInfo9 = new Paragraph("".toUpperCase(), fontCorpo);
        phraseUK = new Phrase("-risco especiais: ".toUpperCase() + testeUsado(""), fontCorpo);
        pInfo9.add(phraseUK);
        phraseUK = new Phrase("\n(Special risk)".toUpperCase(), fontUK);
        pInfo9.add(phraseUK);

        Paragraph pInfo10 = new Paragraph("".toUpperCase(), fontCorpo);
        phraseUK = new Phrase("-impactos: ".toUpperCase() + testeUsado(""), fontCorpo);
        pInfo10.add(phraseUK);
        phraseUK = new Phrase("\n(impacts)".toUpperCase(), fontUK);
        pInfo10.add(phraseUK);

        Paragraph pInfo11 = new Paragraph("".toUpperCase(), fontCorpo);
        phraseUK = new Phrase("-motim & greve".toUpperCase(), fontCorpo);
        pInfo11.add(phraseUK);
        phraseUK = new Phrase("\n(Riot & Strike)".toUpperCase(), fontUK);
        pInfo11.add(phraseUK);

        Paragraph pInfo12 = new Paragraph("".toUpperCase(), fontCorpo);
        phraseUK = new Phrase(
                "-incndio florestal: ".toUpperCase() + testeUsado(ib.getIncendioRisco().getIncendioFId()),
                fontCorpo);
        pInfo12.add(phraseUK);
        phraseUK = new Phrase("\n(bush fire)".toUpperCase(), fontUK);
        pInfo12.add(phraseUK);

        Paragraph pInfo12_1 = new Paragraph("".toUpperCase(), fontCorpo);
        phraseUK = new Phrase("-exploso de tubos".toUpperCase(), fontCorpo);
        pInfo12_1.add(phraseUK);
        phraseUK = new Phrase("\n(Burst pipes)".toUpperCase(), fontUK);
        pInfo12_1.add(phraseUK);

        Paragraph pInfo12_2 = new Paragraph("".toUpperCase(), fontCorpo);
        phraseUK = new Phrase(
                "-danos maliciosos: ".toUpperCase() + testeUsado(ib.getIncendioRisco().getDanoId()), fontCorpo);
        pInfo12_2.add(phraseUK);
        phraseUK = new Phrase("\n(malicious damage)".toUpperCase(), fontUK);
        pInfo12_2.add(phraseUK);

        Paragraph pInfo13 = new Paragraph("".toUpperCase(), fontCorpo);
        phraseUK = new Phrase("-Exploso: ".toUpperCase() + testeUsado(ib.getIncendioRisco().getExplosaoId()),
                fontCorpo);
        pInfo13.add(phraseUK);
        phraseUK = new Phrase("\n(Explosion)".toUpperCase(), fontUK);
        pInfo13.add(phraseUK);

        Paragraph pInfo14 = new Paragraph("".toUpperCase(), fontCorpo);
        phraseUK = new Phrase("-terramoto: ".toUpperCase() + testeUsado(ib.getIncendioRisco().getTerramotoId()),
                fontCorpo);
        pInfo14.add(phraseUK);
        phraseUK = new Phrase("\n(earthquake)".toUpperCase(), fontUK);
        pInfo14.add(phraseUK);

        Paragraph pInfo14_1 = new Paragraph("", fontCorpo);
        phraseUK = new Phrase(
                "-Queda de aeronave: ".toUpperCase() + testeUsado(ib.getIncendioRisco().getRiscoAviaoId()),
                fontCorpo);
        pInfo14_1.add(phraseUK);
        phraseUK = new Phrase("\n(plane crash)".toUpperCase(), fontUK);
        pInfo14_1.add(phraseUK);

        Paragraph pInfo15 = new Paragraph("", fontCorpo);
        phraseUK = new Phrase("-trovoada, tempestade e inundao: ".toUpperCase()
                + testeUsado(ib.getIncendioRisco().getTempestadeId()), fontCorpo);
        pInfo15.add(phraseUK);
        phraseUK = new Phrase("\n(storm, tempest and flood)".toUpperCase(), fontUK);
        pInfo15.add(phraseUK);

        PdfPCell CellData = new PdfPCell(pInfoTitulo);
        CellData.setBorder(0);
        CellData.setPaddingBottom(8f);
        pTableCliente.addCell(CellData);

        CellData = new PdfPCell(pInfoPro);
        CellData.setBorder(0);
        CellData.setPaddingBottom(8f);
        pTableCliente.addCell(CellData);

        CellData = new PdfPCell(pInfoPro1);
        CellData.setBorder(0);
        CellData.setPaddingBottom(8f);
        pTableCliente.addCell(CellData);
        //            cellDadosTitulo.addElement(pInfoPro1);

        CellData = new PdfPCell(pInfo1);
        CellData.setBorder(0);
        CellData.setPaddingBottom(8f);
        pTableCliente.addCell(CellData);
        //            cellDadosTitulo.addElement(pInfo1);

        CellData = new PdfPCell(pInfo2);
        CellData.setBorder(0);
        CellData.setPaddingBottom(8f);
        pTableCliente.addCell(CellData);
        //            cellDadosTitulo.addElement(pInfo2);

        CellData = new PdfPCell(pInfo3);
        CellData.setBorder(0);
        CellData.setPaddingBottom(8f);
        pTableCliente.addCell(CellData);
        //            cellDadosTitulo.addElement(pInfo3);

        CellData = new PdfPCell(pInfo4);
        CellData.setBorder(0);
        pTableCliente.addCell(CellData);
        //            cellDadosTitulo.addElement(pInfo4);

        CellData = new PdfPCell(pInfo5);
        CellData.setBorder(0);
        CellData.setPaddingBottom(8f);
        pTableCliente.addCell(CellData);
        //            cellDadosTitulo.addElement(pInfo5);

        CellData = new PdfPCell(pInfo6);
        CellData.setBorder(0);
        pTableCliente.addCell(CellData);
        //            cellDadosTitulo.addElement(pInfo6);

        CellData = new PdfPCell(pInfo7);
        CellData.setBorder(0);
        CellData.setPaddingBottom(8f);
        pTableCliente.addCell(CellData);
        //            cellDadosTitulo.addElement(pInfo7);

        CellData = new PdfPCell(pInfo8);
        CellData.setBorder(0);
        pTableCliente.addCell(CellData);
        //            cellDadosTitulo.addElement(pInfo8);

        CellData = new PdfPCell(pInfo9);
        CellData.setBorder(0);
        CellData.setPaddingBottom(8f);
        pTableCliente.addCell(CellData);
        //            cellDadosTitulo.addElement(pInfo9);

        CellData = new PdfPCell(pInfo10);
        CellData.setBorder(0);
        CellData.setPaddingBottom(8f);
        pTableCliente.addCell(CellData);
        //            cellDadosTitulo.addElement(pInfo10);

        CellData = new PdfPCell(pInfo11);
        CellData.setBorder(0);
        CellData.setPaddingBottom(8f);
        pTableCliente.addCell(CellData);
        //            cellDadosTitulo.addElement(pInfo11);

        CellData = new PdfPCell(pInfo12);
        CellData.setBorder(0);
        CellData.setPaddingBottom(8f);
        pTableCliente.addCell(CellData);
        //            cellDadosTitulo.addElement(pInfo12);

        CellData = new PdfPCell(pInfo12_1);
        CellData.setBorder(0);
        CellData.setPaddingBottom(8f);
        pTableCliente.addCell(CellData);
        //            cellDadosTitulo.addElement(pInfo12_1);

        CellData = new PdfPCell(pInfo12_2);
        CellData.setBorder(0);
        CellData.setPaddingBottom(8f);
        pTableCliente.addCell(CellData);
        //            cellDadosTitulo.addElement(pInfo12_2);

        CellData = new PdfPCell(pInfo13);
        CellData.setBorder(0);
        CellData.setPaddingBottom(8f);
        pTableCliente.addCell(CellData);
        //            cellDadosTitulo.addElement(pInfo13);

        CellData = new PdfPCell(pInfo14);
        CellData.setBorder(0);
        CellData.setPaddingBottom(8f);
        pTableCliente.addCell(CellData);
        //            cellDadosTitulo.addElement(pInfo14);

        CellData = new PdfPCell(pInfo14_1);
        CellData.setBorder(0);
        CellData.setPaddingBottom(8f);
        pTableCliente.addCell(CellData);
        //            cellDadosTitulo.addElement(pInfo14_1);

        CellData = new PdfPCell(pInfo15);
        CellData.setBorder(0);
        CellData.setPaddingBottom(8f);
        pTableCliente.addCell(CellData);

        pTableCliente.addCell(cellNull);
        //            cellDadosTitulo.addElement(pInfo15);

        //            PdfPCell cellSeguro= new PdfPCell(new Phrase());
        //            cellSeguro.setBorder(0);
        Paragraph pSegTitulo = new Paragraph("".toUpperCase(), fontCorpoN);
        phraseUK = new Phrase("3 - Informaes Montante e periodo de Segurado".toUpperCase(), fontCorpoN);
        pSegTitulo.add(phraseUK);
        phraseUK = new Phrase("\n(3 - Amount information and period of Insured)".toUpperCase(), fontUK);
        pSegTitulo.add(phraseUK);

        Paragraph pSeg1 = new Paragraph("".toUpperCase(), fontCorpo);
        phraseUK = new Phrase("perodo Seguro de: ".toUpperCase(), fontCorpo);
        pSeg1.add(phraseUK);
        phraseUK = new Phrase(sdfS.format(c.getDataInicio()) + " at ".toUpperCase()
                + sdfS.format(c.getDataFim()) + " (16H00 HORAS DA DATA DE EXPIRAo)".toUpperCase(),
                fontCorpoN);
        pSeg1.add(phraseUK);
        phraseUK = new Phrase(
                "\n(preiod of insurance)     (from)     (to)     (4 o'clock in the afternoon of the expiring date)"
                        .toUpperCase(),
                fontUK);
        pSeg1.add(phraseUK);

        Paragraph pSeg2 = new Paragraph("", fontCorpo);
        phraseUK = new Phrase("Data Da renovao: ".toUpperCase(), fontCorpo);
        pSeg2.add(phraseUK);
        phraseUK = new Phrase(
                ((c.getDataRenovacao() == null) ? "" : sdfS.format(c.getDataRenovacao())).toUpperCase(),
                fontCorpo);
        pSeg2.add(phraseUK);
        phraseUK = new Phrase("\n(renewal date)".toUpperCase(), fontUK);
        pSeg2.add(phraseUK);

        //            Paragraph pSeg3= new Paragraph("   Valo".toUpperCase(), fontCorpo);
        //            Paragraph pSeg4= new Paragraph("   Data de Renovao: ".toUpperCase()+, fontCorpo);

        Paragraph pSeg5 = new Paragraph("", fontCorpo);
        phraseUK = new Phrase("valor do primeiro prMio: ".toUpperCase(), fontCorpo);
        pSeg5.add(phraseUK);
        phraseUK = new Phrase(c.getPrimeiroPremio(), fontCorpo);
        pSeg5.add(phraseUK);
        phraseUK = new Phrase("\n(first premiun)".toUpperCase(), fontUK);
        pSeg5.add(phraseUK);

        Paragraph pSeg6 = new Paragraph("".toUpperCase(), fontCorpo);
        phraseUK = new Phrase("Valor do Prmio Anual: ".toUpperCase(), fontCorpo);
        pSeg6.add(phraseUK);
        phraseUK = new Phrase(c.getPremioAnual(), fontCorpo);
        pSeg6.add(phraseUK);
        phraseUK = new Phrase("\n(annuals premium)".toUpperCase(), fontUK);
        pSeg6.add(phraseUK);

        Paragraph pSeg7 = new Paragraph("".toUpperCase(), fontCorpo);
        phraseUK = new Phrase("valor do prmio bruto: ".toUpperCase(), fontCorpo);
        pSeg7.add(phraseUK);
        phraseUK = new Phrase(c.getPremioBrutoMoeda(), fontCorpo);
        pSeg7.add(phraseUK);
        phraseUK = new Phrase("\n(gross premium)".toUpperCase(), fontUK);
        pSeg7.add(phraseUK);

        Paragraph pSeg8 = new Paragraph("".toUpperCase(), fontCorpo);
        phraseUK = new Phrase("menos (SE aplicvel) No".toUpperCase(), fontCorpo);
        pInfo14_1.add(phraseUK);
        phraseUK = new Phrase("\nLESS (if applicable)".toUpperCase(), fontUK);
        pInfo14_1.add(phraseUK);

        Paragraph pSeg9 = new Paragraph("".toUpperCase(), fontCorpo);
        phraseUK = new Phrase("a adicionar: impst. @ 5% + IMpost. sobre selo @ 0.6% = ".toUpperCase(),
                fontCorpo);
        pSeg9.add(phraseUK);
        phraseUK = new Phrase(" ", fontCorpo);
        pSeg9.add(phraseUK);
        phraseUK = new Phrase("\n(add)".toUpperCase(), fontUK);
        pSeg9.add(phraseUK);

        Paragraph pSeg10 = new Paragraph("".toUpperCase(), fontCorpo);
        phraseUK = new Phrase("Valor do prmio liquido a pagar: ".toUpperCase(), fontCorpo);
        pSeg10.add(phraseUK);
        phraseUK = new Phrase(c.getPremioLiquidoMoeda(), fontCorpo);
        pSeg10.add(phraseUK);
        phraseUK = new Phrase("\n(net premium payable)".toUpperCase(), fontUK);
        pSeg10.add(phraseUK);

        //            Paragraph pSeg11= new Paragraph("   outras condies/memorado                                                                              por favor, volte a pgina".toUpperCase(), fontCorpo);
        Paragraph pSeg13 = new Paragraph("   ".toUpperCase(), fontCorpo);

        Paragraph pSegData = new Paragraph("", fontCorpo);
        phraseUK = new Phrase("Data Em: ".toUpperCase(), fontCorpo);
        pSegData.add(phraseUK);
        phraseUK = new Phrase(sdf.format(new Date()).toUpperCase(), fontCorpo);
        pSegData.add(phraseUK);
        phraseUK = new Phrase("\n(DATE IN)".toUpperCase(), fontUK);
        pSegData.add(phraseUK);

        CellData = new PdfPCell(pSegTitulo);
        CellData.setBorder(0);
        pTableCliente.addCell(CellData);
        //            cellSeguro.addElement(pSegTitulo);

        CellData = new PdfPCell(pSeg1);
        CellData.setBorder(0);
        CellData.setPaddingBottom(8f);
        pTableCliente.addCell(CellData);
        //            cellSeguro.addElement(pSeg1);

        CellData = new PdfPCell(pSeg2);
        CellData.setBorder(0);
        CellData.setPaddingBottom(8f);
        pTableCliente.addCell(CellData);
        //            cellSeguro.addElement(pSeg2);

        //            cellSeguro.addElement(pSeg3);
        //            cellSeguro.addElement(pSeg4);

        CellData = new PdfPCell(pSeg5);
        CellData.setBorder(0);
        CellData.setPaddingBottom(8f);
        pTableCliente.addCell(CellData);
        //            cellSeguro.addElement(pSeg5);

        CellData = new PdfPCell(pSeg6);
        CellData.setBorder(0);
        CellData.setPaddingBottom(8f);
        pTableCliente.addCell(CellData);
        //            cellSeguro.addElement(pSeg6);

        CellData = new PdfPCell(pSeg7);
        CellData.setBorder(0);
        CellData.setPaddingBottom(8f);
        pTableCliente.addCell(CellData);
        //            cellSeguro.addElement(pSeg7);

        CellData = new PdfPCell(pSeg8);
        CellData.setBorder(0);
        CellData.setPaddingBottom(8f);
        pTableCliente.addCell(CellData);
        //            cellSeguro.addElement(pSeg8);

        CellData = new PdfPCell(pSeg9);
        CellData.setBorder(0);
        CellData.setPaddingBottom(8f);
        pTableCliente.addCell(CellData);

        //            cellSeguro.addElement(pSeg9);

        CellData = new PdfPCell(pSeg10);
        CellData.setBorder(0);
        CellData.setPaddingBottom(8f);
        pTableCliente.addCell(CellData);
        //            cellSeguro.addElement(pSeg10);

        //            cellSeguro.addElement(pSeg11);

        CellData = new PdfPCell(pSeg13);
        CellData.setBorder(0);
        CellData.setPaddingBottom(8f);
        pTableCliente.addCell(CellData);
        //            cellSeguro.addElement(pSeg13);

        CellData = new PdfPCell(pSegData);
        CellData.setBorder(0);
        pTableCliente.addCell(CellData);
        //            cellSeguro.addElement(pSegData);

        //            pTableCliente.addCell(cellSeguro);

        PdfPTable pTableAssinaturaTitulo = new PdfPTable(1);
        PdfPTable pTableAssinatura = new PdfPTable(new float[] { 50f, 50f });

        Paragraph p1 = new Paragraph(new Phrase("Assinaturas".toUpperCase(), fontCorpoN));
        p1.add(new Phrase("\nsignature".toUpperCase(), fontUK));

        PdfPCell cellAssinatora = new PdfPCell(p1);
        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);

        p1 = new Paragraph(new Phrase("para nicon Seguro sa stp".toUpperCase(), fontCorpoP));
        p1.add(new Phrase("\nFor nicon seguros sa stp".toUpperCase(), fontUK));

        PdfPCell celllinha11 = new PdfPCell(p1);
        celllinha11.setBorder(0);
        celllinha11.setHorizontalAlignment(Element.ALIGN_CENTER);

        p1 = new Paragraph(new Phrase("o segurado".toUpperCase(), fontCorpoP));
        p1.add(new Phrase("\nthe insured".toUpperCase(), fontUK));
        PdfPCell celllinha21 = new PdfPCell(p1);
        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, 60f);

        File ff = new File(arquivo + "/" + user + "/Seguro Incendio/");

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

        reString = "../Documentos/" + user + "/Seguro Incendio/" + "Formulario Seguro Incendio " + 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);
        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.SeguroMaritimo.java

public String criarDoc(String numApolice, String numCliente, MaritimoBean mb, Contrato c, String user,
        String moeda, String arquivo) {
    try {//  w  ww  .j  a  va  2  s  .c om
        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 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);
        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 Maritimo".toUpperCase());
        pTitulo.getFont().setStyle(Font.BOLD);
        pTitulo.getFont().setFamily(Font.FontFamily.COURIER.name());
        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("3 - Montante Segurado/Limete de Responsabilidade".toUpperCase(), fontCorpoNG));
        cellTiltuloSegro.setBorder(0);
        PdfPCell cellApolice = new PdfPCell(
                new Phrase("   N Aplice: ".toUpperCase() + numApolice, fontCorpo));
        cellApolice.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 cellDataNota = new PdfPCell(new Phrase(
                "   Ambas as datas incluidas, para os periodos adicionados que possam ser mutuamente acordadas"
                        .toUpperCase(),
                fontCorpo));
        cellDataNota.setBorder(0);
        PdfPCell cellCorpoMotor = new PdfPCell(new Phrase(
                "   Para Corpo e o motor (Excluindo risco de guerra): ".toUpperCase() + c.getPrimeiroPremio(),
                fontCorpo));
        cellCorpoMotor.setBorder(0);
        PdfPCell cellParaTerceiro = new PdfPCell(
                new Phrase("   Para terceiros/responsabilidade civil: ", fontCorpo));
        cellParaTerceiro.setBorder(0);
        PdfPCell cellAcidentePessoal = new PdfPCell(
                new Phrase("   Para acidente pessoal ao condutor: ", fontCorpo));
        cellAcidentePessoal.setBorder(0);
        PdfPCell cellTotalPremioAnual = new PdfPCell(
                new Phrase("   Valor Premio Anual: ".toUpperCase() + c.getPremioAnual(), fontCorpo));
        cellTotalPremioAnual.setBorder(0);

        pTableSeguro.addCell(cellTiltuloSegro);
        pTableSeguro.addCell(cellApolice);
        pTableSeguro.addCell(cellPeriodo);
        pTableSeguro.addCell(cellDataNota);
        pTableSeguro.addCell(cellCorpoMotor);
        pTableSeguro.addCell(cellParaTerceiro);
        pTableSeguro.addCell(cellAcidentePessoal);
        pTableSeguro.addCell(cellTotalPremioAnual);

        PdfPTable pTableDadosTitulo = new PdfPTable(1);
        PdfPCell cellDadosTitulo = new PdfPCell(new Phrase());
        cellDadosTitulo.setBorder(0);
        Paragraph pInfoTitulo = new Paragraph("2 - Informaes do(s) Navio(s)".toUpperCase(), fontCorpoN);
        Paragraph pInfoShip = new Paragraph(
                "   1. Navio/Embarcao: ".toUpperCase() + mb.getMaritimo().getNomeNavio(), fontCorpo);
        Paragraph pInfo1 = new Paragraph("      A)MARCA/MODELO (CASSI: ) " + mb.getMaritimo().getMarcaModelo()
                + "/" + mb.getMaritimo().getMarcaMotor(), fontCorpo);
        Paragraph pInfo2 = new Paragraph("   2. TIPO DE CONSTRUO DO NAVIO (i.e Material usado) "
                + mb.getMaritimo().getTipoConstrucao(), fontCorpo);
        Paragraph pInfo3 = new Paragraph("   3. TIPO DE NAVIO: " + mb.getMaritimo().getTipoNavio(), fontCorpo);
        Paragraph pInfo4 = new Paragraph(
                "   4. IDADE DO NAVIO (ano de construo): " + mb.getMaritimo().getIdadeNavio(), fontCorpo);
        Paragraph pInfo5 = new Paragraph(
                "   5. CONDIO ACTUAL DO NAVIO: " + mb.getMaritimo().getCondicaoAtual(), fontCorpo);
        Paragraph pInfo6 = new Paragraph("   6. RELATRIO DE MANUTEMO DOS PROPRIET?RIOS DO NAVIO: ",
                fontCorpo);
        Paragraph pInfo7 = new Paragraph(
                "   7. CLASSE DE ESTATUTO DE RENOVAO: " + mb.getMaritimo().getClasseRenovacao(), fontCorpo);
        Paragraph pInfo8 = new Paragraph("   8. BANDEIRA DO NAVIO: " + mb.getMaritimo().getBandeiraNavio(),
                fontCorpo);
        Paragraph pInfo9 = new Paragraph(
                "   9. USO A QUE SE DISTINA O NAVIO OU COMRCIO: " + mb.getMaritimo().getUsoNavio(),
                fontCorpo);
        Paragraph pInfo10 = new Paragraph("   10. QUANTIDADE/PESO DO " + mb.getMaritimo().getNomeNavio() + " : "
                + mb.getMaritimo().getPeso() + " (LIQUIDO E BRUTO):VER NO RELATRIO", fontCorpo);
        Paragraph pInfo11 = new Paragraph("   11. POTNCIA DO MOTOR", fontCorpo);
        Paragraph pInfo12 = new Paragraph(
                "   12. TIPO DE COMBUST?VEL DO MOTOR DE PROPULSAO: " + mb.getMaritimo().getTipoCombustivel(),
                fontCorpo);
        Paragraph pInfo13 = new Paragraph("   13. NMERO DO MOTOR: " + mb.getMaritimo().getNumMotor(),
                fontCorpo);
        Paragraph pInfo14 = new Paragraph("   14. MARCA DO MOTOR: " + mb.getMaritimo().getMarcaMotor(),
                fontCorpo);
        Paragraph pInfo15 = new Paragraph(
                "   15. NMERO M?XIMO DE TRIPULANTES: " + mb.getMaritimo().getNumMaximoTripulante(),
                fontCorpo);
        Paragraph pInfo16 = new Paragraph("   16. DISPOSITIVOS DE SALVAMENTO SUFICIENTE PARA UM M?XIMO: ",
                fontCorpo);
        Paragraph pInfo17 = new Paragraph("   17. APOIOS PARA NAVEGAO INSTALADOS: "
                + mb.getMaritimo().getEspecificacaoApoioNavegacao(), fontCorpo);
        Paragraph pInfo18 = new Paragraph(
                "   18. EXPERINCIA ANTERIOR DE RECLAMAO: " + mb.getMaritimo().getExperienciaRecalmacao(),
                fontCorpo);
        Paragraph pInfo19 = new Paragraph("   19. MBITO DA COBERTURA: ", fontCorpo);
        Paragraph pInfo20 = new Paragraph(
                "   20. LIMITAO TERRITORIAL/?REA DE OERAO: " + mb.getMaritimo().getAreaOperacao(),
                fontCorpo);
        Paragraph pInfo21 = new Paragraph("          DATA: " + sdf.format(new Date()), fontCorpo);
        cellDadosTitulo.addElement(pInfoTitulo);
        cellDadosTitulo.addElement(pInfoShip);
        cellDadosTitulo.addElement(pInfo1);
        cellDadosTitulo.addElement(pInfo2);
        cellDadosTitulo.addElement(pInfo3);
        cellDadosTitulo.addElement(pInfo4);
        cellDadosTitulo.addElement(pInfo5);
        cellDadosTitulo.addElement(pInfo6);
        cellDadosTitulo.addElement(pInfo7);
        cellDadosTitulo.addElement(pInfo8);
        cellDadosTitulo.addElement(pInfo9);
        cellDadosTitulo.addElement(pInfo10);
        cellDadosTitulo.addElement(pInfo11);
        cellDadosTitulo.addElement(pInfo12);
        cellDadosTitulo.addElement(pInfo13);
        cellDadosTitulo.addElement(pInfo14);
        cellDadosTitulo.addElement(pInfo15);
        cellDadosTitulo.addElement(pInfo16);
        cellDadosTitulo.addElement(pInfo17);
        cellDadosTitulo.addElement(pInfo18);
        cellDadosTitulo.addElement(pInfo19);
        cellDadosTitulo.addElement(pInfo20);
        cellDadosTitulo.addElement(pInfo21);
        pTableDadosTitulo.addCell(cellDadosTitulo);

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

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

        reString = "../Documentos/" + user + "/Seguro Maritimo/" + "Formulario Seguro Maritimo " + 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);
        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.SeguroRoubo.java

public String criarDoc(String numApolice, String numCliente, RouboBean rb, Contrato c, String user,
        String arquivo) {// w ww  .ja 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;
}

From source file:Export.SeguroViagem.java

public String criarDoc(ViagemBean vb, String numCriente, String user, String arquivo, Contrato c) {
    try {// w  w  w  .  j a  va 2 s.c  om
        PdfPTable pTablePrincaipal;
        //            PdfPTable pTableSegu1;
        PdfPTable pTableSegu2;
        SimpleDateFormat sdf = new SimpleDateFormat("dd-MM-yyyy hh'.'mm'.'ss");
        SimpleDateFormat sdfPot = new SimpleDateFormat("dd/MM/yyyy");

        Font fontCorpoN = FontFactory.getFont(Fontes.FONTB, BaseFont.WINANSI, BaseFont.EMBEDDED, 7.9f);
        Font fontCorpo = FontFactory.getFont(Fontes.FONT, BaseFont.WINANSI, BaseFont.EMBEDDED, 7.9f);

        //            PdfPTable pTableLinha = new PdfPTable(1);
        //            pTableLinha.setWidthPercentage(95);
        //            PdfPCell linha= new PdfPCell(new Phrase(" "));
        //            
        //            linha.setBorderWidthTop(0.5f);
        //            linha.setBorderWidthBottom(0);
        //            linha.setBorderWidthLeft(0);
        //            linha.setBorderWidthRight(0);
        //            pTableLinha.addCell(linha);
        Document documento = new Document();
        documento.setPageSize(PageSize.A4);
        documento.setMargins(20f, 20f, 138f, 5f);
        File ff = new File(arquivo + "/" + user + "/Seguro Viagem/");
        ff.mkdirs();
        String Ddata = sdf.format(new Date());
        ff = new File(ff.getAbsoluteFile() + "/" + "Doc Seguro Viagem " + Ddata + ".pdf");
        reString = "../Documentos/" + user + "/Seguro Viagem/" + "Doc Seguro Viagem " + Ddata + ".pdf";
        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();

        int total = vb.getInfoPessoaSegurada().size();
        for (int i = 0; i < total; i++) {

            pTablePrincaipal = new PdfPTable(1);
            pTablePrincaipal.setWidthPercentage(98f);
            //                pTableSegu1 = new PdfPTable(1);
            //                pTableSegu1.setWidthPercentage(95);
            pTableSegu2 = new PdfPTable(new float[] { 55f, 45f });
            pTableSegu2.setWidthPercentage(100f);

            //                PdfPCell cellTitulo= new PdfPCell(new Phrase("Lista Pessoas Seguradas",fontCabecalhoN));
            //                cellTitulo.setBorder(0);
            PdfPCell cellNull = new PdfPCell(new Phrase(" ", fontCorpo));
            cellNull.setBorder(0);

            //                if(((i)%6)==0)
            //                {
            //                    pTableSegu1.addCell(cellTitulo);
            //                    pTableSegu1.addCell(cellNull);
            //                }
            //                
            Paragraph pCl = new Paragraph();
            pCl.add(new Phrase("Nome do Segurado: ".toUpperCase(), fontCorpo));
            pCl.add(new Phrase(vb.getInfoPessoaSegurada().get(i).getNomePessoaSegurada().toUpperCase(),
                    fontCorpoN));
            PdfPCell cellNome = new PdfPCell(pCl);
            cellNome.setColspan(2);
            cellNome.setBorder(0);
            pTableSegu2.addCell(cellNome);

            //                PdfPCell cellNum= new PdfPCell(new Phrase(""+(i+1),fontCorpo));
            //                cellNum.setBorder(0);
            //                cellNum.setHorizontalAlignment(Element.ALIGN_RIGHT);
            //                pTableSegu2.addCell(cellNum);
            pCl = new Paragraph();
            pCl.add(new Phrase("Endereo: ".toUpperCase(), fontCorpo));
            pCl.add(new Phrase(vb.getInfoPessoaSegurada().get(i).getEndereco().toUpperCase(), fontCorpoN));
            PdfPCell cellEndereco = new PdfPCell(pCl);
            cellEndereco.setBorder(0);
            pTableSegu2.addCell(cellEndereco);
            pTableSegu2.addCell(cellNull);

            pCl = new Paragraph();
            pCl.add(new Phrase("Data e Local Nascimento: ".toUpperCase(), fontCorpo));
            pCl.add(new Phrase(vb.getInfoPessoaSegurada().get(i).getDataNascFormatada(), fontCorpoN));
            pCl.add(new Phrase(" em ", fontCorpo));
            pCl.add(new Phrase(vb.getInfoPessoaSegurada().get(i).getLocalNascimento(), fontCorpoN));
            PdfPCell cellNascDaNascloc = new PdfPCell(pCl);
            cellNascDaNascloc.setBorder(0);

            pCl = new Paragraph();
            pCl.add(new Phrase("Sexo: ".toUpperCase(), fontCorpo));
            pCl.add(new Phrase(vb.getInfoPessoaSegurada().get(i).getSexo(), fontCorpoN));
            pCl.add(new Phrase("   Tel.N ", fontCorpo));
            pCl.add(new Phrase(vb.getInfoPessoaSegurada().get(i).getTelefone(), fontCorpoN));
            PdfPCell cellSexo = new PdfPCell(pCl);
            cellSexo.setBorder(0);
            pTableSegu2.addCell(cellNascDaNascloc);
            pTableSegu2.addCell(cellSexo);

            pCl = new Paragraph();
            pCl.add(new Phrase("Apolice: ".toUpperCase(), fontCorpo));
            pCl.add(new Phrase(vb.getInfoPessoaSegurada().get(i).getNumApolice(), fontCorpoN));
            PdfPCell cellApolice = new PdfPCell(pCl);
            cellApolice.setBorder(0);

            pCl = new Paragraph();
            pCl.add(new Phrase("Cliente: ".toUpperCase(), fontCorpo));

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

            pCl.add(new Phrase(((codCliente.length == 2) ? "TIN " + codCliente[1] : "TIN "), fontCorpoN));
            PdfPCell cellCliente = new PdfPCell(pCl);
            cellCliente.setBorder(0);
            pTableSegu2.addCell(cellApolice);
            pTableSegu2.addCell(cellCliente);

            pCl = new Paragraph();
            pCl.add(new Phrase("Durao: ".toUpperCase(), fontCorpo));
            pCl.add(new Phrase(vb.getInfoPessoaSegurada().get(i).getNumDias() + " DIAS", fontCorpoN));
            PdfPCell cellDuracao = new PdfPCell(pCl);
            cellDuracao.setBorder(0);

            pCl = new Paragraph();
            pCl.add(new Phrase("Perodo: de ".toUpperCase(), fontCorpo));
            pCl.add(new Phrase(sdfPot.format(vb.getInfoPessoaSegurada().get(i).getDataInicio()), fontCorpoN));
            pCl.add(new Phrase("  ", fontCorpo));
            pCl.add(new Phrase(((vb.getInfoPessoaSegurada().get(i).getDataFim() != null)
                    ? sdfPot.format(vb.getInfoPessoaSegurada().get(i).getDataFim())
                    : " "), fontCorpoN));
            PdfPCell cellPeriodo = new PdfPCell(pCl);
            cellPeriodo.setBorder(0);
            pTableSegu2.addCell(cellDuracao);
            pTableSegu2.addCell(cellPeriodo);

            pCl = new Paragraph();
            pCl.add(new Phrase("Data de Emisso: ".toUpperCase(), fontCorpo));
            pCl.add(new Phrase(sdfPot.format(c.getDataContrato()), fontCorpoN));
            PdfPCell cellDataEmissao = new PdfPCell(pCl);
            cellDataEmissao.setBorder(0);

            pCl = new Paragraph();
            pCl.add(new Phrase("Destino: ".toUpperCase(), fontCorpo));
            pCl.add(new Phrase(
                    ClienteDao.paisesSelected(vb.getInfoPessoaSegurada().get(i).getPaisDestino().toUpperCase())
                            + "    ",
                    fontCorpoN));
            pCl.add(new Phrase("N de Pessoas: ", fontCorpo));
            pCl.add(new Phrase((i + 1) + "", fontCorpoN));
            PdfPCell cellDestino = new PdfPCell(pCl);
            cellDestino.setBorder(0);
            pTableSegu2.addCell(cellDataEmissao);
            pTableSegu2.addCell(cellDestino);

            pCl = new Paragraph();
            pCl.add(new Phrase("Meio de Identificao: ".toUpperCase(), fontCorpo));
            pCl.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())),
                    fontCorpoN));
            pCl.add(new Phrase("   N ", fontCorpo));
            pCl.add(new Phrase(vb.getInfoPessoaSegurada().get(i).getNumDoc(), fontCorpoN));
            PdfPCell cellEmiDocNum = new PdfPCell(pCl);
            cellEmiDocNum.setBorder(0);

            pCl = new Paragraph();
            pCl.add(new Phrase("Emitido em: ".toUpperCase(), fontCorpo));
            pCl.add(new Phrase(vb.getInfoPessoaSegurada().get(i).getLocalEmissao().toUpperCase() + " ",
                    fontCorpoN));
            pCl.add(new Phrase("em ", fontCorpo));
            pCl.add(new Phrase(vb.getInfoPessoaSegurada().get(i).getDataEmissaoFormatada(), fontCorpoN));
            PdfPCell cellEmiDoc = new PdfPCell(pCl);
            cellEmiDoc.setBorder(0);
            pTableSegu2.addCell(cellEmiDocNum);
            pTableSegu2.addCell(cellEmiDoc);

            pCl = new Paragraph();
            pCl.add(new Phrase("Outras Informaes: ".toUpperCase(), fontCorpo));
            pCl.add(new Phrase(
                    ((vb.getInfoPessoaSegurada().get(i).getOutrasInformacoes() == null) ? " "
                            : vb.getInfoPessoaSegurada().get(i).getOutrasInformacoes().toUpperCase()),
                    fontCorpoN));
            PdfPCell cellOutraInf = new PdfPCell(pCl);
            cellOutraInf.setColspan(2);
            cellOutraInf.setBorder(0);
            pTableSegu2.addCell(cellOutraInf);

            //                PdfPCell cellSegui1 = new PdfPCell();
            //                cellSegui1.addElement(pTableSegu1);
            //                cellSegui1.setBorder(0);
            PdfPCell cellSegui2 = new PdfPCell();
            cellSegui2.addElement(pTableSegu2);
            cellSegui2.setBorder(0);

            //                PdfPCell cellSeguiT = new PdfPCell();
            //                cellSeguiT.addElement(pTableLinha);
            //                cellSeguiT.setBorder(0);
            //                pTablePrincaipal.addCell(cellSegui1);
            pTablePrincaipal.addCell(cellSegui2);

            //                if((i+1)<total&&((i+1)%6)!=0)
            //                    pTablePrincaipal.addCell(cellSeguiT);
            //                
            documento.add(pTablePrincaipal);
            //                
            //                System.err.println((((i+1)%6)==0)+" "+(i+1));
            if ((i + 1) != total) {
                documento.newPage();
            }

        }

        documento.close();
        return reString;

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

From source file:Export.SeguroViatura.java

public String criarDoc(String numApolice, String numCliente, Contrato c, VeiculoBean vb, String user,
        String arquivo) {/* w  w  w.j a  v  a2 s .co  m*/
    try {
        SimpleDateFormat sdf = new SimpleDateFormat("dd-MM-yyyy");
        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 fontCorpoTabT = FontFactory.getFont(Fontes.FONTB, BaseFont.WINANSI, BaseFont.EMBEDDED, 6.5f);
        Font fontCorpoTab = FontFactory.getFont(Fontes.FONT, BaseFont.WINANSI, BaseFont.EMBEDDED, 6.5f);
        Font fontCorpoP = FontFactory.getFont(Fontes.FONT, BaseFont.WINANSI, BaseFont.EMBEDDED, 8f);
        Font fontCorpoN = FontFactory.getFont(Fontes.FONTB, BaseFont.WINANSI, BaseFont.EMBEDDED, 9f);
        Font fontCorpoNG = FontFactory.getFont(Fontes.FONTB, BaseFont.WINANSI, BaseFont.EMBEDDED, 9.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);
        Font fontUK = FontFactory.getFont(Fontes.FONT, BaseFont.WINANSI, BaseFont.EMBEDDED, 6f, Font.ITALIC);
        Font fontUKb = FontFactory.getFont(Fontes.FONTB, BaseFont.WINANSI, BaseFont.EMBEDDED, 6f, Font.ITALIC);

        PdfPTable pTableEmpresaPricipal = new PdfPTable(new float[] { 25f, 75f });
        pTableEmpresaPricipal.setWidthPercentage(88f);
        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 pTableSeguro = new PdfPTable(1);
        pTableSeguro.setWidthPercentage(88f);
        PdfPTable pTableCliente = new PdfPTable(1);
        pTableCliente.setWidthPercentage(88f);

        PdfPTable pTableTitulo = new PdfPTable(1);
        pTableTitulo.setWidthPercentage(88f);

        Paragraph paTitulo = new Paragraph();
        Paragraph pTitulo = new Paragraph("resumo de aplice para Automvel".toUpperCase(), fontCorpoNGT);
        Paragraph pTituloUk = new Paragraph("\nthe motor policy sumay".toUpperCase(), fontUKb);
        paTitulo.add(pTitulo);
        paTitulo.add(pTituloUk);

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

        ClienteI ci = new ClienteI(numCliente);
        Paragraph para = new Paragraph();
        Paragraph phrase = new Paragraph("1 - Informaes Do Cliente".toUpperCase(), fontCorpoNG);
        Paragraph paraUK = new Paragraph("\n1 - Customer information".toUpperCase(), fontUKb);

        para.add(phrase);
        para.add(paraUK);

        PdfPCell cellTituloTsbleSegurado = new PdfPCell(para);
        cellTituloTsbleSegurado.setBorder(0);

        Paragraph pCl = new Paragraph();
        pCl.add(new Phrase(ci.getNOMEL_(), fontCorpo));
        pCl.add(new Phrase(ci.getNOME_(), fontCorpoN));
        pCl.add(new Phrase("\nNAME:", fontUK));
        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));
        pCl.add(new Phrase("\nADDRESS:", fontUK));
        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));
        pCl.add(new Phrase("\nPROFISSION/OCCUPATION/ACTIVITY AREA:", fontUK));
        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));
        pCl.add(new Phrase("\nPLACE OF WORK", fontUK));
        PdfPCell cellLocalTrabalho = new PdfPCell(pCl);
        cellLocalTrabalho.setBorder(0);

        cellNome.setPaddingTop(7f);
        cellNome.setPaddingBottom(7f);
        cellNome.setBorder(0);

        cellEndereco.setPaddingTop(7f);
        cellEndereco.setPaddingBottom(7f);
        cellEndereco.setBorder(0);

        //            PdfPCell cellNCliente= new PdfPCell( new Phrase("   "+ci.getNUNCLIENTE(),fontCorpo));cellNome.setPaddingTop(5f);
        //            cellNCliente.setPaddingTop(7f);
        //            cellNCliente.setPaddingBottom(7f);
        //            cellNCliente.setBorder(0);

        cellProfissao.setPaddingTop(7f);
        cellProfissao.setPaddingBottom(7f);
        cellProfissao.setBorder(0);

        cellLocalTrabalho.setPaddingTop(7f);
        cellLocalTrabalho.setPaddingBottom(7f);
        cellLocalTrabalho.setBorder(0);

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

        para = new Paragraph();
        Paragraph p = new Paragraph("3 - Premio E Cobertura".toUpperCase(), fontCorpoNG);
        Paragraph p1 = new Paragraph("\n3 - PREMIUM AND COVER".toUpperCase(), fontUKb);
        para.add(p);
        para.add(p1);

        PdfPCell cellTiltuloSegro = new PdfPCell(para);
        cellTiltuloSegro.setPaddingTop(7f);
        cellTiltuloSegro.setPaddingBottom(7f);
        cellTiltuloSegro.setBorder(0);

        //            PdfPCell cellApolice= new PdfPCell( new Phrase("   N Aplice: ".toUpperCase()+numApolice,fontCorpo));
        //            cellApolice.setPaddingTop(7f);
        //            cellApolice.setPaddingBottom(7f);
        //            cellApolice.setBorder(0);
        Paragraph pTotalSegurado = new Paragraph();
        pTotalSegurado.add(new Phrase("Prmio: ".toUpperCase().toUpperCase(), fontCorpo));
        /**
         * *
         * ildo - premio liquido ->
         */
        pTotalSegurado.add(new Phrase(
                ((c.getPremioLiquidoMoeda() == null /*&& vb.getVeiculo().getTipoCobertura().equals("41") */ )
                        ? " "
                        : c.getPremioLiquidoMoeda() + " " + c.getSigla()),
                fontCorpoN));
        pTotalSegurado.add(new Phrase("\nPREMIUM", fontUK));
        PdfPCell cellTotalSegurado = new PdfPCell(pTotalSegurado);
        cellTotalSegurado.setPaddingTop(7f);
        cellTotalSegurado.setPaddingBottom(7f);
        cellTotalSegurado.setBorder(0);

        Paragraph pExcesso = new Paragraph();
        pExcesso.add(new Phrase("Excesso: ".toUpperCase(), fontCorpo));
        pExcesso.add(new Phrase((c.getFranquia() == null) ? "No aplicvel".toUpperCase() : c.getFranquia(),
                fontCorpoN));
        pExcesso.add(new Phrase("\nEXCESS: ", fontUK));
        PdfPCell cellExcesso = new PdfPCell(pExcesso);
        cellExcesso.setPaddingTop(7f);
        cellExcesso.setPaddingBottom(7f);
        cellExcesso.setBorder(0);

        //            PdfPCell cellValor1Preminio= new PdfPCell( new Phrase("   Valor Primeiro Premio: ".toUpperCase()+((c.getPrimeiroPremio()==null)?" ":c.getPrimeiroPremio()),fontCorpo));
        //            cellValor1Preminio.setPaddingTop(7f);
        //            cellValor1Preminio.setPaddingBottom(7f);
        //            cellValor1Preminio.setBorder(0);
        //            
        //            PdfPCell cellTotalPremioAnual= new PdfPCell( new Phrase("   Valor Premio Anual: ".toUpperCase()+((c.getPremioAnual()==null)?" ":c.getPremioAnual()),fontCorpo));
        //            cellTotalPremioAnual.setPaddingTop(7f);
        //            cellTotalPremioAnual.setPaddingBottom(7f);
        //            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.setPaddingTop(7f);
        //            cellPeriodo.setPaddingBottom(7f);
        //            cellPeriodo.setBorder(0)
        Paragraph pDataRenovacao = new Paragraph();
        pDataRenovacao.add(new Phrase("Data Renovao de Seguro: ".toUpperCase(), fontCorpo));
        pDataRenovacao.add(new Phrase(((c.getDataRenovacao() != null) ? sdf.format(c.getDataRenovacao()) : " "),
                fontCorpoN));
        pDataRenovacao.add(new Phrase("\nRENEWAL DATE OF COVER", fontUK));
        PdfPCell cellDataRenovacao = new PdfPCell(pDataRenovacao);
        cellDataRenovacao.setPaddingTop(7f);
        cellDataRenovacao.setPaddingBottom(7f);
        cellDataRenovacao.setBorder(0);

        Paragraph pTipoCobert = new Paragraph();
        pTipoCobert.add(new Phrase("Tipo De Cobertura: ".toUpperCase(), fontCorpo));
        pTipoCobert
                .add(new Phrase(
                        ((vb.getVeiculo().getTipoCobertura() != null)
                                ? (vb.getVeiculo().getTipoCobertura().equals("41")
                                        ? "Contra Terceiros".toUpperCase()
                                        : (vb.getVeiculo().getTipoCobertura().equals("42")
                                                ? "CONTRA Todos os riscos".toUpperCase()
                                                : (vb.getVeiculo().getTipoCobertura().equals("43")
                                                        ? "Compreensivo limitado".toUpperCase()
                                                        : vb.getVeiculo().getTipoCobertura())))
                                : " "),
                        fontCorpoN));
        pTipoCobert.add(new Phrase("\nTYPE OF CAVER", fontUK));
        PdfPCell cellTipoCobert = new PdfPCell(pTipoCobert);
        cellTipoCobert.setPaddingTop(7f);
        cellTipoCobert.setPaddingBottom(7f);
        cellTipoCobert.setBorder(0);

        Paragraph pLimiteArea = new Paragraph();
        pLimiteArea.add(new Phrase("Limite de rea geogrfica: ".toUpperCase(), fontCorpo));
        pLimiteArea.add(new Phrase("so Tom e principe".toUpperCase(), fontCorpoN));
        pLimiteArea.add(new Phrase("\nLIMIT OF GEOGRAPHICAL AREA".toUpperCase(), fontUK));
        PdfPCell cellLimiteArea = new PdfPCell(pLimiteArea);
        cellLimiteArea.setPaddingTop(7f);
        cellLimiteArea.setPaddingBottom(7f);
        cellLimiteArea.setBorder(0);

        Paragraph pLeis = new Paragraph();
        pLeis.add(new Phrase("legislao: ".toUpperCase(), fontCorpo));
        pLeis.add(new Phrase("artigos 1  36, lei n 30/2000 da repblica democrtica de stp".toUpperCase(),
                fontCorpoN));
        pLeis.add(new Phrase("\nLEGISLATION: ", fontUK));
        pLeis.add(new Phrase("ARTICLES 1 TO 36, LAW NO 30/2000 OF THE DEMOCRATIC REPUBLIC OF STP", fontUKb));
        PdfPCell cellLeis = new PdfPCell(pLeis);
        cellLeis.setPaddingTop(7f);
        cellLeis.setPaddingBottom(7f);
        cellLeis.setBorder(0);

        pTableSeguro.addCell(cellTiltuloSegro);
        //            pTableSeguro.addCell(cellApolice);
        pTableSeguro.addCell(cellTotalSegurado);
        //            pTableSeguro.addCell(cellValor1Preminio);
        //            pTableSeguro.addCell(cellTotalPremioAnual);
        pTableSeguro.addCell(cellExcesso);
        pTableSeguro.addCell(cellDataRenovacao);
        pTableSeguro.addCell(cellTipoCobert);
        pTableSeguro.addCell(cellLimiteArea);
        pTableSeguro.addCell(cellLeis);

        PdfPTable pTableDadosTitulo = new PdfPTable(1);
        pTableDadosTitulo.setWidthPercentage(88f);

        para = new Paragraph();
        Phrase PDadosTitulo = new Phrase("2 - Informaes do(s) Veculo(s)".toUpperCase(), fontCorpoN);
        Phrase PDadosTitulos = new Phrase("\n2 - VEHICLE (S) INFORMATIONS".toUpperCase(), fontUKb);
        para.add(PDadosTitulo);
        para.add(PDadosTitulos);
        PdfPCell cellDadosTitulo = new PdfPCell(para);

        cellDadosTitulo.setBorder(0);
        pTableDadosTitulo.addCell(cellDadosTitulo);
        pTableDadosTitulo.addCell(cellNull);

        PdfPTable pTableDados = new PdfPTable(new float[] { 13.5f, 13.5f, 14, 17, 16, 12, 14 });
        pTableDados.setWidthPercentage(88f);

        para = new Paragraph();
        Phrase PMarca = new Phrase("Marca".toUpperCase(), fontCorpoTabT);
        Phrase PMarcaUK = new Phrase("\nMARK".toUpperCase(), fontUK);
        para.add(PMarca);
        para.add(PMarcaUK);

        PdfPCell cellMarca = new PdfPCell(para);
        cellMarca.setPaddingTop(5f);
        cellMarca.setPaddingBottom(5f);
        cellMarca.setHorizontalAlignment(Element.ALIGN_CENTER);

        para = new Paragraph();
        Paragraph PModelo = new Paragraph("Modelo".toUpperCase(), fontCorpoTabT);
        Paragraph PModeloUK = new Paragraph("\nMODEL".toUpperCase(), fontUK);
        para.add(PModelo);
        para.add(PModeloUK);

        PdfPCell cellModelo = new PdfPCell(para);
        cellModelo.setHorizontalAlignment(Element.ALIGN_CENTER);
        cellModelo.setPaddingTop(5f);
        cellModelo.setPaddingBottom(5f);

        para = new Paragraph();
        Phrase PMatricula = new Phrase("NO DE MATR?CULA".toUpperCase(), fontCorpoTabT);
        Phrase PMatriculaUK = new Phrase("\nREG. NUMBER".toUpperCase(), fontUK);
        para.add(PMatricula);
        para.add(PMatriculaUK);

        PdfPCell cellMatricula = new PdfPCell(para);
        cellMatricula.setHorizontalAlignment(Element.ALIGN_CENTER);
        cellMatricula.setPaddingTop(5f);
        cellMatricula.setPaddingBottom(5f);

        para = new Paragraph();
        Phrase PChasii = new Phrase("No. de chissi/Motor".toUpperCase(), fontCorpoTabT);
        Phrase PChasiiUK = new Phrase("\nchissiS/ENGINE NO.".toUpperCase(), fontUK);
        para.add(PChasii);
        para.add(PChasiiUK);

        PdfPCell cellChasii = new PdfPCell(para);
        cellChasii.setHorizontalAlignment(Element.ALIGN_CENTER);
        cellChasii.setPaddingTop(5f);
        cellChasii.setPaddingBottom(5f);

        para = new Paragraph();
        Phrase PAnoFabricoCompra = new Phrase("ano de Fabrico/Compra".toUpperCase(), fontCorpoTabT);
        Phrase PAnoFabricoCompraUK = new Phrase("\nYear of Manufacture/PURCHASE".toUpperCase(), fontUK);
        para.add(PAnoFabricoCompra);
        para.add(PAnoFabricoCompraUK);

        PdfPCell cellAnoFabricoCompra = new PdfPCell(para);
        cellAnoFabricoCompra.setHorizontalAlignment(Element.ALIGN_CENTER);
        cellAnoFabricoCompra.setPaddingTop(5f);
        cellAnoFabricoCompra.setPaddingBottom(5f);

        para = new Paragraph();
        Phrase PTotalLuagares = new Phrase("lotao".toUpperCase(), fontCorpoTabT);
        Phrase PTotalLuagaresUK = new Phrase("\nSTOCKING", fontUK);
        para.add(PTotalLuagares);
        para.add(PTotalLuagaresUK);

        PdfPCell cellTotalLuagares = new PdfPCell(para);
        cellTotalLuagares.setHorizontalAlignment(Element.ALIGN_CENTER);
        cellTotalLuagares.setPaddingTop(5f);
        cellTotalLuagares.setPaddingBottom(5f);

        para = new Paragraph();
        Phrase PDadosValorSeguro = new Phrase("Estimativa / Valor Segurado".toUpperCase(), fontCorpoTabT);
        Phrase PDadosValorSeguroUK = new Phrase("\nEstimation / Amount Insured".toUpperCase(), fontUK);
        para.add(PDadosValorSeguro);
        para.add(PDadosValorSeguroUK);

        PdfPCell cellDadosValorSeguro = new PdfPCell(para);
        cellDadosValorSeguro.setHorizontalAlignment(Element.ALIGN_CENTER);
        cellDadosValorSeguro.setPaddingTop(5f);
        cellDadosValorSeguro.setPaddingBottom(5f);

        pTableDados.addCell(cellMarca);
        pTableDados.addCell(cellModelo);
        pTableDados.addCell(cellMatricula);
        pTableDados.addCell(cellChasii);
        pTableDados.addCell(cellAnoFabricoCompra);
        pTableDados.addCell(cellTotalLuagares);
        pTableDados.addCell(cellDadosValorSeguro);

        int total = vb.getInfo().size();
        for (int i = 0; i < total; i++) {
            cellMarca = new PdfPCell(
                    new Phrase((vb.getInfo().get(i).getMarca() == null) ? " " : vb.getInfo().get(i).getMarca(),
                            fontCorpoTab));
            cellMarca.setHorizontalAlignment(Element.ALIGN_CENTER);
            cellModelo = new PdfPCell(new Phrase(
                    (vb.getInfo().get(i).getModelo() == null) ? " " : vb.getInfo().get(i).getModelo(),
                    fontCorpoTab));
            cellModelo.setHorizontalAlignment(Element.ALIGN_CENTER);
            cellMatricula = new PdfPCell(
                    new Phrase(((vb.getInfo().get(i).getNumeroMatricula() == null) ? ".........."
                            : vb.getInfo().get(i).getNumeroMatricula()), fontCorpoTab));
            cellMatricula.setHorizontalAlignment(Element.ALIGN_CENTER);
            cellDadosValorSeguro = new PdfPCell(new Phrase(
                    ((vb.getInfo().get(i).getValorAtual() == null
                            || vb.getInfo().get(i).getValorAtual().isEmpty()
                            || vb.getVeiculo().getTipoCobertura().equals("41")) ? " NA "
                                    : Moeda.format(Double.valueOf(vb.getInfo().get(i).getValorAtual()))),
                    fontCorpoTab));
            cellDadosValorSeguro.setHorizontalAlignment(Element.ALIGN_CENTER);
            cellAnoFabricoCompra = new PdfPCell(new Phrase(((vb.getInfo().get(i).getAnoFabrico() == null
                    || (vb.getInfo().get(i).getAnoFabrico().isEmpty())) ? "......."
                            : vb.getInfo().get(i).getAnoFabrico())
                    + "/"
                    + ((vb.getInfo().get(i).getAnoCompra() == null
                            || (vb.getInfo().get(i).getAnoCompra().isEmpty())) ? "......."
                                    : vb.getInfo().get(i).getAnoCompra()),
                    fontCorpoTab));
            cellAnoFabricoCompra.setHorizontalAlignment(Element.ALIGN_CENTER);
            cellTotalLuagares = new PdfPCell(
                    new Phrase(vb.getInfo().get(i).getCapacidade() + " LUGARES", fontCorpoTab));
            cellTotalLuagares.setHorizontalAlignment(Element.ALIGN_CENTER);
            cellChasii = new PdfPCell(new Phrase(vb.getInfo().get(i).getChassi() + " ", fontCorpoTab));
            cellChasii.setHorizontalAlignment(Element.ALIGN_CENTER);

            float pad = getPadding(total);

            cellMarca.setPaddingTop(pad);
            cellMarca.setPaddingBottom(pad);
            pTableDados.addCell(cellMarca);

            cellModelo.setPaddingTop(pad);
            cellModelo.setPaddingBottom(pad);
            pTableDados.addCell(cellModelo);

            cellMatricula.setPaddingTop(pad);
            cellMatricula.setPaddingBottom(pad);
            pTableDados.addCell(cellMatricula);

            cellChasii.setPaddingTop(pad);
            cellChasii.setPaddingBottom(pad);
            pTableDados.addCell(cellChasii);

            cellAnoFabricoCompra.setPaddingTop(pad);
            cellAnoFabricoCompra.setPaddingBottom(pad);
            pTableDados.addCell(cellAnoFabricoCompra);

            cellTotalLuagares.setPaddingTop(pad);
            cellTotalLuagares.setPaddingBottom(pad);
            pTableDados.addCell(cellTotalLuagares);

            cellDadosValorSeguro.setPaddingTop(pad);
            cellDadosValorSeguro.setPaddingBottom(pad);
            pTableDados.addCell(cellDadosValorSeguro);
        }

        //            PdfPTable pTableAssinaturaTitulo= new PdfPTable(1);
        //            pTableAssinaturaTitulo.setWidthPercentage(88f);
        //            PdfPTable pTableAssinatura= new PdfPTable( new float[]{50f,50f});
        //            pTableAssinatura.setWidthPercentage(88f);
        //            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 Automovel\\");
        //            ff.mkdirs();
        //            ff =new File(ff.getAbsoluteFile()+"\\"+"Formulario Seguro Automovel "+sdf1.format(new Date())+".pdf");
        File ff = new File(arquivo + "/" + user + "/Seguro Automovel/");

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

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

        PdfPTable pTableLinha = new PdfPTable(1);
        pTableLinha.setWidthPercentage(88f);
        PdfPCell cellLinha = new PdfPCell(new Phrase(
                "----------------------------------------------------------------------------------------------------------------------",
                fontCorpo));
        cellLinha.setBorder(0);
        pTableLinha.addCell(cellLinha);
        cellLinha.setPaddingTop(-9f);
        pTableLinha.addCell(cellLinha);

        PdfPTable pTableApoliceAndPeriodo = new PdfPTable(new float[] { 40, 60 });
        pTableApoliceAndPeriodo.setWidthPercentage(88f);

        Paragraph pApolice = new Paragraph();
        pApolice.add(new Phrase("N Aplice: ".toUpperCase(), fontCorpo));
        pApolice.add(new Phrase(numApolice, fontCorpoN));
        pApolice.add(new Phrase("\nPOLICY NO:", fontUK));
        PdfPCell cellApolice = new PdfPCell(pApolice);
        //            cellApolice.setPaddingTop(-2);
        //            cellApolice.setPaddingBottom(4.5f);
        cellApolice.setVerticalAlignment(PdfPCell.ALIGN_MIDDLE);
        pTableApoliceAndPeriodo.addCell(cellApolice);

        Paragraph pPeriodo = new Paragraph();
        pPeriodo.add(new Phrase("Periodo Do Seguro: ".toUpperCase(), fontCorpo));
        pPeriodo.add(new Phrase(((c.getDataInicio() != null) ? sdf.format(c.getDataInicio()) : " ") + "  "
                + ((c.getDataFim() != null) ? sdf.format(c.getDataFim()) : " "), fontCorpoN));
        pPeriodo.add(new Phrase("\nPERIOD OF INSURANCE:", fontUK));
        PdfPCell cellPeriodo = new PdfPCell(pPeriodo);
        //            cellPeriodo.setPaddingTop(-2);
        //            cellPeriodo.setPaddingBottom(4.5f);
        cellPeriodo.setVerticalAlignment(PdfPCell.ALIGN_MIDDLE);
        pTableApoliceAndPeriodo.addCell(cellPeriodo);

        documento.open();
        documento.add(pTableEmpresaPricipal);
        documento.add(pTableNull);
        documento.add(pTableTitulo);
        documento.add(pTableNull);
        documento.add(pTableApoliceAndPeriodo);
        documento.add(pTableNull);
        documento.add(pTableCliente);
        documento.add(pTableNull);
        documento.add(pTableLinha);
        documento.add(pTableNull);
        documento.add(pTableDadosTitulo);
        documento.add(pTableDados);
        documento.add(pTableNull);
        documento.add(pTableLinha);
        documento.add(pTableNull);
        documento.add(pTableSeguro);
        //            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;
}