Example usage for com.itextpdf.text.pdf PdfPCell setBorderWidthBottom

List of usage examples for com.itextpdf.text.pdf PdfPCell setBorderWidthBottom

Introduction

In this page you can find the example usage for com.itextpdf.text.pdf PdfPCell setBorderWidthBottom.

Prototype

public void setBorderWidthBottom(final float borderWidthBottom) 

Source Link

Document

Sets the width of the bottom border.

Usage

From source file:es.sm2.openppm.front.utils.DocumentUtils.java

License:Open Source License

/**
 * /*from  www .j  a v a2 s.c om*/
 * @param content
 * @param font
 * @param borderTop
 * @param borderRight
 * @param borderBottom
 * @param borderLeft
 * @return
 */
private static PdfPCell prepareHeaderCell(String content, Font font, Float borderTop, Float borderRight,
        Float borderBottom, Float borderLeft) {
    PdfPCell cell = new PdfPCell(new Paragraph(content, font));
    cell.setBorderWidthTop(borderTop);
    cell.setBorderWidthRight(borderRight);
    cell.setBorderWidthBottom(borderBottom);
    cell.setBorderWidthLeft(borderLeft);
    cell.setHorizontalAlignment(Element.ALIGN_LEFT);
    cell.setPaddingLeft(5F);

    return cell;
}

From source file:es.sm2.openppm.front.utils.DocumentUtils.java

License:Open Source License

/**
 * /*www.  j  a v  a2s  .  co  m*/
 * @param content
 * @param font
 * @param borderTop
 * @param borderRight
 * @param borderBottom
 * @param borderLeft
 * @return
 */
private static PdfPCell prepareCell(String content, Font font, Float borderTop, Float borderRight,
        Float borderBottom, Float borderLeft) {
    PdfPCell cell = new PdfPCell(new Paragraph(content, font));
    cell.setBorderWidthTop(borderTop);
    cell.setBorderWidthRight(borderRight);
    cell.setBorderWidthBottom(borderBottom);
    cell.setBorderWidthLeft(borderLeft);
    cell.setHorizontalAlignment(Element.ALIGN_LEFT);
    cell.setPaddingBottom(3F);
    cell.setPaddingLeft(5F);

    return cell;
}

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

License:Open Source License

protected PdfPCell getHeaderCell(String[] header) {

    Phrase p = new Phrase();
    p.setFont(TABLE_HEADER);//from  ww  w . j a  v  a 2s  .c o m
    for (String s : header) {
        p.add(new Chunk(s));
        p.add(Chunk.NEWLINE);
    }
    PdfPCell cell = new PdfPCell(p);
    cell.setHorizontalAlignment(Element.ALIGN_CENTER);
    cell.setBorder(Rectangle.BOTTOM | Rectangle.TOP);
    cell.setBorderWidthTop(1.5f);
    cell.setBorderWidthBottom(1.5f);
    cell.setPaddingBottom(7);
    cell.setPaddingTop(2);
    return cell;
}

From source file:Export.DocNotaCredito.java

@SuppressWarnings("CallToPrintStackTrace")
private void docSeguros(String nomeSeguro, String interCod, String user, String arquivo, int idResseguro,
        TypeNotaCredito tnc) {//from  ww  w .  j  av a2 s.c o m
    String reString;
    try {

        Font fontCabecalhoN = FontFactory.getFont(Fontes.FONTB, BaseFont.WINANSI, BaseFont.EMBEDDED, 9.2f);
        Font fontLinha = FontFactory.getFont(Fontes.FONTB, BaseFont.WINANSI, BaseFont.EMBEDDED, 0.000000358f);
        Font fontCabecalhoS = FontFactory.getFont(Fontes.FONT, BaseFont.WINANSI, BaseFont.EMBEDDED, 9.2f);
        Font fontCorpo = FontFactory.getFont(Fontes.FONT, BaseFont.WINANSI, BaseFont.EMBEDDED, 8f);
        Font fontCorpoN = FontFactory.getFont(Fontes.FONTB, BaseFont.WINANSI, BaseFont.EMBEDDED, 8f);
        Font fontNull = FontFactory.getFont(Fontes.FONT, BaseFont.WINANSI, BaseFont.EMBEDDED, 4f);
        Font fontMenor = FontFactory.getFont(Fontes.FONT, BaseFont.WINANSI, BaseFont.EMBEDDED, 3f);

        PdfPTable pTableEmpresaPricipal = new PdfPTable(new float[] { 80, 20 });
        pTableEmpresaPricipal.setWidthPercentage(95);
        PdfPTable pTableEmpresaInforImpres1 = new PdfPTable(1);
        PdfPTable pTableEmpresaInforImpres2 = new PdfPTable(1);
        PdfPTable pTableEmpresaInforImpres3 = new PdfPTable(2);
        PdfPTable pTableEmpresaInforImpres4 = new PdfPTable(2);
        PdfPTable pTableEmpresaInforImpres5 = new PdfPTable(1);

        DataResseguro resS = new DataResseguro();
        HashMap<String, Object> map = new LinkedHashMap<>();
        if (tnc == TypeNotaCredito.RESEGURO) {
            resS = DataReseguro.getDadosReseguro(idResseguro);
        } else {
            map = loadNotaConta();
        }

        PdfPTable pTableFatura = new PdfPTable(new float[] { 80, 20 });

        PdfPCell pCellNomeEmpresa = new PdfPCell(new Phrase(Empresa.NOME, fontCabecalhoN));
        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 pCellCapital = new PdfPCell(new Phrase(Empresa.CAPITALSOCIAL, fontCabecalhoN));
        pCellCapital.setBorder(0);

        PdfPCell pCellPolice = new PdfPCell(new Phrase(
                Empresa.APOLICE + ((TypeNotaCredito.RESEGURO == tnc) ? resS.getAPOLICE() : map.get(APOLICE)),
                fontCabecalhoN));
        pCellPolice.setBorder(0);

        PdfPCell pCellDebNF = new PdfPCell(new Phrase("Cre. N", fontCabecalhoS));
        pCellDebNF.setHorizontalAlignment(Element.ALIGN_RIGHT);
        pCellDebNF.setBorder(0);

        PdfPCell pCellDebN = new PdfPCell(new Phrase(
                ((TypeNotaCredito.RESEGURO == tnc) ? resS.getIDSEGURO() : map.get(ID) + ""), fontCabecalhoS));
        pCellDebN.setHorizontalAlignment(Element.ALIGN_CENTER);
        pCellDebN.setBorder(0);

        PdfPCell pCellInterCoF = new PdfPCell(new Phrase("Inter COD:", fontCabecalhoS));
        pCellInterCoF.setHorizontalAlignment(Element.ALIGN_RIGHT);
        pCellInterCoF.setBorder(0);

        PdfPCell pCellInterCo = new PdfPCell(new Phrase(interCod, fontCabecalhoS));
        pCellInterCo.setHorizontalAlignment(Element.ALIGN_CENTER);
        pCellInterCo.setBorder(0);

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

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

        pTableEmpresaInforImpres2.addCell(pCellCapital);
        pTableEmpresaInforImpres2.addCell(pCellPolice);

        pTableEmpresaInforImpres3.addCell(pCellDebNF);
        pTableEmpresaInforImpres3.addCell(pCellDebN);
        pTableEmpresaInforImpres3.addCell(pCellInterCoF);
        pTableEmpresaInforImpres3.addCell(pCellInterCo);

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

        pTableEmpresaInforImpres4.addCell(cellTabela1);

        PdfPCell cellTabela2 = new PdfPCell(pTableEmpresaInforImpres3);
        cellTabela2.setBorder(0);

        pTableEmpresaInforImpres4.addCell(cellTabela2);

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

        pTableEmpresaInforImpres5.addCell(cellTabela3);

        PdfPCell cellTabela4 = new PdfPCell(pTableEmpresaInforImpres4);
        cellTabela4.setBorder(0);

        pTableEmpresaInforImpres5.addCell(cellTabela4);

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

        pTableEmpresaPricipal.addCell(cellTabela5);

        PdfPCell cellTabela6 = new PdfPCell(imageEmpresa);
        cellTabela6.setBorder(0);
        cellTabela6.setHorizontalAlignment(Element.ALIGN_RIGHT);

        pTableEmpresaPricipal.addCell(cellTabela6);

        //
        PdfPTable pTableLinha = new PdfPTable(1);
        pTableLinha.setWidthPercentage(95);
        PdfPCell linha = new PdfPCell(new Phrase(" ", fontLinha));
        linha.setBorderWidthTop(0.5f);
        linha.setBorderWidthBottom(0);
        linha.setBorderWidthLeft(0);
        linha.setBorderWidthRight(0);
        pTableLinha.addCell(linha);

        PdfPTable pTableCorpoEndTitile = new PdfPTable(new float[] { 100 });
        pTableCorpoEndTitile.setWidthPercentage(95);
        PdfPCell cellCorpoEndTitile = new PdfPCell();
        Paragraph paragraphCorpoEndTitile = new Paragraph();

        Paragraph titile = new Paragraph("NOTA DE CREDITO", fontCabecalhoN);
        titile.setAlignment(Paragraph.ALIGN_CENTER);

        PdfPTable pTableNumNota = new PdfPTable(new float[] { 100f });

        Paragraph titileSub = new Paragraph(nomeSeguro, fontCabecalhoN);
        titileSub.setAlignment(Paragraph.ALIGN_CENTER);
        paragraphCorpoEndTitile.add(titile);

        if (tnc == TypeNotaCredito.ANULACAO) {
            PdfPCell titileNum = new PdfPCell(new Paragraph("Deb. N " + map.get(NOTADEBITO), fontCabecalhoN));
            titileNum.setBorder(PdfPCell.NO_BORDER);
            titileNum.setHorizontalAlignment(PdfPCell.ALIGN_RIGHT);

            pTableNumNota.addCell(titileNum);
            paragraphCorpoEndTitile.add(pTableNumNota);
        }

        paragraphCorpoEndTitile.add(titileSub);

        paragraphCorpoEndTitile.add(new Paragraph(" ", fontCorpo));
        paragraphCorpoEndTitile.add(new Paragraph(" ", fontCorpo));

        ArrayList<DataReseguro.DataEmpresa> listaDataEmpresas = new ArrayList<>();

        ClienteI ci = null;
        if (tnc == TypeNotaCredito.RESEGURO) {
            listaDataEmpresas = DataReseguro.getDadosEmpresa(idResseguro);
        } else {
            ci = new ClienteI(map.get(IDCLIENTE) + "");
        }

        Phrase pCr = new Phrase("BENEFICI?RIO: ", fontCabecalhoN);
        paragraphCorpoEndTitile.add(pCr);
        @SuppressWarnings("null")
        Phrase pCrTex = new Phrase(
                ((tnc == TypeNotaCredito.RESEGURO) ? resS.getCLIENTE() : map.get(BENEFICIARIO) + "\n"),
                fontCabecalhoS);
        paragraphCorpoEndTitile.add(pCrTex);

        Phrase pEndereco = new Phrase("Endereo: ".toUpperCase(), fontCabecalhoN);
        paragraphCorpoEndTitile.add(pEndereco);
        Phrase pEnderecoTex = new Phrase(
                ((tnc == TypeNotaCredito.RESEGURO) ? ConfigDoc.Empresa.ENDERECO : ci.getENDERECO_()) + "\n",
                fontCabecalhoS);
        paragraphCorpoEndTitile.add(pEnderecoTex);

        Phrase pPolice = new Phrase("Apolice: ".toUpperCase(), fontCabecalhoN);
        paragraphCorpoEndTitile.add(pPolice);
        Phrase pPoliceTex = new Phrase(
                ((tnc == TypeNotaCredito.RESEGURO) ? resS.getAPOLICE() : map.get(APOLICE)) + "\n",
                fontCabecalhoS);
        paragraphCorpoEndTitile.add(pPoliceTex);

        //                Phrase pInterCod = new Phrase("intermediry Code".toUpperCase(), fontCabecalhoN);
        //                paragraphCorpoEndTitile.add(pInterCod);
        //                Phrase pInterCodTex = new Phrase(/*SessionUtil.getUserlogado().getResidencia()*/"In ----\n", fontCabecalhoS);
        //                paragraphCorpoEndTitile.add(pInterCodTex);

        Phrase pDate = new Phrase("DATA: ".toUpperCase(), fontCabecalhoN);
        paragraphCorpoEndTitile.add(pDate);
        Phrase pDateTex = new Phrase(((TypeNotaCredito.ANULACAO != tnc) ? resS.getINICIO() + " " + resS.getFIM()
                : map.get(DATAINICIO) + " " + map.get(DATAFIM)) + "\n", fontCabecalhoS);
        paragraphCorpoEndTitile.add(pDateTex);

        Phrase pSegurado = new Phrase("Segurado: ".toUpperCase(), fontCabecalhoN);
        paragraphCorpoEndTitile.add(pSegurado);
        Phrase pSeguradoTex = new Phrase(
                ((tnc == TypeNotaCredito.RESEGURO) ? ConfigDoc.Empresa.NOME + "(" + resS.getCLIENTE() + ")"
                        : ci.getNOME_()),
                fontCabecalhoS);
        paragraphCorpoEndTitile.add(pSeguradoTex);

        paragraphCorpoEndTitile.add(new Paragraph(" ", fontCorpo));
        paragraphCorpoEndTitile.add(new Paragraph(" ", fontCorpo));

        //Tabela Principal
        PdfPTable pTableNotaCredito = new PdfPTable(new float[] { 21.5f, 21.5f, 22f, 27f, 7f });
        //            PdfPTable pTableNotaCreditos = new PdfPTable(new float[]{70f, 30f});
        pTableNotaCredito.setWidthPercentage(100f);
        //            pTableNotaCreditos.setWidthPercentage(100f);

        PdfPCell cellParticular = new PdfPCell(new Phrase("Particular".toUpperCase(), fontCorpoN));
        cellParticular.setBorderWidth(1);
        pTableNotaCredito.addCell(cellParticular);

        PdfPCell cellPremioGrosso = new PdfPCell(new Phrase("Prmio Grosso".toUpperCase(), fontCorpoN));
        cellPremioGrosso.setBorderWidth(1);
        pTableNotaCredito.addCell(cellPremioGrosso);

        PdfPCell cellComissaoDedutivel = new PdfPCell(
                new Phrase("Comisso Dedutvel".toUpperCase(), fontCorpoN));
        cellComissaoDedutivel.setBorderWidth(1);
        pTableNotaCredito.addCell(cellComissaoDedutivel);

        PdfPCell cellValorLiquidoD = new PdfPCell(new Phrase("Valor Liqudo Devido", fontCorpoN));
        cellValorLiquidoD.setBorderWidth(1);
        cellValorLiquidoD.setBorderWidthRight(0);
        pTableNotaCredito.addCell(cellValorLiquidoD);

        PdfPCell cellNull = new PdfPCell(new Phrase(" ", fontCorpoN));
        PdfPCell cellNull1 = new PdfPCell(new Phrase("(NET)", fontCorpoN));
        cellNull.setBorder(0);

        cellNull1.setBorderWidthTop(1);
        cellNull1.setBorderWidthRight(1);
        cellNull1.setBorderWidthLeft(0);
        cellNull1.setBorderWidthBottom(1);
        cellNull1.setHorizontalAlignment(PdfPCell.ALIGN_RIGHT);

        pTableNotaCredito.addCell(cellNull1);

        cellParticular = new PdfPCell(
                new Phrase(((TypeNotaCredito.RESEGURO == tnc) ? resS.getDESCRICAO().toUpperCase()
                        : map.get(DESCRICAO) + ""), fontCorpo));
        cellParticular.setBorderWidth(1);
        pTableNotaCredito.addCell(cellParticular);

        cellPremioGrosso = new PdfPCell(new Phrase(
                ((TypeNotaCredito.RESEGURO == tnc) ? Moeda.format(Double.valueOf(resS.getPREMIOGROSSO()))
                        : Moeda.format(Double.valueOf(map.get(PREMIOGROSSO) + ""))),
                fontCorpo));
        cellPremioGrosso.setBorderWidth(1);
        cellPremioGrosso.setHorizontalAlignment(PdfPCell.ALIGN_CENTER);
        cellPremioGrosso.setPaddingTop(30f);
        pTableNotaCredito.addCell(cellPremioGrosso);

        cellComissaoDedutivel = new PdfPCell(new Phrase(
                ((TypeNotaCredito.RESEGURO == tnc) ? resS.getDEDUCAO() + "%" : map.get(DECUCAO) + "%"),
                fontCorpo));
        cellComissaoDedutivel.setBorderWidth(1);
        cellComissaoDedutivel.setPaddingTop(30f);
        cellComissaoDedutivel.setHorizontalAlignment(PdfPCell.ALIGN_CENTER);
        pTableNotaCredito.addCell(cellComissaoDedutivel);

        cellValorLiquidoD = new PdfPCell(new Phrase(
                Moeda.format(Double
                        .valueOf(((TypeNotaCredito.RESEGURO == tnc) ? resS.getTOTAL() : map.get(TOTAL) + ""))),
                fontCorpo));
        cellValorLiquidoD.setBorderWidth(1);
        cellValorLiquidoD.setHorizontalAlignment(PdfPCell.ALIGN_CENTER);
        cellValorLiquidoD.setPaddingTop(30f);
        cellValorLiquidoD.setPaddingBottom(75f);
        pTableNotaCredito.addCell(cellValorLiquidoD);

        pTableNotaCredito.addCell(cellNull);

        PdfPCell cellTotalDebito = new PdfPCell(new Phrase("TOTAL ", fontCorpoN));
        cellTotalDebito.setBorder(PdfPCell.NO_BORDER);
        cellTotalDebito.setColspan(3);
        pTableNotaCredito.addCell(cellTotalDebito);

        PdfPCell cellTotalDebitoV = new PdfPCell(new Phrase(
                Moeda.format(Double
                        .valueOf(((TypeNotaCredito.RESEGURO == tnc) ? resS.getTOTAL() : map.get(TOTAL) + ""))),
                fontCorpo));
        cellTotalDebitoV.setBorderWidth(1);
        cellTotalDebitoV.setHorizontalAlignment(PdfPCell.ALIGN_CENTER);
        pTableNotaCredito.addCell(cellTotalDebitoV);

        pTableNotaCredito.addCell(cellNull);

        double cambio;
        double totalSTD = 0;
        if (!((TypeNotaCredito.RESEGURO == tnc) ? resS.getMOEDA() : map.get(SIGLADAMOEDA)).equals("STD")) {
            PdfPCell cellCambio = new PdfPCell(new Phrase(
                    "CAMBIO " + ((TypeNotaCredito.RESEGURO == tnc) ? resS.getMOEDA() : map.get(SIGLADAMOEDA)),
                    fontCorpoN));
            cellCambio.setBorder(PdfPCell.NO_BORDER);
            cellCambio.setColspan(3);
            pTableNotaCredito.addCell(cellCambio);

            cambio = valorCompra(
                    ((TypeNotaCredito.RESEGURO == tnc) ? resS.getMOEDA() : map.get(SIGLADAMOEDA) + ""),
                    ((TypeNotaCredito.RESEGURO == tnc) ? new Date() : map.get(CTT_DTREG)));

            PdfPCell cellCambioV = new PdfPCell(new Phrase(Moeda.format(cambio), fontCorpo));
            cellCambioV.setBorderWidth(1);
            cellCambioV.setHorizontalAlignment(PdfPCell.ALIGN_CENTER);
            pTableNotaCredito.addCell(cellCambioV);

            pTableNotaCredito.addCell(cellNull);

            PdfPCell cellValorDobras = new PdfPCell(new Phrase("VALOR EM DOBRAS", fontCorpoN));
            cellValorDobras.setBorder(PdfPCell.NO_BORDER);
            cellValorDobras.setColspan(3);
            pTableNotaCredito.addCell(cellValorDobras);

            totalSTD = cambio
                    * Double.valueOf((TypeNotaCredito.RESEGURO == tnc) ? resS.getTOTAL() : map.get(TOTAL) + "");
            PdfPCell cellValorDobrasV = new PdfPCell(new Phrase(Moeda.format(totalSTD), fontCorpo));
            cellValorDobrasV.setBorderWidth(1);
            cellValorDobrasV.setHorizontalAlignment(PdfPCell.ALIGN_CENTER);
            pTableNotaCredito.addCell(cellValorDobrasV);

            pTableNotaCredito.addCell(cellNull);
        }

        paragraphCorpoEndTitile.add(pTableNotaCredito);
        JTextPane jtp = new JTextPane();
        Moeda.EscreverEstenso(totalSTD, jtp, "Dobras");
        paragraphCorpoEndTitile.add(new Phrase("POR EXTENSO: ", fontCorpoN));
        paragraphCorpoEndTitile.add(new Phrase(jtp.getText().toUpperCase().trim() + "\n", fontCorpo));

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

        paragraphCorpoEndTitile.add(new Phrase("NOTA: ZERO PRMIO, ZERO COBERTURA", fontCorpoN));

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

        PdfPTable pTableRodape = new PdfPTable(new float[] { 33.333333333f, 33.333333333f, 33.333333333f });
        pTableRodape.setWidthPercentage(100.0f);

        PdfPCell cellRodapeData = new PdfPCell(
                new Phrase(".......................................................", fontCorpo));
        cellRodapeData.setHorizontalAlignment(PdfPCell.ALIGN_CENTER);
        cellRodapeData.setBorder(PdfPCell.NO_BORDER);
        pTableRodape.addCell(cellRodapeData);

        PdfPCell cellRodapeVerificado = new PdfPCell(
                new Phrase(".......................................................", fontCorpoN));
        cellRodapeVerificado.setHorizontalAlignment(PdfPCell.ALIGN_CENTER);
        cellRodapeVerificado.setBorder(PdfPCell.NO_BORDER);
        pTableRodape.addCell(cellRodapeVerificado);

        PdfPCell cellAssinatura = new PdfPCell(
                new Phrase(".......................................................", fontCorpo));
        cellAssinatura.setHorizontalAlignment(PdfPCell.ALIGN_CENTER);
        cellAssinatura.setBorder(PdfPCell.NO_BORDER);
        pTableRodape.addCell(cellAssinatura);

        cellRodapeData = new PdfPCell(new Phrase(" ", fontCorpo));
        cellRodapeData.setBorder(PdfPCell.NO_BORDER);
        pTableRodape.addCell(cellRodapeData);

        cellRodapeVerificado = new PdfPCell(new Phrase("VERIFICADO POR", fontCorpoN));
        cellRodapeVerificado.setHorizontalAlignment(PdfPCell.ALIGN_CENTER);
        cellRodapeVerificado.setBorder(PdfPCell.NO_BORDER);
        pTableRodape.addCell(cellRodapeVerificado);

        cellAssinatura = new PdfPCell(new Phrase("ASSINATURA", fontCorpo));
        cellAssinatura.setHorizontalAlignment(PdfPCell.ALIGN_CENTER);
        cellAssinatura.setBorder(PdfPCell.NO_BORDER);
        pTableRodape.addCell(cellAssinatura);

        paragraphCorpoEndTitile.add(pTableRodape);

        cellCorpoEndTitile.addElement(paragraphCorpoEndTitile);

        cellCorpoEndTitile.setBorder(PdfPCell.NO_BORDER);

        pTableCorpoEndTitile.addCell(cellCorpoEndTitile);

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

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

        String f1 = (arquivo + "/" + interCod + "/Seguro " + nomeSeguro + "/");
        File f = new File(f1);
        String Ddata = sdf1.format(new Date());
        f.mkdirs();
        f = new File(f.getAbsoluteFile() + "/" + "Nota de Credito " + Ddata + ".pdf");

        reString = "../Documentos/" + interCod + "/Seguro " + nomeSeguro + "/" + "Nota de Credito " + Ddata
                + ".pdf";
        OutputStream outputStraem = new FileOutputStream(f);
        PdfWriter writer = PdfWriter.getInstance(documento, outputStraem);

        documento.open();
        documento.add(pTableEmpresaPricipal);
        documento.add(pTableLinha);
        documento.add(pTableLinha);
        documento.add(pTableCorpoEndTitile);
        documento.close();

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

}

From source file:Export.DocNotaDebito.java

@SuppressWarnings({ "CallToPrintStackTrace", "null", "UnusedAssignment" })
public String docSeguros(String nomeSeguro, String numApolice, String interCodVendedor, String idCliente,
        String fundoContrato, ArrayList<String[]> listaValores, Contrato contrato, String user, String moeda,
        String arquivo, String numeroRegistro) {
    String reString;/*from   ww  w  .  ja v a  2  s.  com*/
    try {

        Font fontCabecalhoN = FontFactory.getFont(Fontes.FONTB, BaseFont.WINANSI, BaseFont.EMBEDDED, 9.2f);
        Font fontLinha = FontFactory.getFont(Fontes.FONTB, BaseFont.WINANSI, BaseFont.EMBEDDED, 0.000000358f);
        Font fontCabecalhoS = FontFactory.getFont(Fontes.FONT, BaseFont.WINANSI, BaseFont.EMBEDDED, 9.2f);
        Font fontCorpo = FontFactory.getFont(Fontes.FONT, BaseFont.WINANSI, BaseFont.EMBEDDED, 8f);
        Font fontCorpoN = FontFactory.getFont(Fontes.FONTB, BaseFont.WINANSI, BaseFont.EMBEDDED, 8f);
        Font fontNull = FontFactory.getFont(Fontes.FONT, BaseFont.WINANSI, BaseFont.EMBEDDED, 4f);
        Font fontMenor = FontFactory.getFont(Fontes.FONT, BaseFont.WINANSI, BaseFont.EMBEDDED, 3f);

        PdfPTable pTableEmpresaPricipal = new PdfPTable(new float[] { 80, 20 });
        pTableEmpresaPricipal.setWidthPercentage(95);
        PdfPTable pTableEmpresaInforImpres1 = new PdfPTable(1);
        PdfPTable pTableEmpresaInforImpres2 = new PdfPTable(1);
        PdfPTable pTableEmpresaInforImpres3 = new PdfPTable(2);
        PdfPTable pTableEmpresaInforImpres4 = new PdfPTable(2);
        PdfPTable pTableEmpresaInforImpres5 = new PdfPTable(1);

        PdfPTable pTableFatura = new PdfPTable(new float[] { 80, 20 });
        pTableFatura.setWidthPercentage(95);

        PdfPCell pCellNomeEmpresa = new PdfPCell(new Phrase(Empresa.NOME, fontCabecalhoN));
        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 pCellCapital = new PdfPCell(new Phrase(Empresa.CAPITALSOCIAL, fontCabecalhoN));
        pCellCapital.setBorder(0);

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

        PdfPCell pCellDebNF = new PdfPCell(new Phrase("Deb. N", fontCabecalhoS));
        pCellDebNF.setHorizontalAlignment(Element.ALIGN_RIGHT);
        pCellDebNF.setBorder(0);

        PdfPCell pCellDebN = new PdfPCell(new Phrase(numeroRegistro, fontCabecalhoS));
        pCellDebN.setHorizontalAlignment(Element.ALIGN_CENTER);
        pCellDebN.setBorder(0);

        PdfPCell pCellInterCoF = new PdfPCell(new Phrase("Inter COD:", fontCabecalhoS));
        pCellInterCoF.setHorizontalAlignment(Element.ALIGN_RIGHT);
        pCellInterCoF.setBorder(0);

        PdfPCell pCellInterCo = new PdfPCell(new Phrase(interCodVendedor, fontCabecalhoS));
        pCellInterCo.setHorizontalAlignment(Element.ALIGN_CENTER);
        pCellInterCo.setBorder(0);

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

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

        pTableEmpresaInforImpres2.addCell(pCellCapital);
        pTableEmpresaInforImpres2.addCell(pCellPolice);

        pTableEmpresaInforImpres3.addCell(pCellDebNF);
        pTableEmpresaInforImpres3.addCell(pCellDebN);
        pTableEmpresaInforImpres3.addCell(pCellInterCoF);
        pTableEmpresaInforImpres3.addCell(pCellInterCo);

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

        pTableEmpresaInforImpres4.addCell(cellTabela1);

        PdfPCell cellTabela2 = new PdfPCell(pTableEmpresaInforImpres3);
        cellTabela2.setBorder(0);

        pTableEmpresaInforImpres4.addCell(cellTabela2);

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

        pTableEmpresaInforImpres5.addCell(cellTabela3);

        PdfPCell cellTabela4 = new PdfPCell(pTableEmpresaInforImpres4);
        cellTabela4.setBorder(0);

        pTableEmpresaInforImpres5.addCell(cellTabela4);

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

        pTableEmpresaPricipal.addCell(cellTabela5);

        PdfPCell cellTabela6 = new PdfPCell(imageEmpresa);
        cellTabela6.setBorder(0);
        cellTabela6.setHorizontalAlignment(Element.ALIGN_RIGHT);

        pTableEmpresaPricipal.addCell(cellTabela6);

        PdfPCell cellFaturaTitulo = new PdfPCell(new Phrase("FACTURA", fontCabecalhoN));
        cellFaturaTitulo.setBorder(0);
        cellFaturaTitulo.setHorizontalAlignment(Element.ALIGN_RIGHT);

        PdfPCell cellFaturaTipo = new PdfPCell(new Phrase(nomeSeguro, fontCabecalhoN));
        cellFaturaTipo.setHorizontalAlignment(Element.ALIGN_CENTER);
        cellFaturaTipo.setBorder(0);

        PdfPTable pTableLinha = new PdfPTable(1);
        pTableLinha.setWidthPercentage(95);
        PdfPCell linha = new PdfPCell(new Phrase(" ", fontLinha));
        linha.setBorderWidthTop(0.5f);
        linha.setBorderWidthBottom(0);
        linha.setBorderWidthLeft(0);
        linha.setBorderWidthRight(0);
        pTableLinha.addCell(linha);

        pTableFatura.addCell(cellFaturaTitulo);
        pTableFatura.addCell(cellFaturaTipo);

        PdfPTable pTableClientePrincipal = new PdfPTable(new float[] { 60, 10, 30 });
        pTableClientePrincipal.setWidthPercentage(95);
        PdfPTable pTableClienteDescisao = new PdfPTable(1);
        PdfPTable pTableDataEVenda = new PdfPTable(1);
        PdfPTable pTableTitulo = new PdfPTable(1);
        pTableTitulo.setWidthPercentage(95);

        ClienteI ci = null;
        ArrayList<DataReseguro.DataEmpresa> listaDataEmpresas = new ArrayList<>();
        if (!isReseguro) {
            ci = new ClienteI(idCliente);
        } else {
            listaDataEmpresas = DataReseguro.getDadosEmpresa(Integer.valueOf(idCliente));
        }

        Paragraph pCl = new Paragraph();
        pCl.add(new Phrase((isReseguro) ? "NOME: " : ci.getNOMEL_(), fontCorpo));
        pCl.add(new Phrase(
                (isReseguro) ? listaDataEmpresas.get(0).getEMPRESA().toUpperCase() + " (" + segurado + ")"
                        : ci.getNOME_(),
                fontCorpoN));
        PdfPCell cellNomeCliente = new PdfPCell(pCl);
        cellNomeCliente.setBorder(0);

        pCl = new Paragraph();
        pCl.add(new Phrase((isReseguro) ? "ENDEREO: " : ci.getENDERECOL_(), fontCorpo));
        pCl.add(new Phrase((isReseguro) ? listaDataEmpresas.get(0).getENDERECO() : ci.getENDERECO_(),
                fontCorpoN));
        if (!isReseguro) {
            pCl.add(new Phrase("       ", fontCorpoN));
            pCl.add(new Phrase((isReseguro) ? "" : ci.getCODPOSTALL_(), fontCorpo));
            pCl.add(new Phrase((isReseguro) ? "" : ci.getCODPOSTAL_(), fontCorpoN));
        }
        PdfPCell cellClienteMorada = new PdfPCell(pCl);
        cellClienteMorada.setBorder(0);

        PdfPCell cellNomeLocalidade = null;
        PdfPCell cellNomeTelefone = null;
        if (!isReseguro) {
            pCl = new Paragraph();
            pCl.add(new Phrase(ci.getLOCALTRABALHOL_(), fontCorpo));
            pCl.add(new Phrase(ci.getLOCALTRABALHO_(), fontCorpoN));
            cellNomeLocalidade = new PdfPCell(pCl);
            cellNomeLocalidade.setBorder(0);

            pCl = new Paragraph();
            pCl.add(new Phrase(ci.getTELEFONEL_(), fontCorpo));
            pCl.add(new Phrase(ci.getTELEFONE_(), fontCorpoN));
            cellNomeTelefone = new PdfPCell(pCl);
            cellNomeTelefone.setBorder(0);
        }

        SimpleDateFormat sdf = new SimpleDateFormat("dd 'de' MMMM 'de' yyyy", new Locale("pt", "BR"));
        SimpleDateFormat sdfContr = new SimpleDateFormat("dd-MM-yyyy");
        SimpleDateFormat sdf1 = new SimpleDateFormat("dd-MM-yyyy hh'.'mm'.'ss");
        PdfPCell cellDataContrato = new PdfPCell(new Phrase(
                "Data: " + (contrato.getDataInicio() != null ? sdfContr.format(contrato.getDataInicio()) : "")
                        + " - " + (contrato.getDataFim() != null ? sdfContr.format(contrato.getDataFim()) : ""),
                fontCorpo));
        cellDataContrato.setHorizontalAlignment(Element.ALIGN_CENTER);
        cellDataContrato.setVerticalAlignment(Element.ALIGN_BOTTOM);
        cellDataContrato.setBorderWidthTop(1f);
        cellDataContrato.setBorderWidthBottom(0f);
        cellDataContrato.setBorderWidthLeft(1f);
        cellDataContrato.setBorderWidthRight(1f);

        PdfPCell cellVendetor = new PdfPCell(new Phrase("Vendedor: "
                + ((!isReseguro) ? "NICON SEGUROS" : listaDataEmpresas.get(0).getEMPRESA().toUpperCase()),
                fontCorpo));
        cellVendetor.setHorizontalAlignment(Element.ALIGN_CENTER);
        cellVendetor.setVerticalAlignment(Element.ALIGN_TOP);
        cellVendetor.setBorderWidthTop(0f);
        cellVendetor.setBorderWidthBottom(1f);
        cellVendetor.setBorderWidthLeft(1f);
        cellVendetor.setBorderWidthRight(1f);

        pTableClienteDescisao.addCell(cellNomeCliente);
        pTableClienteDescisao.addCell(cellClienteMorada);
        if (!isReseguro) {
            pTableClienteDescisao.addCell(cellNomeLocalidade);
            pTableClienteDescisao.addCell(cellNomeTelefone);
        }

        PdfPCell cellZerro = new PdfPCell(new Phrase(" ", fontNull));
        cellZerro.setBorder(0);
        PdfPCell cellZerro2 = new PdfPCell(new Phrase(" "));
        cellZerro2.setBorderWidthTop(0f);
        cellZerro2.setBorderWidthBottom(0f);
        cellZerro2.setBorderWidthLeft(1f);
        cellZerro2.setBorderWidthRight(1f);

        PdfPTable pTableNull = new PdfPTable(1);
        pTableNull.setWidthPercentage(95);
        pTableNull.addCell(cellZerro);

        pTableDataEVenda.addCell(cellDataContrato);
        pTableDataEVenda.addCell(cellZerro2);
        pTableDataEVenda.addCell(cellVendetor);

        PdfPCell cellTitulo = new PdfPCell(new Phrase("Cliente", fontCabecalhoN));
        cellTitulo.setBorder(0);

        pTableTitulo.addCell(cellZerro);
        pTableTitulo.addCell(cellTitulo);

        PdfPCell cellCliente = new PdfPCell(pTableClienteDescisao);
        cellCliente.setBorder(0);

        PdfPCell cellCliente1 = new PdfPCell(pTableDataEVenda);
        cellCliente1.setBorder(0);

        pTableClientePrincipal.addCell(cellCliente);
        pTableClientePrincipal.addCell(cellZerro);
        pTableClientePrincipal.addCell(cellCliente1);

        PdfPCell cellQuan = new PdfPCell(new Phrase("QTD", fontCorpo));
        PdfPCell cellDescricao = new PdfPCell(new Phrase("Descrio", fontCorpo));
        PdfPCell cellValorUnitatio = new PdfPCell(new Phrase("Valor Unitrio", fontCorpo));
        PdfPCell cellTotal = new PdfPCell(new Phrase("Total", fontCorpo));
        PdfPTable TableRegistro = new PdfPTable(new float[] { 10, 45, 28, 17 });
        TableRegistro.setWidthPercentage(95);

        cellQuan.setBorderWidthBottom(1f);
        cellQuan.setBorderWidthTop(1f);
        cellQuan.setBorderWidthLeft(1f);
        cellQuan.setBorderWidthRight(1f);
        cellQuan.setHorizontalAlignment(Element.ALIGN_CENTER);
        cellQuan.setVerticalAlignment(Element.ALIGN_CENTER);

        cellDescricao.setBorderWidthBottom(1f);
        cellDescricao.setBorderWidthTop(1f);
        cellDescricao.setBorderWidthLeft(0.5f);
        cellDescricao.setBorderWidthRight(1f);
        cellDescricao.setHorizontalAlignment(Element.ALIGN_CENTER);
        cellDescricao.setVerticalAlignment(Element.ALIGN_CENTER);

        cellValorUnitatio.setBorderWidthBottom(1f);
        cellValorUnitatio.setBorderWidthTop(1f);
        cellValorUnitatio.setBorderWidthLeft(0.5f);
        cellValorUnitatio.setBorderWidthRight(1f);
        cellValorUnitatio.setHorizontalAlignment(Element.ALIGN_CENTER);
        cellValorUnitatio.setVerticalAlignment(Element.ALIGN_CENTER);

        cellTotal.setBorderWidthBottom(1f);
        cellTotal.setBorderWidthTop(1f);
        cellTotal.setBorderWidthLeft(0.5f);
        cellTotal.setBorderWidthRight(1f);
        cellTotal.setHorizontalAlignment(Element.ALIGN_CENTER);
        cellTotal.setVerticalAlignment(Element.ALIGN_CENTER);

        TableRegistro.addCell(cellQuan);
        TableRegistro.addCell(cellDescricao);
        TableRegistro.addCell(cellValorUnitatio);
        TableRegistro.addCell(cellTotal);

        int total = (listaValores.size() > 21) ? listaValores.size() : 18;

        boolean rulpas = false;
        for (int i = 0; i < total + 1; i++) {
            /**
             * Serve para add linha a Table <TableRegistro> e testa caso o ArrayList tenha
             * Menos linha que o <total> a Table <TableRegistro> continua recebendo dados Com String Vazios
             */
            if (listaValores.size() - 1 >= i || (listaValores.size() - 1 == i)) {
                //                    System.err.println(i);
                cellQuan = new PdfPCell(new Phrase(listaValores.get(i)[0], fontCorpo));
                cellDescricao = new PdfPCell(new Phrase(listaValores.get(i)[1], fontCorpo));
                cellValorUnitatio = new PdfPCell(new Phrase(listaValores.get(i)[2] + " "
                        + ((!nomeSeguro.equals("Viagem")) ? contrato.getSigla() : ""), fontCorpo));
                cellTotal = new PdfPCell(new Phrase(listaValores.get(i)[3] + " "
                        + ((!nomeSeguro.equals("Viagem") || listaValores.size() - 1 == i) ? contrato.getSigla()
                                : ""),
                        fontCorpo));

                cellQuan.setPaddingTop(2.5f);
                cellDescricao.setPaddingTop(2.5f);
                cellValorUnitatio.setPaddingTop(2.5f);
                cellTotal.setPaddingTop(2.5f);

                cellQuan.setPaddingBottom(2.5f);
                cellDescricao.setPaddingBottom(2.5f);
                cellValorUnitatio.setPaddingBottom(2.5f);
                cellTotal.setPaddingBottom(2.5f);

                cellQuan.setVerticalAlignment(PdfPCell.ALIGN_MIDDLE);
                cellDescricao.setVerticalAlignment(PdfPCell.ALIGN_MIDDLE);
                cellValorUnitatio.setVerticalAlignment(PdfPCell.ALIGN_MIDDLE);
                cellTotal.setVerticalAlignment(PdfPCell.ALIGN_MIDDLE);

            } else {
                cellQuan = new PdfPCell(new Phrase(" ", fontCorpo));
                cellDescricao = new PdfPCell(new Phrase(" ", fontCorpo));
                cellValorUnitatio = new PdfPCell(new Phrase(" ", fontCorpo));
                cellTotal = new PdfPCell(new Phrase(" ", fontCorpo));
            }

            if (listaValores.size() - 1 == i && !rulpas) {
                cellDescricao.setRowspan(total - i);
                rulpas = true;
            }

            cellQuan.setBorderWidthBottom(0f);
            cellQuan.setBorderWidthTop((listaValores.size() - 1 == i) ? 1f : 0f);
            cellQuan.setHorizontalAlignment(Element.ALIGN_CENTER);

            cellDescricao.setBorderWidthBottom((listaValores.size() - 1 == i) ? 1f : 0f);
            cellDescricao.setBorderWidthTop((listaValores.size() - 1 == i) ? 1f : 0f);
            cellDescricao.setHorizontalAlignment(Element.ALIGN_CENTER);

            cellValorUnitatio.setBorderWidthBottom(0f);
            cellValorUnitatio.setBorderWidthTop((listaValores.size() - 1 == i) ? 1f : 0f);
            cellValorUnitatio.setHorizontalAlignment(Element.ALIGN_CENTER);

            cellTotal.setBorderWidthBottom(0f);
            cellTotal.setBorderWidthTop((listaValores.size() - 1 == i) ? 1f : 0f);
            cellTotal.setHorizontalAlignment(Element.ALIGN_CENTER);

            if (i + 1 == total) {
                cellQuan.setBorderWidthBottom(1f);
                cellDescricao.setBorderWidthBottom(1f);
                cellValorUnitatio.setBorderWidthBottom(1f);
                cellTotal.setBorderWidthBottom(1f);
            }

            TableRegistro.addCell(cellQuan);
            if (listaValores.size() - 1 >= i || listaValores.size() - 1 == i) {
                TableRegistro.addCell(cellDescricao);
            }

            TableRegistro.addCell(cellValorUnitatio);
            TableRegistro.addCell(cellTotal);
        }
        PdfPTable pTablePrincipalPagamento = new PdfPTable(new float[] { 55, 45 });
        pTablePrincipalPagamento.setWidthPercentage(95);
        PdfPTable pTableFomaPagamentoPricipal = new PdfPTable(1);
        PdfPTable pTableFomaPagamento = new PdfPTable(new float[] { 15, 50, 10 });
        PdfPTable pTableFomaValoresPricipal = new PdfPTable(1);
        PdfPTable pTableFomaValores = new PdfPTable(new float[] { 15, 47, 38 });

        PdfPCell cellvazio = new PdfPCell(new Phrase(" ", fontCorpo));
        PdfPCell cellTituloFormaPagamento = new PdfPCell(new Phrase("Forma de Pagamento", fontCorpoN));
        cellTituloFormaPagamento.setBorderWidthBottom(0f);
        cellTituloFormaPagamento.setBorderWidthTop(1f);
        cellTituloFormaPagamento.setBorderWidthRight(0f);
        cellTituloFormaPagamento.setBorderWidthLeft(0f);

        PdfPCell cellTituloForma1 = new PdfPCell(new Phrase(" Cheque", fontCorpo));
        cellTituloForma1.setBorderWidthBottom(0f);
        cellTituloForma1.setBorderWidthTop(0f);
        cellTituloForma1.setBorderWidthRight(0f);
        cellTituloForma1.setBorderWidthLeft(0f);

        PdfPCell cellTituloForma2 = new PdfPCell(new Phrase(" Dinheiro", fontCorpo));
        cellTituloForma2.setBorderWidthBottom(0f);
        cellTituloForma2.setBorderWidthTop(0f);
        cellTituloForma2.setBorderWidthRight(0f);
        cellTituloForma2.setBorderWidthLeft(0f);

        PdfPCell cellTituloForma3 = new PdfPCell(new Phrase(" Outros", fontCorpo));
        cellTituloForma3.setBorderWidthBottom(1f);
        cellTituloForma3.setBorderWidthTop(0f);
        cellTituloForma3.setBorderWidthRight(0f);
        cellTituloForma3.setBorderWidthLeft(0f);

        cellvazio.setBorderWidthBottom(0f);
        cellvazio.setBorderWidthTop(1f);
        cellvazio.setBorderWidthRight(0f);
        cellvazio.setBorderWidthLeft(1f);
        pTableFomaPagamento.addCell(cellvazio);
        pTableFomaPagamento.addCell(cellTituloFormaPagamento);
        cellvazio.setBorderWidthBottom(0f);
        cellvazio.setBorderWidthTop(1f);
        cellvazio.setBorderWidthRight(1f);
        cellvazio.setBorderWidthLeft(0f);
        pTableFomaPagamento.addCell(cellvazio);

        cellvazio.setBorderWidthBottom(0f);
        cellvazio.setBorderWidthTop(0f);
        cellvazio.setBorderWidthRight(0f);
        cellvazio.setBorderWidthLeft(1f);
        pTableFomaPagamento.addCell(cellvazio);
        pTableFomaPagamento.addCell(cellTituloForma1);
        cellvazio.setBorderWidthBottom(0f);
        cellvazio.setBorderWidthTop(0f);
        cellvazio.setBorderWidthRight(1f);
        cellvazio.setBorderWidthLeft(0f);
        pTableFomaPagamento.addCell(cellvazio);

        cellvazio.setBorderWidthBottom(0f);
        cellvazio.setBorderWidthTop(0f);
        cellvazio.setBorderWidthRight(0f);
        cellvazio.setBorderWidthLeft(1f);
        pTableFomaPagamento.addCell(cellvazio);
        pTableFomaPagamento.addCell(cellTituloForma2);
        cellvazio.setBorderWidthBottom(0f);
        cellvazio.setBorderWidthTop(0f);
        cellvazio.setBorderWidthRight(1f);
        cellvazio.setBorderWidthLeft(0f);
        pTableFomaPagamento.addCell(cellvazio);

        cellvazio.setBorderWidthBottom(1f);
        cellvazio.setBorderWidthTop(0f);
        cellvazio.setBorderWidthRight(0f);
        cellvazio.setBorderWidthLeft(1f);
        pTableFomaPagamento.addCell(cellvazio);
        pTableFomaPagamento.addCell(cellTituloForma3);
        cellvazio.setBorderWidthBottom(1f);
        cellvazio.setBorderWidthTop(0f);
        cellvazio.setBorderWidthRight(1f);
        cellvazio.setBorderWidthLeft(0f);
        pTableFomaPagamento.addCell(cellvazio);

        PdfPCell cellNull = new PdfPCell(new Phrase(" ", fontMenor));
        cellNull.setBorderWidthBottom(0f);
        cellNull.setBorderWidthTop(0f);
        cellNull.setBorderWidthRight(0f);
        cellNull.setBorderWidthLeft(0f);

        pTableFomaPagamentoPricipal.addCell(cellNull);
        PdfPCell cellPagamento = new PdfPCell(pTableFomaPagamento);
        cellPagamento.setBorder(0);
        pTableFomaPagamentoPricipal.addCell(cellPagamento);

        PdfPCell cellPecentage1 = new PdfPCell(new Phrase(((nomeSeguro.equals("Viagem") || isReseguro) ? " "
                : ((nomeSeguro.equals("Acidente Para Grupo")) ? " " : "2.50%")), fontCorpo));
        cellPecentage1.setHorizontalAlignment(Element.ALIGN_CENTER);
        cellPecentage1.setBorderWidthBottom(0f);
        cellPecentage1.setBorderWidthTop(1f);
        cellPecentage1.setBorderWidthRight(0f);
        cellPecentage1.setBorderWidthLeft(1f);

        PdfPCell cellPecentage2 = new PdfPCell(new Phrase((isReseguro) ? " " : "5%", fontCorpo));
        cellPecentage2.setHorizontalAlignment(Element.ALIGN_CENTER);
        cellPecentage2.setBorderWidthBottom(0f);
        cellPecentage2.setBorderWidthTop(0f);
        cellPecentage2.setBorderWidthRight(0f);
        cellPecentage2.setBorderWidthLeft(1f);

        PdfPCell cellPecentage3 = new PdfPCell(new Phrase(" ", fontCorpo));
        cellPecentage3.setHorizontalAlignment(Element.ALIGN_CENTER);
        cellPecentage3.setBorderWidthBottom(0f);
        cellPecentage3.setBorderWidthTop(0f);
        cellPecentage3.setBorderWidthRight(0f);
        cellPecentage3.setBorderWidthLeft(1f);

        PdfPCell cellFundo = new PdfPCell(new Phrase(fundoContrato, fontCorpo));
        cellFundo.setHorizontalAlignment(Element.ALIGN_RIGHT);
        cellFundo.setBorderWidthBottom(0f);
        cellFundo.setBorderWidthTop(1f);
        cellFundo.setBorderWidthRight(0f);
        cellFundo.setBorderWidthLeft(0f);

        PdfPCell cellImposto = new PdfPCell(new Phrase((isReseguro) ? " " : "IMPOSTO", fontCorpo));
        cellImposto.setHorizontalAlignment(Element.ALIGN_RIGHT);
        cellImposto.setBorderWidthBottom(0f);
        cellImposto.setBorderWidthTop(0f);
        cellImposto.setBorderWidthRight(0f);
        cellImposto.setBorderWidthLeft(0f);

        PdfPCell cellSelo = new PdfPCell(new Phrase((isReseguro) ? " " : "ACESSORIOS", fontCorpo));
        cellSelo.setHorizontalAlignment(Element.ALIGN_RIGHT);
        cellSelo.setBorderWidthBottom(0f);
        cellSelo.setBorderWidthTop(0f);
        cellSelo.setBorderWidthRight(0f);
        cellSelo.setBorderWidthLeft(0f);

        PdfPCell cellvazio1;
        if (!isReseguro) {
            cellvazio1 = new PdfPCell(
                    new Phrase(
                            ((nomeSeguro.equals("Viagem"))
                                    ? ((contrato.getValorNC() == null || contrato.getValorNC().isEmpty())
                                            ? " "
                                            : Moeda.format(
                                                    Double.valueOf(contrato.getValorNC().replace(',', '.')))
                                                    + " EUR")
                                    : ((nomeSeguro.equals("Acidente Para Grupo")) ? " "
                                            : ((nomeSeguro.equals("Automovel")) ? Moeda.format(
                                                    (Double.valueOf(contrato.getPremioLiquido()) * 0.025)) + " "
                                                    + contrato.getSigla() : "2.50%"))),
                            fontCorpo));
        } else {
            cellvazio1 = new PdfPCell(new Phrase(" ", fontCorpo));
        }
        pTableFomaValores.addCell(cellPecentage1);
        pTableFomaValores.addCell(cellFundo);
        cellvazio1.setBorderWidthTop(1);
        cellvazio1.setBorderWidthRight(1);
        cellvazio1.setHorizontalAlignment(Element.ALIGN_RIGHT);
        pTableFomaValores.addCell(cellvazio1);

        double i05 = 0;//imposto 0.05%
        double i25 = 0;//imposto 2.5%
        try {
            if (nomeSeguro.equals("Viagem")) {
                i05 = 0.05 * Moeda.arrendodamento(contrato.getValorNC().replace(',', '.'));
                i25 = 0.006 * Moeda.arrendodamento(contrato.getValorNC().replace(',', '.'));
            } else if (!isReseguro) {
                i05 = 0.05 * Moeda.arrendodamento(contrato.getPremioLiquido());
                i25 = 0.006 * Moeda.arrendodamento(contrato.getPremioLiquido());
            }
        } catch (Exception e) {
        }
        PdfPCell cellvazio2 = new PdfPCell(
                new Phrase((isReseguro) ? " " : (Moeda.format(i05) + " " + contrato.getSigla()), fontCorpo));
        pTableFomaValores.addCell(cellPecentage2);
        pTableFomaValores.addCell(cellImposto);
        cellvazio2.setBorderWidthRight(1);
        cellvazio2.setBottom(10000);
        cellvazio2.setHorizontalAlignment(Element.ALIGN_RIGHT);
        pTableFomaValores.addCell(cellvazio2);

        PdfPCell cellvazio3 = new PdfPCell(
                new Phrase((isReseguro) ? " " : (Moeda.format(i25) + " " + contrato.getSigla()), fontCorpo));
        pTableFomaValores.addCell(cellPecentage3);
        pTableFomaValores.addCell(cellSelo);
        cellvazio3.setBorderWidthRight(1);
        cellvazio3.setHorizontalAlignment(Element.ALIGN_RIGHT);
        pTableFomaValores.addCell(cellvazio3);

        PdfPTable pTableTotalPagar = new PdfPTable(2);
        PdfPCell cellTituloTotalPagar = new PdfPCell(
                new Phrase("TOTAL A PAGAR " + contrato.getSigla(), fontCorpoN));
        cellTituloTotalPagar.setBorderWidthBottom(1f);
        cellTituloTotalPagar.setBorderWidthTop(0f);
        cellTituloTotalPagar.setBorderWidthRight(0f);
        cellTituloTotalPagar.setBorderWidthLeft(1f);

        PdfPCell cellValorPagar = new PdfPCell(
                new Phrase(contrato.getPremioLiquidoMoeda() + " " + contrato.getSigla(), fontCorpo));
        cellValorPagar.setBorderWidthBottom(1f);
        cellValorPagar.setBorderWidthTop(0f);
        cellValorPagar.setBorderWidthRight(1f);
        cellValorPagar.setBorderWidthLeft(0f);
        cellValorPagar.setHorizontalAlignment(Element.ALIGN_RIGHT);

        pTableTotalPagar.addCell(cellTituloTotalPagar);
        pTableTotalPagar.addCell(cellValorPagar);

        PdfPTable pTableSubTotal = new PdfPTable(new float[] { 62, 38 });
        PdfPCell cellTituloSubTotal = new PdfPCell(new Phrase("SubTotal", fontCorpoN));
        cellTituloSubTotal.setBorder(0);
        cellTituloSubTotal.setHorizontalAlignment(Element.ALIGN_RIGHT);
        PdfPCell cellValorSubTotal = new PdfPCell(
                new Phrase(contrato.getPremioBrutoMoeda() + " " + contrato.getSigla(), fontCorpo));
        cellValorSubTotal.setBorderWidthBottom(0.5f);
        cellValorSubTotal.setBorderWidthTop(1f);
        cellValorSubTotal.setBorderWidthRight(0.5f);
        cellValorSubTotal.setBorderWidthLeft(0.5f);
        cellValorSubTotal.setHorizontalAlignment(Element.ALIGN_RIGHT);

        pTableSubTotal.addCell(cellTituloSubTotal);
        pTableSubTotal.addCell(cellValorSubTotal);

        PdfPCell cellPagament1 = new PdfPCell(pTableSubTotal);
        cellPagament1.setBorder(0);
        PdfPCell cellPagament2 = new PdfPCell(pTableFomaValores);
        cellPagament2.setBorder(0);
        PdfPCell cellPagament3 = new PdfPCell(pTableTotalPagar);
        cellPagament3.setBorder(0);

        pTableFomaValoresPricipal.addCell(cellPagament1);
        pTableFomaValoresPricipal.addCell(cellPagament2);
        pTableFomaValoresPricipal.addCell(cellPagament3);

        PdfPCell cellPagamentPricipal1 = new PdfPCell(pTableFomaPagamentoPricipal);
        cellPagamentPricipal1.setBorder(0);
        PdfPCell cellPagamentPricipal2 = new PdfPCell(pTableFomaValoresPricipal);
        cellPagamentPricipal2.setBorder(0);

        pTablePrincipalPagamento.addCell(cellPagamentPricipal1);
        pTablePrincipalPagamento.addCell(cellPagamentPricipal2);

        PdfPTable pTableCambio = new PdfPTable(2);
        pTableCambio.setWidthPercentage(95);
        PdfPCell cellTituloCambio1 = new PdfPCell(new Phrase("Cambio", fontCorpoN));
        cellTituloCambio1.setBorder(0);
        cellTituloCambio1.setHorizontalAlignment(Element.ALIGN_CENTER);

        PdfPCell cellTituloCambio2 = new PdfPCell(new Phrase("Total Em Dobras", fontCorpoN));
        cellTituloCambio2.setBorder(0);
        cellTituloCambio2.setHorizontalAlignment(Element.ALIGN_CENTER);

        PdfPCell cellValorCambio = new PdfPCell(new Phrase(
                "1 " + contrato.getSigla() + "= "
                        + Moeda.format(valorCompra(contrato.getDataRegistro(), contrato)) + " " + "STD",
                fontCorpo));
        cellValorCambio.setBorder(0);
        cellValorCambio.setHorizontalAlignment(Element.ALIGN_CENTER);

        DecimalFormat formato = new DecimalFormat("#.##");
        String numero = formato.format(Double.valueOf(contrato.getPremioLiquido()));
        double premioLiquido = Double.valueOf((numero).replace(',', '.'));

        //            System.err.println(taxa + "Taxa * Premio Liquido" + Double.valueOf(contrato.getPremioLiquido()));
        //            System.err.println(taxa + "Taxa * Premio Liquido" + Double.toString(premioLiquido));

        PdfPCell cellValorDobras = new PdfPCell(
                new Phrase(Moeda.format((taxa * premioLiquido)) + " STD", fontCorpo));
        cellValorDobras.setBorder(0);
        cellValorDobras.setHorizontalAlignment(Element.ALIGN_CENTER);

        pTableCambio.addCell(cellTituloCambio1);
        pTableCambio.addCell(cellTituloCambio2);
        pTableCambio.addCell(cellValorCambio);
        pTableCambio.addCell(cellValorDobras);

        PdfPTable pTableData = new PdfPTable(1);
        pTableData.setWidthPercentage(95);
        Paragraph pData = new Paragraph();
        pData.add(new Phrase("Elaborado por ", fontCorpo));
        pData.add(new Phrase(interCodVendedor, fontCorpoN));
        pData.add(new Phrase(" Data ".toUpperCase() + sdf.format(new Date()), fontCorpo));
        PdfPCell cellData = new PdfPCell(pData);
        cellData.setBorder(0);
        cellData.setBorderWidthBottom(0.1f);
        cellData.setHorizontalAlignment(Element.ALIGN_CENTER);

        pTableData.addCell(cellData);

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

        String f1 = (arquivo + "/" + user + "/Seguro " + nomeSeguro + "/");
        File f = new File(f1);
        String Ddata = sdf1.format(new Date());
        f.mkdirs();
        f = new File(f.getAbsoluteFile() + "/" + "Nota de Debito " + Ddata + ".pdf");

        reString = "../Documentos/" + user + "/Seguro " + nomeSeguro + "/" + "Nota de Debito " + Ddata + ".pdf";
        OutputStream outputStraem = new FileOutputStream(f);
        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(pTableFatura);
        documento.add(pTableLinha);
        documento.add(pTableLinha);
        documento.add(pTableTitulo);
        documento.add(pTableClientePrincipal);
        documento.add(pTableNull);
        documento.add(TableRegistro);
        documento.add(pTablePrincipalPagamento);
        documento.add(pTableNull);
        documento.add(pTableNull);
        documento.add(pTableCambio);
        documento.add(pTableNull);
        documento.add(pTableNull);
        documento.add(pTableNull);
        documento.add(pTableData);
        documento.add(pTableNull);
        documento.add(pTableNull);
        documento.add(pTableNull);
        documento.add(pTableLinha);
        documento.add(pTableLinha);
        documento.close();

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

    return "";
}

From source file:Export.DocOfReCoSeguro.java

public static void docSeguros(String nomeSeguro, String user, String arquivo, String numDebito, String tileDoc,
        int idReseguro, boolean isReseguroOfNICON) {
    String reString;/*  ww  w  .  jav a2s.c  o  m*/
    try {

        Font fontCabecalhoN = FontFactory.getFont(ConfigDoc.Fontes.FONTB, BaseFont.WINANSI, BaseFont.EMBEDDED,
                9.2f);
        Font fontLinha = FontFactory.getFont(ConfigDoc.Fontes.FONTB, BaseFont.WINANSI, BaseFont.EMBEDDED,
                0.000000358f);
        Font fontCabecalhoS = FontFactory.getFont(ConfigDoc.Fontes.FONT, BaseFont.WINANSI, BaseFont.EMBEDDED,
                9.2f);
        Font fontCorpo = FontFactory.getFont(ConfigDoc.Fontes.FONT, BaseFont.WINANSI, BaseFont.EMBEDDED, 8f);
        Font fontCorpoS = FontFactory.getFont(ConfigDoc.Fontes.FONT, BaseFont.WINANSI, BaseFont.EMBEDDED, 8f,
                Font.UNDERLINE);
        Font fontCorpoN = FontFactory.getFont(ConfigDoc.Fontes.FONTB, BaseFont.WINANSI, BaseFont.EMBEDDED, 8f);
        Font fontNull = FontFactory.getFont(ConfigDoc.Fontes.FONT, BaseFont.WINANSI, BaseFont.EMBEDDED, 4f);
        Font fontMenor = FontFactory.getFont(ConfigDoc.Fontes.FONT, BaseFont.WINANSI, BaseFont.EMBEDDED, 3f);

        DataResseguro reS = DataReseguro.getDadosReseguro(idReseguro);

        PdfPTable pTableEmpresaPricipal = new PdfPTable(new float[] { 80, 20 });
        pTableEmpresaPricipal.setWidthPercentage(90);
        PdfPTable pTableEmpresaInforImpres1 = new PdfPTable(1);
        PdfPTable pTableEmpresaInforImpres2 = new PdfPTable(1);
        PdfPTable pTableEmpresaInforImpres4 = new PdfPTable(1);
        PdfPTable pTableEmpresaInforImpres5 = new PdfPTable(1);

        PdfPTable pTableFatura = new PdfPTable(new float[] { 80, 20 });

        PdfPCell pCellNomeEmpresa = new PdfPCell(new Phrase(ConfigDoc.Empresa.NOME, fontCabecalhoN));
        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);

        PdfPCell pCellCapital = new PdfPCell(new Phrase(ConfigDoc.Empresa.CAPITALSOCIAL, fontCabecalhoN));
        pCellCapital.setBorder(0);

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

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

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

        pTableEmpresaInforImpres2.addCell(pCellCapital);
        pTableEmpresaInforImpres2.addCell(pCellPolice);

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

        pTableEmpresaInforImpres4.addCell(cellTabela1);

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

        pTableEmpresaInforImpres5.addCell(cellTabela3);

        PdfPCell cellTabela4 = new PdfPCell(pTableEmpresaInforImpres4);
        cellTabela4.setBorder(0);

        pTableEmpresaInforImpres5.addCell(cellTabela4);

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

        pTableEmpresaPricipal.addCell(cellTabela5);

        PdfPCell cellTabela6 = new PdfPCell(imageEmpresa);
        cellTabela6.setBorder(0);
        cellTabela6.setHorizontalAlignment(Element.ALIGN_RIGHT);

        pTableEmpresaPricipal.addCell(cellTabela6);

        PdfPTable pTableLinha = new PdfPTable(1);
        pTableLinha.setWidthPercentage(90);
        PdfPCell linha = new PdfPCell(new Phrase(" ", fontLinha));
        linha.setBorderWidthTop(0.5f);
        linha.setBorderWidthBottom(0);
        linha.setBorderWidthLeft(0);
        linha.setBorderWidthRight(0);
        pTableLinha.addCell(linha);

        /**
         * Tile Doc start
         */
        /*
        PdfPTable pTableTileDoc = new PdfPTable(new float[]{50, 50});
                
        PdfPCell cellTileDoc = new PdfPCell(new Phrase(tileDoc, fontCabecalhoS));
        cellTileDoc.setColspan(2);
        cellTileDoc.setPaddingTop(10f);
        cellTileDoc.setPaddingBottom(20f);
        cellTileDoc.setHorizontalAlignment(PdfPCell.ALIGN_CENTER);
        cellTileDoc.setBorder(PdfPCell.NO_BORDER);
        pTableTileDoc.addCell(cellTileDoc);
                
        Paragraph pTile = new Paragraph();
        pTile.add(new Phrase("DEBIT:  ", fontCorpoN));
        pTile.add(new Phrase("NiCON Seguros STP", fontCorpoN));
        PdfPCell cellDebit = new PdfPCell(pTile);
        cellDebit.setBorder(PdfPCell.NO_BORDER);
        pTableTileDoc.addCell(cellDebit);
                
        Paragraph pNotaNum = new Paragraph();
        pNotaNum.add(new Phrase("DEBIT NOTE NO: ", fontCorpoN));
        pNotaNum.add(new Phrase("05525", fontCorpo));
        cellDebit = new PdfPCell(pNotaNum);
        cellDebit.setPaddingLeft(20f);
        cellDebit.setBorder(PdfPCell.NO_BORDER);
        pTableTileDoc.addCell(cellDebit);
                
        cellDebit = new PdfPCell(new Phrase("             Avenida Marginal 12 de Junlho, 977", fontCorpo));
        cellDebit.setBorder(PdfPCell.NO_BORDER);
        pTableTileDoc.addCell(cellDebit);
                
        Paragraph pDate = new Paragraph();
        pDate.add(new Phrase("Date: ", fontCorpoN));
        SimpleDateFormat format = new SimpleDateFormat("dd MMMM',' yyyy",new Locale("pt", "BR"));
        pDate.add(new Phrase(format.format(new Date()), fontCorpo));
        cellDebit = new PdfPCell(pDate);
        cellDebit.setBorder(PdfPCell.NO_BORDER);
        cellDebit.setPaddingLeft(20f);
        pTableTileDoc.addCell(cellDebit);
                
        cellDebit = new PdfPCell(new Phrase("             Cx Postal 556-So Tom", fontCorpo));
        cellDebit.setBorder(PdfPCell.NO_BORDER);
        pTableTileDoc.addCell(cellDebit);
        cellDebit = new PdfPCell(new Phrase(" "));
        cellDebit.setBorder(PdfPCell.NO_BORDER);
        pTableTileDoc.addCell(cellDebit);
        */
        /**
         * Tile Doc end
         */

        ArrayList<DataEmpresa> listaDataEmpresas = DataReseguro.getDadosEmpresa(idReseguro);

        /**
         * Data Parte 1 Start
         */
        PdfPTable pTableDataPart1 = new PdfPTable(new float[] { 18f, 82f });
        pTableDataPart1.setWidthPercentage(90);

        PdfPCell cellDataPart1 = new PdfPCell(new Phrase("EMPRESA LIDER:", fontCorpoN));
        cellDataPart1.setBorder(PdfPCell.NO_BORDER);
        cellDataPart1.setPaddingTop(10f);
        cellDataPart1.setPaddingBottom(5f);
        pTableDataPart1.addCell(cellDataPart1);
        cellDataPart1 = new PdfPCell(
                new Phrase(((!isReseguroOfNICON) ? listaDataEmpresas.get(0).getEMPRESA().toUpperCase()
                        : ConfigDoc.Empresa.NOME), fontCorpo));
        cellDataPart1.setPaddingTop(10f);
        cellDataPart1.setPaddingBottom(5f);
        cellDataPart1.setBorder(PdfPCell.NO_BORDER);
        pTableDataPart1.addCell(cellDataPart1);

        cellDataPart1 = new PdfPCell(new Phrase("CONTRATO N:", fontCorpoN));
        cellDataPart1.setBorder(PdfPCell.NO_BORDER);
        cellDataPart1.setPaddingTop(5f);
        cellDataPart1.setPaddingBottom(5f);
        pTableDataPart1.addCell(cellDataPart1);
        cellDataPart1 = new PdfPCell(new Phrase(reS.getAPOLICE(), fontCorpo));
        cellDataPart1.setPaddingTop(5f);
        cellDataPart1.setPaddingBottom(5f);
        cellDataPart1.setBorder(PdfPCell.NO_BORDER);
        pTableDataPart1.addCell(cellDataPart1);

        cellDataPart1 = new PdfPCell(new Phrase("DESCRIO:", fontCorpoN));
        cellDataPart1.setPaddingTop(5f);
        cellDataPart1.setPaddingBottom(5f);
        cellDataPart1.setBorder(PdfPCell.NO_BORDER);
        pTableDataPart1.addCell(cellDataPart1);
        cellDataPart1 = new PdfPCell(new Phrase(reS.getDESCRICAO(), fontCorpo));
        cellDataPart1.setPaddingTop(5f);
        cellDataPart1.setPaddingBottom(5f);
        cellDataPart1.setBorder(PdfPCell.NO_BORDER);
        pTableDataPart1.addCell(cellDataPart1);

        cellDataPart1 = new PdfPCell(new Phrase("PERIODO:", fontCorpoN));
        cellDataPart1.setBorder(PdfPCell.NO_BORDER);
        cellDataPart1.setPaddingTop(5f);
        cellDataPart1.setPaddingBottom(5f);
        pTableDataPart1.addCell(cellDataPart1);
        cellDataPart1 = new PdfPCell(new Phrase(reS.getINICIO() + " - " + reS.getFIM(), fontCorpo));
        cellDataPart1.setBorder(PdfPCell.NO_BORDER);
        cellDataPart1.setPaddingTop(5f);
        cellDataPart1.setPaddingBottom(5f);
        pTableDataPart1.addCell(cellDataPart1);

        cellDataPart1 = new PdfPCell(new Phrase("LIMITE:", fontCorpoN));
        cellDataPart1.setBorder(PdfPCell.NO_BORDER);
        cellDataPart1.setPaddingTop(5f);
        cellDataPart1.setPaddingBottom(5f);
        pTableDataPart1.addCell(cellDataPart1);
        cellDataPart1 = new PdfPCell(new Phrase((covertDouble(reS.getLIMITE()) == null) ? reS.getLIMITE()
                : Moeda.format(covertDouble(reS.getLIMITE())), fontCorpo));
        cellDataPart1.setBorder(PdfPCell.NO_BORDER);
        cellDataPart1.setPaddingTop(5f);
        cellDataPart1.setPaddingBottom(5f);
        pTableDataPart1.addCell(cellDataPart1);

        cellDataPart1 = new PdfPCell(new Phrase("MOEDA:", fontCorpoN));
        cellDataPart1.setPaddingTop(5f);
        cellDataPart1.setPaddingBottom(10f);
        cellDataPart1.setBorder(PdfPCell.NO_BORDER);
        pTableDataPart1.addCell(cellDataPart1);

        cellDataPart1 = new PdfPCell(new Phrase(reS.getMOEDA(), fontCorpo));
        cellDataPart1.setPaddingTop(5f);
        cellDataPart1.setPaddingBottom(10f);
        cellDataPart1.setBorder(PdfPCell.NO_BORDER);
        pTableDataPart1.addCell(cellDataPart1);
        /**
         * Data Part 1 end
         */

        /**
         * Data Part 2 start
         */
        PdfPTable pTableDataPart2 = new PdfPTable(new float[] { 33.333333333f, 33.333333333f, 33.333333333f });
        pTableDataPart2.setWidthPercentage(90);

        PdfPCell cellDataPart2 = new PdfPCell(new Phrase("PREMIO GROSSO:", fontCorpoN));
        cellDataPart2.setColspan(2);
        cellDataPart2.setBorder(PdfPCell.NO_BORDER);
        cellDataPart2.setPaddingTop(10f);
        cellDataPart2.setPaddingBottom(5f);
        pTableDataPart2.addCell(cellDataPart2);
        cellDataPart2 = new PdfPCell(new Phrase(
                Moeda.format(Double.valueOf(reS.getPREMIOGROSSO().replace(',', '.'))) + " " + reS.getMOEDA(),
                fontCorpo));
        cellDataPart2.setPaddingTop(10f);
        cellDataPart2.setPaddingBottom(5f);
        cellDataPart2.setBorder(PdfPCell.NO_BORDER);
        pTableDataPart2.addCell(cellDataPart2);

        cellDataPart2 = new PdfPCell(new Phrase("DEDUO:", fontCorpoN));
        cellDataPart2.setBorder(PdfPCell.NO_BORDER);
        cellDataPart2.setColspan(2);
        cellDataPart2.setPaddingTop(5f);
        cellDataPart2.setPaddingBottom(5f);
        pTableDataPart2.addCell(cellDataPart2);
        cellDataPart2 = new PdfPCell(new Phrase(reS.getDEDUCAO() + "%", fontCorpo));
        cellDataPart2.setPaddingTop(5f);
        cellDataPart2.setPaddingBottom(5f);
        cellDataPart2.setBorder(PdfPCell.NO_BORDER);
        pTableDataPart2.addCell(cellDataPart2);

        cellDataPart2 = new PdfPCell(new Phrase("LIQUIDO:", fontCorpoN));
        cellDataPart2.setBorder(PdfPCell.NO_BORDER);
        cellDataPart2.setColspan(2);
        cellDataPart2.setPaddingTop(5f);
        cellDataPart2.setPaddingBottom(5f);
        pTableDataPart2.addCell(cellDataPart2);
        cellDataPart2 = new PdfPCell(new Phrase(
                Moeda.format(Double.valueOf(reS.getPREMIOGROSSO().replace(',', '.'))) + " " + reS.getMOEDA(),
                fontCorpo));
        cellDataPart2.setPaddingTop(5f);
        cellDataPart2.setPaddingBottom(5f);
        cellDataPart2.setBorder(PdfPCell.NO_BORDER);
        pTableDataPart2.addCell(cellDataPart2);

        cellDataPart2 = new PdfPCell(new Phrase("TOTAL:", fontCorpoN));
        cellDataPart2.setBorder(PdfPCell.NO_BORDER);
        cellDataPart2.setPaddingTop(5f);
        cellDataPart2.setPaddingBottom(10f);
        pTableDataPart2.addCell(cellDataPart2);
        cellDataPart2 = new PdfPCell(new Phrase("100%", fontCorpo));
        cellDataPart2.setPaddingTop(5f);
        cellDataPart2.setPaddingBottom(10f);
        cellDataPart2.setBorder(PdfPCell.NO_BORDER);
        pTableDataPart2.addCell(cellDataPart2);
        cellDataPart2 = new PdfPCell(new Phrase(
                Moeda.format(Double.valueOf(reS.getTOTAL().replace(',', '.'))) + " " + reS.getMOEDA(),
                fontCorpo));
        cellDataPart2.setPaddingTop(5f);
        cellDataPart2.setPaddingBottom(10f);
        cellDataPart2.setBorder(PdfPCell.NO_BORDER);
        pTableDataPart2.addCell(cellDataPart2);

        //            cellDataPart2 = new PdfPCell(new Phrase("Your faithfully", fontCorpo));
        //            cellDataPart2.setColspan(3);
        //            cellDataPart2.setPaddingTop(5f);
        //            cellDataPart2.setPaddingBottom(0.7f);
        //            cellDataPart2.setBorder(PdfPCell.NO_BORDER);
        //            pTableDataPart2.addCell(cellDataPart2);
        //            cellDataPart2 = new PdfPCell(new Phrase("THE UNITED AFRICAN INSURANCE BROKERS LTD", fontCorpo));
        //            cellDataPart2.setColspan(3);
        //            cellDataPart2.setPaddingTop(0.7f);
        //            cellDataPart2.setPaddingBottom(10F);
        //            cellDataPart2.setBorder(PdfPCell.NO_BORDER);
        //            pTableDataPart2.addCell(cellDataPart2);
        /**
         * Data Part 2 end
         */
        PdfPTable pTableSecureter = new PdfPTable(new float[] { 30f, 30f, 40f });

        PdfPCell cellSecureterNull = new PdfPCell(new Phrase(" ", fontCorpoN));
        cellSecureterNull.setHorizontalAlignment(PdfPCell.ALIGN_CENTER);
        cellSecureterNull.setPaddingTop(2f);
        cellSecureterNull.setPaddingBottom(2f);
        cellSecureterNull.setColspan(3);
        cellSecureterNull.setBorder(PdfPCell.NO_BORDER);
        pTableSecureter.addCell(cellSecureterNull);

        cellSecureterNull.setColspan(0);

        if (isReseguroOfNICON) {
            PdfPCell cellSecureter = new PdfPCell(new Phrase("RESSEGURADORA USADA", fontCorpoN));
            cellSecureter.setColspan(2);
            cellSecureter.setHorizontalAlignment(PdfPCell.ALIGN_CENTER);
            cellSecureter.setPaddingTop(8f);
            cellSecureter.setPaddingBottom(8f);
            cellSecureter.setVerticalAlignment(PdfPCell.ALIGN_MIDDLE);
            pTableSecureter.addCell(cellSecureter);
            pTableSecureter.addCell(cellSecureterNull);

            cellSecureter = new PdfPCell(new Phrase("RESSEGURA", fontCorpoN));
            cellSecureter.setHorizontalAlignment(PdfPCell.ALIGN_CENTER);
            cellSecureter.setVerticalAlignment(PdfPCell.ALIGN_MIDDLE);
            cellSecureter.setPaddingTop(5f);
            cellSecureter.setPaddingBottom(5);
            pTableSecureter.addCell(cellSecureter);
            cellSecureter = new PdfPCell(new Phrase("%PERCENTAGEM", fontCorpoN));
            cellSecureter.setHorizontalAlignment(PdfPCell.ALIGN_CENTER);
            cellSecureter.setVerticalAlignment(PdfPCell.ALIGN_MIDDLE);
            cellSecureter.setPaddingTop(5f);
            cellSecureter.setPaddingBottom(5);
            pTableSecureter.addCell(cellSecureter);
            pTableSecureter.addCell(cellSecureterNull);

            int total = listaDataEmpresas.size();
            for (int i = 0; (i < total); i++) {
                cellSecureter = new PdfPCell(new Phrase(listaDataEmpresas.get(i).getEMPRESA(), fontCorpo));
                cellSecureter.setPaddingTop(5f);
                cellSecureter.setPaddingBottom(5);
                cellSecureter.setVerticalAlignment(PdfPCell.ALIGN_MIDDLE);
                pTableSecureter.addCell(cellSecureter);
                cellSecureter = new PdfPCell(new Phrase(
                        listaDataEmpresas.get(i).getPERCENTAGEM() + "% -- "
                                + Moeda.format(((covertDouble(listaDataEmpresas.get(i).getPERCENTAGEM()) / 100)
                                        * covertDouble(reS.getPREMIOGROSSO())))
                                + " " + reS.getMOEDA(),
                        fontCorpo));
                cellSecureter.setPaddingTop(5f);
                cellSecureter.setPaddingBottom(5);
                cellSecureter.setVerticalAlignment(PdfPCell.ALIGN_MIDDLE);
                cellSecureter.setHorizontalAlignment(PdfPCell.ALIGN_RIGHT);
                pTableSecureter.addCell(cellSecureter);
                pTableSecureter.addCell(cellSecureterNull);
            }
        }
        PdfPTable pTablePocessed = new PdfPTable(new float[] { 100 });
        PdfPCell cellPocessed = new PdfPCell(new Phrase("_____________________________", fontCorpoN));
        cellPocessed.setBorder(PdfPCell.NO_BORDER);
        cellPocessed.setVerticalAlignment(PdfPCell.ALIGN_BOTTOM);
        cellPocessed.setPaddingTop(50f);
        cellPocessed.setPaddingBottom(1f);
        pTablePocessed.addCell(cellPocessed);
        cellPocessed = new PdfPCell(new Phrase("PROCESSED BY", fontCorpoN));
        cellPocessed.setPaddingTop(1f);
        cellPocessed.setVerticalAlignment(PdfPCell.ALIGN_TOP);
        cellPocessed.setBorder(PdfPCell.NO_BORDER);
        pTablePocessed.addCell(cellPocessed);

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

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

        String f1 = (arquivo + "/" + user + "/Seguro " + nomeSeguro + "/");
        File f = new File(f1);
        String Ddata = sdf1.format(new Date());
        f.mkdirs();
        f = new File(f.getAbsoluteFile() + "/" + "Doc Nota CO-ReSSEGURO " + Ddata + ".pdf");

        reString = "../Documentos/" + user + "/Seguro " + nomeSeguro + "/" + "Doc Nota CO-ReSSEGURO " + Ddata
                + ".pdf";
        OutputStream outputStraem = new FileOutputStream(f);
        PdfWriter writer = PdfWriter.getInstance(documento, outputStraem);

        documento.open();
        documento.add(pTableEmpresaPricipal);
        documento.add(pTableLinha);
        documento.add(pTableLinha);
        /*
        documento.add(pTableTileDoc);
        documento.add(pTableLinha);
         */
        documento.add(pTableDataPart1);
        documento.add(pTableLinha);
        documento.add(pTableDataPart2);
        documento.add(pTableLinha);
        documento.add(pTableLinha);
        documento.add(pTableSecureter);
        //            documento.add(pTablePocessed);
        pTablePocessed.setTotalWidth(200);
        pTablePocessed.writeSelectedRows(-1, 100, 100f, 175f, writer.getDirectContent());
        documento.close();

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

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

}

From source file:Export.ExporOnlyViagemPdf.java

private void setStyleRodape(PdfPCell cellRodape) {
    cellRodape.setBorderWidthBottom(0.5f);
    cellRodape.setPadding(2f);/*from w  w w .j av  a  2  s.  com*/
    cellRodape.setPaddingLeft(0.8f);
    cellRodape.setPaddingRight(0.8f);
}

From source file:Export.FaturaCoReSeguro__.java

public String docSeguros(String nomeSeguro, String numApolice, String fundoContrato, String user, String moeda,
        String arquivo, String numeroRegistro) {
    String reString;//w  w w.j a va  2  s  . com
    try {

        Font fontCabecalhoN = FontFactory.getFont(ConfigDoc.Fontes.FONTB, BaseFont.WINANSI, BaseFont.EMBEDDED,
                9.2f);
        Font fontLinha = FontFactory.getFont(ConfigDoc.Fontes.FONTB, BaseFont.WINANSI, BaseFont.EMBEDDED,
                0.000000358f);
        Font fontCabecalhoS = FontFactory.getFont(ConfigDoc.Fontes.FONT, BaseFont.WINANSI, BaseFont.EMBEDDED,
                9.2f);
        Font fontCorpo = FontFactory.getFont(ConfigDoc.Fontes.FONT, BaseFont.WINANSI, BaseFont.EMBEDDED, 8f);
        Font fontCorpoN = FontFactory.getFont(ConfigDoc.Fontes.FONTB, BaseFont.WINANSI, BaseFont.EMBEDDED, 8f);
        Font fontNull = FontFactory.getFont(ConfigDoc.Fontes.FONT, BaseFont.WINANSI, BaseFont.EMBEDDED, 4f);
        Font fontMenor = FontFactory.getFont(ConfigDoc.Fontes.FONT, BaseFont.WINANSI, BaseFont.EMBEDDED, 6f);
        Font fontMenorN = FontFactory.getFont(ConfigDoc.Fontes.FONT, BaseFont.WINANSI, BaseFont.EMBEDDED, 6f);

        PdfPTable pTableEmpresaPricipal = new PdfPTable(new float[] { 80, 20 });
        PdfPTable pTableEmpresaInforImpres1 = new PdfPTable(1);
        PdfPTable pTableEmpresaInforImpres2 = new PdfPTable(1);
        PdfPTable pTableEmpresaInforImpres4 = new PdfPTable(1);
        PdfPTable pTableEmpresaInforImpres5 = new PdfPTable(1);

        PdfPCell pCellNomeEmpresa = new PdfPCell(new Phrase(ConfigDoc.Empresa.NOME, fontCabecalhoN));
        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);

        PdfPCell pCellCapital = new PdfPCell(new Phrase(ConfigDoc.Empresa.CAPITALSOCIAL, fontCabecalhoN));
        pCellCapital.setBorder(0);

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

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

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

        pTableEmpresaInforImpres2.addCell(pCellCapital);
        pTableEmpresaInforImpres2.addCell(pCellPolice);

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

        pTableEmpresaInforImpres4.addCell(cellTabela1);

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

        pTableEmpresaInforImpres5.addCell(cellTabela3);

        PdfPCell cellTabela4 = new PdfPCell(pTableEmpresaInforImpres4);
        cellTabela4.setBorder(0);

        pTableEmpresaInforImpres5.addCell(cellTabela4);

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

        pTableEmpresaPricipal.addCell(cellTabela5);

        PdfPCell cellTabela6 = new PdfPCell(imageEmpresa);
        cellTabela6.setBorder(0);
        cellTabela6.setHorizontalAlignment(Element.ALIGN_RIGHT);

        pTableEmpresaPricipal.addCell(cellTabela6);

        PdfPTable pTableLinha = new PdfPTable(1);
        PdfPCell linha = new PdfPCell(new Phrase(" ", fontLinha));
        linha.setBorderWidthTop(0.5f);
        linha.setBorderWidthBottom(0);
        linha.setBorderWidthLeft(0);
        linha.setBorderWidthRight(0);
        pTableLinha.addCell(linha);

        /**
         * Tile Doc
         */
        PdfPTable pTableTileDoc = new PdfPTable(new float[] { 65f, 35f });

        PdfPCell cellTileDoc = new PdfPCell(new Phrase("FACTURA", fontCabecalhoS));
        cellTileDoc.setColspan(2);
        cellTileDoc.setHorizontalAlignment(PdfPCell.ALIGN_RIGHT);
        cellTileDoc.setBorder(PdfPCell.NO_BORDER);

        pTableTileDoc.addCell(cellTileDoc);

        Paragraph pNumFatura = new Paragraph();
        pNumFatura.add(new Phrase("Factura N ", fontMenorN));
        pNumFatura.add(new Phrase("0019528/16 ", fontMenor));
        cellTileDoc = new PdfPCell(pNumFatura);
        cellTileDoc.setColspan(2);
        cellTileDoc.setHorizontalAlignment(PdfPCell.ALIGN_RIGHT);
        cellTileDoc.setBorder(PdfPCell.NO_BORDER);
        cellTileDoc.setPaddingBottom(10f);

        pTableTileDoc.addCell(cellTileDoc);

        PdfPTable pTableCliente = new PdfPTable(new float[] { 100 });

        Paragraph pCliente = new Paragraph();
        pCliente.add(new Phrase("Nome: ", fontCorpo));
        pCliente.add(new Phrase(" ", fontCorpoN));
        PdfPCell cellCliente = new PdfPCell(pCliente);
        cellCliente.setBorder(PdfPCell.NO_BORDER);
        pTableCliente.addCell(cellCliente);

        pCliente = new Paragraph();
        pCliente.add(new Phrase("Morada: ", fontCorpo));
        pCliente.add(new Phrase(" ", fontCorpoN));
        cellCliente = new PdfPCell(pCliente);
        cellCliente.setBorder(PdfPCell.NO_BORDER);
        pTableCliente.addCell(cellCliente);

        pCliente = new Paragraph();
        pCliente.add(new Phrase("Localidade: ", fontCorpo));
        pCliente.add(new Phrase(" ", fontCorpoN));
        pCliente.add(new Phrase("  ?rea: ", fontCorpo));
        pCliente.add(new Phrase(" ", fontCorpoN));
        pCliente.add(new Phrase("  CP: ", fontCorpo));
        pCliente.add(new Phrase(" ", fontCorpoN));
        cellCliente = new PdfPCell(pCliente);
        cellCliente.setBorder(PdfPCell.NO_BORDER);
        pTableCliente.addCell(cellCliente);

        pCliente = new Paragraph();
        pCliente.add(new Phrase("Telefone: ", fontCorpo));
        pCliente.add(new Phrase(" ", fontCorpoN));
        cellCliente = new PdfPCell(pCliente);
        cellCliente.setBorder(PdfPCell.NO_BORDER);
        pTableCliente.addCell(cellCliente);

        cellCliente = new PdfPCell(pTableCliente);
        cellCliente.setBorder(PdfPCell.NO_BORDER);
        pTableTileDoc.addCell(cellCliente);

        PdfPTable pTableContrato = new PdfPTable(new float[] { 40, 60 });

        PdfPCell cellContrato = new PdfPCell(new Phrase("Data", fontCorpo));
        cellContrato.setBorder(PdfPCell.NO_BORDER);
        pTableContrato.addCell(cellContrato);

        cellContrato = new PdfPCell(new Phrase("09-12-2016", fontCorpo));
        cellContrato.setBorder(PdfPCell.NO_BORDER);
        pTableContrato.addCell(cellContrato);

        cellContrato = new PdfPCell(new Phrase("Vendedor", fontCorpo));
        cellContrato.setBorder(PdfPCell.NO_BORDER);
        pTableContrato.addCell(cellContrato);

        cellContrato = new PdfPCell(new Phrase("SAT ISURANCE", fontCorpoN));
        cellContrato.setBorder(PdfPCell.NO_BORDER);
        pTableContrato.addCell(cellContrato);

        cellContrato = new PdfPCell(new Phrase(" ", fontCorpoN));
        cellContrato.setBorder(PdfPCell.NO_BORDER);
        pTableContrato.addCell(cellContrato);

        Paragraph pNIF = new Paragraph();
        pNIF.add(new Phrase("NIF: ", fontCorpoN));
        pNIF.add(new Phrase(" 517255068", fontCorpoN));
        cellContrato = new PdfPCell(pNIF);
        cellContrato.setBorder(PdfPCell.NO_BORDER);
        pTableContrato.addCell(cellContrato);

        cellContrato = new PdfPCell(pTableContrato);
        cellContrato.setBorder(PdfPCell.BOX);
        cellContrato.setPadding(5f);
        pTableTileDoc.addCell(cellContrato);

        PdfPTable pTableDados = new PdfPTable(new float[] { 10, 50, 18, 22 });

        PdfPCell cellDados = new PdfPCell(new Phrase("Qtde.", fontCorpoN));
        pTableDados.addCell(cellDados);

        cellDados = new PdfPCell(new Phrase("Descrio.", fontCorpoN));
        pTableDados.addCell(cellDados);

        cellDados = new PdfPCell(new Phrase("Preo unitrio", fontCorpoN));
        pTableDados.addCell(cellDados);

        cellDados = new PdfPCell(new Phrase("Total", fontCorpoN));
        pTableDados.addCell(cellDados);

        cellDados = new PdfPCell(new Phrase("Qtde.", fontCorpo));
        cellDados.setRowspan(13);
        pTableDados.addCell(cellDados);

        cellDados = new PdfPCell(new Phrase("Descrio.", fontCorpo));
        cellDados.setRowspan(13);
        pTableDados.addCell(cellDados);

        cellDados = new PdfPCell(new Phrase("Preo unitrio", fontCorpo));
        cellDados.setRowspan(13);
        pTableDados.addCell(cellDados);

        cellDados = new PdfPCell(new Phrase("Total", fontCorpo));
        cellDados.setBorderWidthTop(0);
        cellDados.setBorderWidthBottom(0);
        cellDados.setBorderWidthLeft(0);
        cellDados.setBorderWidthRight(0.5f);
        pTableDados.addCell(cellDados);

        for (int i = 0; i < 12; i++) {
            cellDados = new PdfPCell(new Phrase(" ", fontCorpo));
            cellDados.setBorderWidthTop(0f);
            if ((i != (12 - 1))) {
                cellDados.setBorderWidthBottom(0f);
            }
            cellDados.setBorderWidthLeft(0f);
            cellDados.setBorderWidthRight(0.5f);
            pTableDados.addCell(cellDados);
        }

        cellDados = new PdfPCell(new Phrase("Total", fontCorpo));
        cellDados.setColspan(2);
        cellDados.setRowspan(8);
        pTableDados.addCell(cellDados);

        cellDados = new PdfPCell(new Phrase("SubTotal", fontCorpo));
        cellDados.setBorder(PdfPCell.NO_BORDER);
        cellDados.setHorizontalAlignment(PdfPCell.ALIGN_RIGHT);
        pTableDados.addCell(cellDados);

        cellDados = new PdfPCell(new Phrase("46.666.790,01 STD", fontCorpo));
        cellDados.setHorizontalAlignment(PdfPCell.ALIGN_RIGHT);
        pTableDados.addCell(cellDados);

        cellDados = new PdfPCell(new Phrase("Acessrios", fontCorpo));
        cellDados.setBorder(PdfPCell.NO_BORDER);
        cellDados.setHorizontalAlignment(PdfPCell.ALIGN_RIGHT);
        pTableDados.addCell(cellDados);

        cellDados = new PdfPCell(new Phrase("1.000.000,00 STD", fontCorpo));
        cellDados.setHorizontalAlignment(PdfPCell.ALIGN_RIGHT);
        pTableDados.addCell(cellDados);

        cellDados = new PdfPCell(new Phrase("Imposto", fontCorpo));
        cellDados.setBorder(PdfPCell.NO_BORDER);
        cellDados.setHorizontalAlignment(PdfPCell.ALIGN_RIGHT);
        pTableDados.addCell(cellDados);

        cellDados = new PdfPCell(new Phrase("2.680.669,75 STD", fontCorpo));
        cellDados.setHorizontalAlignment(PdfPCell.ALIGN_RIGHT);
        pTableDados.addCell(cellDados);

        cellDados = new PdfPCell(new Phrase("FGA", fontCorpo));
        cellDados.setBorder(PdfPCell.NO_BORDER);
        cellDados.setHorizontalAlignment(PdfPCell.ALIGN_RIGHT);
        pTableDados.addCell(cellDados);

        cellDados = new PdfPCell(new Phrase("1.196.669,75 STD", fontCorpo));
        cellDados.setHorizontalAlignment(PdfPCell.ALIGN_RIGHT);
        pTableDados.addCell(cellDados);

        cellDados = new PdfPCell(new Phrase("TOTAL", fontCorpoN));
        cellDados.setBorder(PdfPCell.NO_BORDER);
        pTableDados.addCell(cellDados);

        cellDados = new PdfPCell(new Phrase("51.744.000,00 STD", fontCorpoN));
        cellDados.setHorizontalAlignment(PdfPCell.ALIGN_RIGHT);
        pTableDados.addCell(cellDados);

        cellDados = new PdfPCell(new Phrase("Cambio", fontCorpo));
        cellDados.setBorder(PdfPCell.NO_BORDER);
        pTableDados.addCell(cellDados);

        cellDados = new PdfPCell(new Phrase("24.500,00 STD", fontCorpo));
        cellDados.setHorizontalAlignment(PdfPCell.ALIGN_RIGHT);
        cellDados.setBorder(PdfPCell.NO_BORDER);
        pTableDados.addCell(cellDados);

        cellDados = new PdfPCell(new Phrase("Total a pagar Euros", fontCorpo));
        cellDados.setBorderWidthRight(0);
        pTableDados.addCell(cellDados);

        cellDados = new PdfPCell(new Phrase("2.112,00 EUR", fontCorpo));
        cellDados.setHorizontalAlignment(PdfPCell.ALIGN_RIGHT);
        cellDados.setBorderWidthLeft(0);
        pTableDados.addCell(cellDados);

        cellDados = new PdfPCell(new Phrase("Total a Pagar USD", fontCorpo));
        cellDados.setBorderWidthRight(0);
        pTableDados.addCell(cellDados);

        cellDados = new PdfPCell(new Phrase("2.282.78 USD", fontCorpo));
        cellDados.setHorizontalAlignment(PdfPCell.ALIGN_RIGHT);
        cellDados.setBorderWidthLeft(0);
        pTableDados.addCell(cellDados);

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

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

        String f1 = (arquivo + "/" + user + "/Seguro " + nomeSeguro + "/");
        File f = new File(f1);
        String Ddata = sdf1.format(new Date());
        f.mkdirs();
        f = new File(f.getAbsoluteFile() + "/" + "Fatura CO-Re SEGURO " + Ddata + ".pdf");

        reString = "../Documentos/" + user + "/Seguro " + nomeSeguro + "/" + "Fatura CO-Re SEGURO " + Ddata
                + ".pdf";
        OutputStream outputStraem = new FileOutputStream(f);
        PdfWriter writer = PdfWriter.getInstance(documento, outputStraem);

        documento.open();
        documento.add(pTableEmpresaPricipal);
        documento.add(pTableLinha);
        documento.add(pTableLinha);
        documento.add(pTableTileDoc);
        documento.add(pTableDados);
        documento.close();

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

    return "";
}

From source file:Export.SeguroRoubo.java

public String criarDoc(String numApolice, String numCliente, RouboBean rb, Contrato c, String user,
        String arquivo) {/*w  w w.  j  ava 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:femr.ui.controllers.PDFController.java

License:Open Source License

/**
 * Builds the page header - Title and Empty cell (for border)
 *
 * @return PdfPTable the itext table to add to the document
 *///from  w  w w  . ja va 2s .  co m
public PdfPTable createHeaderTable() {

    PdfPTable table = new PdfPTable(2);
    table.setSpacingAfter(10);
    table.setWidthPercentage(100);

    Paragraph title = new Paragraph("Medical Record", new Font(Font.FontFamily.TIMES_ROMAN, 18, Font.BOLD));
    PdfPCell cell = new PdfPCell(title);
    cell.setVerticalAlignment(Element.ALIGN_BOTTOM);
    cell.setBorder(PdfPCell.NO_BORDER);
    cell.setBorderColorBottom(BaseColor.BLACK);
    cell.setBorderWidthBottom(1);
    cell.setPaddingBottom(5);
    table.addCell(cell);

    //Paragraph encounterId = new Paragraph("Encounter ID: " + patientEncounter.getId(), new Font(Font.FontFamily.TIMES_ROMAN, 12, Font.NORMAL));
    cell = new PdfPCell(table.getDefaultCell());
    cell.setVerticalAlignment(Element.ALIGN_BOTTOM);
    cell.setBorder(PdfPCell.NO_BORDER);
    cell.setBorderColorBottom(BaseColor.BLACK);
    cell.setBorderWidthBottom(1);
    cell.setHorizontalAlignment(Element.ALIGN_RIGHT);
    cell.setPaddingBottom(5);
    table.addCell(cell);

    return table;
}