Example usage for com.itextpdf.text Element ALIGN_LEFT

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

Introduction

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

Prototype

int ALIGN_LEFT

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

Click Source Link

Document

A possible value for paragraph alignment.

Usage

From source file:org.sharegov.cirm.utils.PDFViewReport.java

License:Apache License

private void addActors(Section subCatPart, Json data) throws DocumentException {
    if (data.at("properties").has("hasServiceCaseActor")) {
        int iActorHeaderColumns = 5;
        int iActorColumns = 6;
        PdfPTable table = new PdfPTable(iActorHeaderColumns);
        table.setWidthPercentage(100);/*from   ww  w . j  a v a 2  s. c o m*/
        int[] headerWidths = { 15, 15, 25, 18, 22 };
        int[] widths = { 15, 15, 25, 18, 5, 17 };
        table.setWidths(headerWidths);
        PdfPCell cell = null;

        addCell(cell, table, "Customer", Element.ALIGN_LEFT, bigBoldFont, null);
        addCell(cell, table, "Name", Element.ALIGN_LEFT, bigBoldFont, null);
        addCell(cell, table, "Address", Element.ALIGN_LEFT, bigBoldFont, null);
        addCell(cell, table, "e-Mail", Element.ALIGN_LEFT, bigBoldFont, null);
        addCell(cell, table, "Contact No", Element.ALIGN_LEFT, bigBoldFont, null);

        subCatPart.add(table);
        //subCatPart.add(Chunk.NEWLINE);
        //subCatPart.add(new Chunk(new LineSeparator()));

        table = new PdfPTable(iActorColumns);
        table.setWidthPercentage(100);
        table.setWidths(widths);

        if (!data.at("properties").at("hasServiceCaseActor").isArray()) {
            data.at("properties").set("hasServiceCaseActor",
                    Json.array().add(data.at("properties").at("hasServiceCaseActor")));
        }

        for (int k = 0; k < data.at("properties").at("hasServiceCaseActor").asJsonList().size(); k++) {
            Json actor = data.at("properties").at("hasServiceCaseActor").at(k);
            BaseColor color = addColor(k);
            OWLNamedIndividual act = individual(actor, "hasServiceActor");
            String actorType = getEntityLabel(act);

            StringBuilder actorName = new StringBuilder();
            if (actor.has("Name"))
                actorName.append(actor.at("Name").asString());
            if (actor.has("LastName")) {
                if (actorName.toString().isEmpty())
                    actorName.append(actor.at("LastName").asString());
                else
                    actorName.append(" ").append(actor.at("LastName").asString());
            }
            if (actorName.toString().isEmpty())
                actorName.append(blankField);

            StringBuilder actorAddr = new StringBuilder();
            if (actor.has("atAddress")) {
                Json addr = actor.at("atAddress");
                if (addr.has("fullAddress"))
                    actorAddr.append(addr.at("fullAddress").asString());
                if (addr.has("Street_Unit_Number"))
                    actorAddr.append(", #").append(addr.at("Street_Unit_Number").asString());
                if (addr.has("Street_Address_City")) {
                    OWLNamedIndividual cityInd = individual(addr, "Street_Address_City");
                    OWLLiteral city = dataProperty(cityInd, "Name");
                    if (city == null)
                        city = dataProperty(cityInd, "Alias");
                    if (city != null)
                        actorAddr.append(", ").append(city.getLiteral());
                }
                if (addr.has("fullAddress") && addr.has("Street_Address_State")) {
                    OWLNamedIndividual stateInd = individual(addr, "Street_Address_State");
                    OWLLiteral state = dataProperty(stateInd, "USPS_Abbreviation");
                    if (state != null)
                        actorAddr.append(", ").append(state.getLiteral());
                }
                if (addr.has("Zip_Code"))
                    actorAddr.append(" - ").append(addr.at("Zip_Code").asString());
            } else
                actorAddr.append(blankField);

            String eMail = actor.has("hasEmailAddress") ? actor.at("hasEmailAddress").isObject()
                    ? actor.at("hasEmailAddress").at("iri").asString().split(":")[1]
                    : actor.at("hasEmailAddress").asString().split(":")[1] : blankField;

            addCell(cell, table, actorType, Element.ALIGN_LEFT, normalFont, color);
            addCell(cell, table, actorName.toString(), Element.ALIGN_LEFT, normalFont, color);
            addCell(cell, table, actorAddr.toString(), Element.ALIGN_LEFT, normalFont, color);
            addCell(cell, table, eMail, Element.ALIGN_LEFT, normalFont, color);

            boolean isFirstContactNo = true;
            String actorHmPh = actor.has("HomePhoneNumber") ? actor.at("HomePhoneNumber").asString() : null;
            String actorCellNo = actor.has("CellPhoneNumber") ? actor.at("CellPhoneNumber").asString() : null;
            String actorBizNo = actor.has("BusinessPhoneNumber") ? actor.at("BusinessPhoneNumber").asString()
                    : null;
            String actorFaxNo = actor.has("FaxNumber") ? actor.at("FaxNumber").asString() : null;
            String actorOtherNo = actor.has("OtherPhoneNumber") ? actor.at("OtherPhoneNumber").asString()
                    : null;

            if (actorHmPh != null)
                isFirstContactNo = addActorsContactNumbers(table, cell, actorHmPh, "Home ", iActorColumns,
                        color, isFirstContactNo);
            if (actorCellNo != null)
                isFirstContactNo = addActorsContactNumbers(table, cell, actorCellNo, "Cell ", iActorColumns,
                        color, isFirstContactNo);
            if (actorBizNo != null)
                isFirstContactNo = addActorsContactNumbers(table, cell, actorBizNo, "Biz ", iActorColumns,
                        color, isFirstContactNo);
            if (actorFaxNo != null)
                isFirstContactNo = addActorsContactNumbers(table, cell, actorFaxNo, "Fax ", iActorColumns,
                        color, isFirstContactNo);
            if (actorOtherNo != null)
                isFirstContactNo = addActorsContactNumbers(table, cell, actorOtherNo, "Other ", iActorColumns,
                        color, isFirstContactNo);
            if (actorHmPh == null && actorCellNo == null && actorBizNo == null && actorFaxNo == null
                    && actorOtherNo == null) {
                addCell(cell, table, blankField, Element.ALIGN_LEFT, normalFont, color);
                addCell(cell, table, blankField, Element.ALIGN_LEFT, normalFont, color);
            }
        }
        subCatPart.add(table);
        subCatPart.add(new Chunk(new LineSeparator()));
    }
}

From source file:org.sharegov.cirm.utils.PDFViewReport.java

License:Apache License

private boolean addActorsContactNumbers(PdfPTable table, PdfPCell cell, String contactNumber,
        String contactNoType, int iActorColumns, BaseColor color, boolean isFirstContactNo) {
    String[] contactNumberList = contactNumber.split(",");
    if (contactNumberList.length == 1) {
        if (isFirstContactNo) {
            addCell(cell, table, contactNoType, Element.ALIGN_LEFT, normalFont, color);
            addCell(cell, table, contactNumberList[0], Element.ALIGN_LEFT, normalFont, color);
            isFirstContactNo = false;//from   w  w w .  java2s .  c  o m
        } else {
            for (int j = 1; j < iActorColumns - 1; j++)
                addCell(cell, table, blankField, Element.ALIGN_LEFT, normalFont, color);
            addCell(cell, table, contactNoType, Element.ALIGN_LEFT, normalFont, color);
            addCell(cell, table, contactNumberList[0], Element.ALIGN_LEFT, normalFont, color);
        }
    } else if (contactNumberList.length > 1) {
        for (int i = 0; i < contactNumberList.length; i++) {
            if (i == 0 && isFirstContactNo) {
                addCell(cell, table, contactNoType, Element.ALIGN_LEFT, normalFont, color);
                addCell(cell, table, contactNumberList[i], Element.ALIGN_LEFT, normalFont, color);
                isFirstContactNo = false;
            } else {
                for (int j = 1; j < iActorColumns - 1; j++)
                    addCell(cell, table, blankField, Element.ALIGN_LEFT, normalFont, color);
                addCell(cell, table, contactNoType, Element.ALIGN_LEFT, normalFont, color);
                addCell(cell, table, contactNumberList[i], Element.ALIGN_LEFT, normalFont, color);
            }
        }
    }
    return isFirstContactNo;
}

From source file:org.sharegov.cirm.utils.PDFViewReport.java

License:Apache License

private void addActivities(Section subCatPart, Json data) throws DocumentException {
    if (data.at("properties").has("hasServiceActivity")) {
        if (!data.at("properties").at("hasServiceActivity").isArray()) {
            data.at("properties").set("hasServiceActivity",
                    Json.array().add(data.at("properties").at("hasServiceActivity")));
        }/*from  ww  w  . j a  v a2 s  .  c  om*/
        Json filteredActivities = Json.array();
        //Do not add any StatusChangeActivity Activities to the report
        for (Json act : data.at("properties").at("hasServiceActivity").asJsonList()) {
            OWLNamedIndividual actInd = individual(act, "hasActivity");
            if (!actInd.getIRI().getFragment().equals("StatusChangeActivity"))
                filteredActivities.add(act);
        }

        if (filteredActivities.asJsonList().size() > 0) {
            //PdfPTable table = new PdfPTable(7);
            PdfPTable table = new PdfPTable(6);
            table.setWidthPercentage(100);
            //int[] widths = {17, 13, 12, 12, 13, 13, 20};
            int[] widths = { 25, 20, 13, 12, 13, 17 };
            table.setWidths(widths);
            PdfPCell cell = null;

            addCell(cell, table, "Activity", Element.ALIGN_LEFT, bigBoldFont, null);
            addCell(cell, table, "Assigned To", Element.ALIGN_LEFT, bigBoldFont, null);
            addCell(cell, table, "Created Date", Element.ALIGN_LEFT, bigBoldFont, null);
            addCell(cell, table, "Due Date", Element.ALIGN_LEFT, bigBoldFont, null);
            addCell(cell, table, "Completed Date", Element.ALIGN_LEFT, bigBoldFont, null);
            addCell(cell, table, "Outcome", Element.ALIGN_LEFT, bigBoldFont, null);
            //addCell(cell, table, "Details", Element.ALIGN_LEFT, bigBoldFont);

            subCatPart.add(table);
            //subCatPart.add(Chunk.NEWLINE);
            //subCatPart.add(new Chunk(new LineSeparator()));

            //table = new PdfPTable(7);
            //table = new PdfPTable(6);
            //table.setWidthPercentage(100);
            //table.setWidths(widths);

            //Store all outcome iris(key), labels(value).
            //Because in case of duplicate outcomes all outcome values (except the first) will be a string and not object
            Map<String, String> outcomeMap = new HashMap<String, String>(10);

            //for (int k = 0; k < data.at("properties").at("hasServiceActivity").asJsonList().size(); k++)
            for (int k = 0; k < filteredActivities.asJsonList().size(); k++) {
                Json activity = filteredActivities.at(k);
                BaseColor color = addColor(k);
                OWLIndividual act = individual(activity, "hasActivity");
                OWLLiteral typeLabel = null;
                for (OWLAnnotation ann : OWL.annotations(act.asOWLNamedIndividual())) {
                    if (ann.getProperty().isLabel())
                        typeLabel = (OWLLiteral) ann.getValue();
                }

                String activityType = typeLabel == null ? "" : typeLabel.getLiteral();
                String assignedTo = activity.has("isAssignedTo") ? activity.at("isAssignedTo").asString()
                        : blankField;
                String createdDate = activity.has("hasDateCreated") ? activity.at("hasDateCreated").asString()
                        : blankField;
                String dueDate = activity.has("hasDueDate") ? activity.at("hasDueDate").asString() : blankField;
                String completedDate = activity.has("hasCompletedTimestamp")
                        ? activity.at("hasCompletedTimestamp").asString()
                        : blankField;
                String details = activity.has("hasDetails") ? activity.at("hasDetails").asString() : blankField;
                StringBuilder outcome = new StringBuilder("");
                if (activity.has("hasOutcome")) {
                    if (activity.at("hasOutcome").isObject()) {
                        if (!outcomeMap.containsKey(activity.at("hasOutcome").at("iri").asString())) {
                            outcomeMap.put(activity.at("hasOutcome").at("iri").asString(),
                                    activity.at("hasOutcome").at("label").asString());
                            outcome.append(activity.at("hasOutcome").at("label").asString());
                        }
                    } else if (activity.at("hasOutcome").isString()) {
                        if (outcomeMap.containsKey(activity.at("hasOutcome").asString()))
                            outcome.append(outcomeMap.get(activity.at("hasOutcome").asString()));
                        else
                            outcome.append(OWL.fullIri(activity.at("hasOutcome").asString()).getFragment());
                    }
                }

                //table = new PdfPTable(7);
                table = new PdfPTable(6);
                table.setWidthPercentage(100);
                table.setWidths(widths);

                addCell(cell, table, activityType, Element.ALIGN_LEFT, normalFont, color);
                addCell(cell, table, getEmployeeName(assignedTo), Element.ALIGN_LEFT, normalFont, color);
                addCell(cell, table, formatDate(createdDate, false, false), Element.ALIGN_LEFT, normalFont,
                        color);
                addCell(cell, table, formatDate(dueDate, false, false), Element.ALIGN_LEFT, normalFont, color);
                addCell(cell, table, formatDate(completedDate, true, false), Element.ALIGN_LEFT, normalFont,
                        color);
                addCell(cell, table, outcome.toString(), Element.ALIGN_LEFT, normalFont, color);
                subCatPart.add(table);
                if (!details.equals(blankField)) {
                    table = new PdfPTable(2);
                    table.setWidthPercentage(100);
                    int[] detailsWitdh = { 10, 90 };
                    table.setWidths(detailsWitdh);
                    addCell(cell, table, "Details: ", Element.ALIGN_LEFT, normalFont, color);
                    addCell(cell, table, details, Element.ALIGN_LEFT, normalFont, color);
                    subCatPart.add(table);
                }
            }
            //subCatPart.add(table);
            subCatPart.add(new Chunk(new LineSeparator()));
        }
    }
}

From source file:org.sistemafinanciero.rest.impl.CuentaBancariaRESTService.java

License:Apache License

@Override
public Response getCertificado(BigInteger id) {
    OutputStream file;/*from ww w . ja  v  a  2s  .  c  o m*/

    CuentaBancariaView cuentaBancaria = cuentaBancariaServiceNT.findById(id);
    String codigoAgencia = ProduceObject.getCodigoAgenciaFromNumeroCuenta(cuentaBancaria.getNumeroCuenta());

    Agencia agencia = agenciaServiceNT.findByCodigo(codigoAgencia);

    if (agencia == null) {
        JsonObject model = Json.createObjectBuilder().add("message", "Agencia no encontrado").build();
        return Response.status(Response.Status.NOT_FOUND).entity(model).build();
    }

    try {
        file = new FileOutputStream(new File(certificadoURL + "\\" + id + ".pdf"));
        //Document document = new Document(PageSize.A5.rotate());
        Document document = new Document(PageSize.A4);
        PdfWriter writer = PdfWriter.getInstance(document, file);
        document.open();

        //recuperando moneda, redondeando y dando formato
        Moneda moneda = monedaServiceNT.findById(cuentaBancaria.getIdMoneda());
        BigDecimal saldo = cuentaBancaria.getSaldo();
        BigDecimal decimalValue = saldo.subtract(saldo.setScale(0, RoundingMode.FLOOR))
                .movePointRight(saldo.scale());
        Long integerValue = saldo.longValue();

        String decimalString = decimalValue.toString();
        if (decimalString.length() < 2)
            decimalString = "0" + decimalString;

        NumberFormat df1 = NumberFormat.getCurrencyInstance();
        DecimalFormatSymbols dfs = new DecimalFormatSymbols();
        dfs.setCurrencySymbol("");
        dfs.setGroupingSeparator(',');
        dfs.setMonetaryDecimalSeparator('.');
        ((DecimalFormat) df1).setDecimalFormatSymbols(dfs);

        //recuperando el plazo en dias
        Date fechaApertura = cuentaBancaria.getFechaApertura();
        Date fechaCierre = cuentaBancaria.getFechaCierre();
        LocalDate localDateApertura = new LocalDate(fechaApertura);
        LocalDate localDateCierre = new LocalDate(fechaCierre);
        Days days = Days.daysBetween(localDateApertura, localDateCierre);

        //fuentes
        Font fontTitulo = FontFactory.getFont("Times New Roman", 14, Font.BOLD);
        Font fontSubTitulo = FontFactory.getFont("Times New Roman", 8);
        Font fontContenidoNegrita = FontFactory.getFont("Times New Roman", 10, Font.BOLD);
        Font fontContenidoNormal = FontFactory.getFont("Times New Roman", 10);

        //dando formato a las fechas
        DateFormat df = new SimpleDateFormat("dd/MM/yyyy");
        String fechaAperturaString = df.format(cuentaBancaria.getFechaApertura());
        String fechaVencimientoString = df.format(cuentaBancaria.getFechaCierre());

        //ingresando datos al documento
        document.add(new Paragraph("\n"));
        document.add(new Paragraph("\n"));

        //parrafo titulo
        Paragraph parrafoTitulo = new Paragraph();
        parrafoTitulo.setFont(fontTitulo);
        parrafoTitulo.setSpacingBefore(30);
        parrafoTitulo.setAlignment(Element.ALIGN_CENTER);

        //parrafo subtitulo
        Paragraph parrafoSubTitulo = new Paragraph();
        parrafoSubTitulo.setFont(fontSubTitulo);
        parrafoSubTitulo.setSpacingAfter(30);
        parrafoSubTitulo.setAlignment(Element.ALIGN_CENTER);

        //parrafo contenido
        Paragraph parrafoContenido = new Paragraph();
        parrafoContenido.setIndentationLeft(50);
        parrafoContenido.setAlignment(Element.ALIGN_LEFT);

        //parrafo firmas
        Paragraph parrafoFirmas = new Paragraph();
        parrafoFirmas.setAlignment(Element.ALIGN_CENTER);

        //agregar titulo al documento
        Chunk titulo = new Chunk("CERTIFICADO DE PLAZO FIJO");
        parrafoTitulo.add(titulo);

        //agregar titulo al documento
        Chunk subTitulo;
        if (cuentaBancaria.getIdMoneda().compareTo(BigInteger.ZERO) == 0) {
            subTitulo = new Chunk("DEPSITO A PLAZO FIJO - DOLARES AMERICANOS");
        } else if (cuentaBancaria.getIdMoneda().compareTo(BigInteger.ONE) == 0) {
            subTitulo = new Chunk("DEPSITO A PLAZO FIJO - NUEVOS SOLES");
        } else {
            subTitulo = new Chunk("DEPSITO A PLAZO FIJO - EUROS");
        }
        parrafoSubTitulo.add(subTitulo);

        //agregando contenido al documento
        //Agencia
        Chunk agencia1 = new Chunk("AGENCIA", fontContenidoNegrita);
        Chunk agencia2 = new Chunk(": " + agencia.getCodigo() + " - " + agencia.getDenominacion().toUpperCase(),
                fontContenidoNormal);
        parrafoContenido.add(agencia1);
        parrafoContenido.add(Chunk.SPACETABBING);
        parrafoContenido.add(Chunk.SPACETABBING);
        parrafoContenido.add(agencia2);
        parrafoContenido.add("\n");

        //cuenta
        Chunk numeroCuenta1 = new Chunk("N CUENTA", fontContenidoNegrita);
        Chunk numeroCuenta2 = new Chunk(": " + cuentaBancaria.getNumeroCuenta(), fontContenidoNormal);
        parrafoContenido.add(numeroCuenta1);
        parrafoContenido.add(Chunk.SPACETABBING);
        parrafoContenido.add(Chunk.SPACETABBING);
        parrafoContenido.add(numeroCuenta2);
        parrafoContenido.add("\n");

        //codigo cliente
        Chunk codigoSocio1 = new Chunk("CODIGO CLIENTE", fontContenidoNegrita);
        Chunk codigoSocio2 = new Chunk(": " + cuentaBancaria.getIdSocio().toString(), fontContenidoNormal);
        parrafoContenido.add(Chunk.SPACETABBING);
        parrafoContenido.add(codigoSocio1);
        parrafoContenido.add(Chunk.SPACETABBING);
        parrafoContenido.add(codigoSocio2);
        parrafoContenido.add("\n");

        //cliente
        Chunk socio1 = new Chunk("CLIENTE", fontContenidoNegrita);
        Chunk socio2 = new Chunk(": " + cuentaBancaria.getSocio(), fontContenidoNormal);
        parrafoContenido.add(socio1);
        parrafoContenido.add(Chunk.SPACETABBING);
        parrafoContenido.add(Chunk.SPACETABBING);
        parrafoContenido.add(socio2);
        parrafoContenido.add("\n");

        //tipo cuenta
        Chunk tipoCuenta1 = new Chunk("TIPO CUENTA", fontContenidoNegrita);
        Chunk tipoCuenta2 = new Chunk(": " + "INDIVIDUAL", fontContenidoNormal);
        parrafoContenido.add(tipoCuenta1);
        parrafoContenido.add(Chunk.SPACETABBING);
        parrafoContenido.add(Chunk.SPACETABBING);
        parrafoContenido.add(tipoCuenta2);
        parrafoContenido.add("\n");

        //tipo moneda
        Chunk tipoMoneda1 = new Chunk("TIPO MONEDA", fontContenidoNegrita);
        Chunk tipoMoneda2;
        if (cuentaBancaria.getIdMoneda().compareTo(BigInteger.ZERO) == 0) {
            tipoMoneda2 = new Chunk(": " + "DOLARES AMERICANOS", fontContenidoNormal);
        } else if (cuentaBancaria.getIdMoneda().compareTo(BigInteger.ONE) == 0) {
            tipoMoneda2 = new Chunk(": " + "NUEVOS SOLES", fontContenidoNormal);
        } else {
            tipoMoneda2 = new Chunk(": " + "EUROS", fontContenidoNormal);
        }
        parrafoContenido.add(tipoMoneda1);
        parrafoContenido.add(Chunk.SPACETABBING);
        parrafoContenido.add(Chunk.SPACETABBING);
        parrafoContenido.add(tipoMoneda2);
        parrafoContenido.add("\n");

        //Monto
        Chunk monto1 = new Chunk("MONTO", fontContenidoNegrita);
        Chunk monto2 = new Chunk(": " + moneda.getSimbolo() + df1.format(saldo) + " - "
                + NumLetrasJ.Convierte(integerValue.toString() + "", Tipo.Pronombre).toUpperCase() + " Y "
                + decimalString + "/100 " + moneda.getDenominacion(), fontContenidoNormal);
        parrafoContenido.add(monto1);
        parrafoContenido.add(Chunk.SPACETABBING);
        parrafoContenido.add(Chunk.SPACETABBING);
        parrafoContenido.add(monto2);
        parrafoContenido.add("\n");

        //Plazo
        Chunk plazo1 = new Chunk("PLAZO", fontContenidoNegrita);
        Chunk plazo2 = new Chunk(": " + days.getDays() + " D?AS", fontContenidoNormal);
        parrafoContenido.add(plazo1);
        parrafoContenido.add(Chunk.SPACETABBING);
        parrafoContenido.add(Chunk.SPACETABBING);
        parrafoContenido.add(Chunk.SPACETABBING);
        parrafoContenido.add(plazo2);
        parrafoContenido.add("\n");

        //Fecha Apertura
        Chunk fechaApertura1 = new Chunk("FEC. APERTURA", fontContenidoNegrita);
        Chunk fechaApertura2 = new Chunk(": " + fechaAperturaString, fontContenidoNormal);
        parrafoContenido.add(fechaApertura1);
        parrafoContenido.add(Chunk.SPACETABBING);
        parrafoContenido.add(fechaApertura2);
        parrafoContenido.add("\n");

        //Fecha Vencimiento
        Chunk fechaVencimiento1 = new Chunk("FEC. VENCIMIENTO", fontContenidoNegrita);
        Chunk fechaVencimiento2 = new Chunk(": " + fechaVencimientoString, fontContenidoNormal);
        parrafoContenido.add(fechaVencimiento1);
        parrafoContenido.add(Chunk.SPACETABBING);
        parrafoContenido.add(fechaVencimiento2);
        parrafoContenido.add("\n");

        //tasa efectiva anual
        Chunk tasaEfectivaAnual1 = new Chunk("TASA EFECTIVA ANUAL", fontContenidoNegrita);
        Chunk tasaEfectivaAnual2 = new Chunk(
                ": " + cuentaBancaria.getTasaInteres().multiply(new BigDecimal(100)).toString() + "%",
                fontContenidoNormal);
        parrafoContenido.add(tasaEfectivaAnual1);
        parrafoContenido.add(tasaEfectivaAnual2);
        parrafoContenido.add("\n");

        //frecuencia de capitalizacion
        Chunk frecuenciaCapitalizacion1 = new Chunk("FREC. CAPITALIZACION", fontContenidoNegrita);
        Chunk frecuenciaCapitalizacion2 = new Chunk(": " + "DIARIA", fontContenidoNormal);
        parrafoContenido.add(frecuenciaCapitalizacion1);
        parrafoContenido.add(frecuenciaCapitalizacion2);
        parrafoContenido.add("\n");
        parrafoContenido.add("\n");
        parrafoContenido.add("\n");

        //importante
        Chunk importante = new Chunk("IMPORTANTE: ", fontContenidoNegrita);
        Chunk importanteDetalle1 = new Chunk(
                "DEPSITO CUBIERTO POR EL FONDO DE SEGURO DE DEPOSITOS ESTABLECIDO POR EL BANCO CENTRAL DE RESERVA DEL PER HASTA S/.82,073.00.",
                fontSubTitulo);
        Chunk importanteDetalle2 = new Chunk(
                "LAS PERSONAS JUR?DICAS SIN FINES DE LUCRO SON CUBIERTAS POR EL FONDO DE SEGURO DE DEPSITOS.",
                fontSubTitulo);
        parrafoContenido.add(importante);
        parrafoContenido.add(importanteDetalle1);
        parrafoContenido.add("\n");
        parrafoContenido.add(importanteDetalle2);
        parrafoContenido.add("\n");
        parrafoContenido.add("\n");
        parrafoContenido.add("\n");

        //certificado intranferible
        Chunk certificadoIntransferible = new Chunk("CERTIFICADO INTRANSFERIBLE.", fontContenidoNegrita);
        parrafoContenido.add(certificadoIntransferible);
        parrafoContenido.add("\n");
        parrafoContenido.add("\n");
        parrafoContenido.add("\n");
        parrafoContenido.add("\n");
        parrafoContenido.add("\n");
        parrafoContenido.add("\n");
        parrafoContenido.add("\n");
        parrafoContenido.add("\n");
        parrafoContenido.add("\n");

        //Firmas
        Chunk subGion = new Chunk("___________________", fontContenidoNormal);
        Chunk firmaCajero = new Chunk("CAJERO", fontContenidoNormal);
        Chunk firmaCliente = new Chunk("CLIENTE", fontContenidoNormal);

        parrafoFirmas.add(subGion);
        parrafoFirmas.add(Chunk.SPACETABBING);
        parrafoFirmas.add(Chunk.SPACETABBING);
        parrafoFirmas.add(subGion);
        parrafoFirmas.add("\n");
        parrafoFirmas.add(firmaCajero);
        parrafoFirmas.add(Chunk.SPACETABBING);
        parrafoFirmas.add(Chunk.SPACETABBING);
        parrafoFirmas.add(Chunk.SPACETABBING);
        parrafoFirmas.add(firmaCliente);

        //agregando los parrafos al documento
        document.add(parrafoTitulo);
        document.add(parrafoSubTitulo);
        document.add(parrafoContenido);
        document.add(parrafoFirmas);
        document.close();
        file.close();
    } catch (FileNotFoundException e) {
        e.printStackTrace();
    } catch (DocumentException e) {
        e.printStackTrace();
    } catch (IOException e) {
        e.printStackTrace();
    }

    PdfReader reader;
    try {
        reader = new PdfReader(certificadoURL + "\\" + id + ".pdf");
        ByteArrayOutputStream out = new ByteArrayOutputStream();
        PdfStamper pdfStamper = new PdfStamper(reader, out);
        AcroFields acroFields = pdfStamper.getAcroFields();
        acroFields.setField("field_title", "test");
        pdfStamper.close();
        reader.close();
        return Response.ok(out.toByteArray()).type("application/pdf").build();
    } catch (IOException e) {
        // TODO Auto-generated catch block
        e.printStackTrace();
    } catch (DocumentException e) {
        // TODO Auto-generated catch block
        e.printStackTrace();
    }
    return Response.status(Response.Status.INTERNAL_SERVER_ERROR).entity(Jsend.getErrorJSend("No encontrado"))
            .build();
}

From source file:org.sistemafinanciero.rest.impl.CuentaBancariaRESTService.java

License:Apache License

@Override
public Response getEstadoCuentaPdf(BigInteger idCuentaBancaria, Long desde, Long hasta) {
    Date dateDesde = (desde != null ? new Date(desde) : null);
    Date dateHasta = (desde != null ? new Date(hasta) : null);

    //dando formato a las fechas
    SimpleDateFormat fechaformato = new SimpleDateFormat("dd/MM/yyyy");
    String fechaDesde = fechaformato.format(dateDesde);
    String fechaHasta = fechaformato.format(dateHasta);

    Set<Titular> titulares = cuentaBancariaServiceNT.getTitulares(idCuentaBancaria, true);
    List<String> emails = new ArrayList<String>();
    for (Titular titular : titulares) {
        PersonaNatural personaNatural = titular.getPersonaNatural();
        String email = personaNatural.getEmail();
        if (email != null)
            emails.add(email);/*w  ww.  ja  v a2s  .c  o  m*/
    }
    CuentaBancariaView cuentaBancariaView = cuentaBancariaServiceNT.findById(idCuentaBancaria);
    List<EstadocuentaBancariaView> list = cuentaBancariaServiceNT.getEstadoCuenta(idCuentaBancaria, dateDesde,
            dateHasta);

    /**obteniendo la moneda y dando formato**/
    Moneda moneda = monedaServiceNT.findById(cuentaBancariaView.getIdMoneda());
    NumberFormat df1 = NumberFormat.getCurrencyInstance();
    DecimalFormatSymbols dfs = new DecimalFormatSymbols();
    dfs.setCurrencySymbol("");
    dfs.setGroupingSeparator(',');
    dfs.setMonetaryDecimalSeparator('.');
    ((DecimalFormat) df1).setDecimalFormatSymbols(dfs);

    /**PDF**/
    ByteArrayOutputStream outputStream = null;
    outputStream = new ByteArrayOutputStream();

    Document document = new Document();
    try {
        PdfWriter.getInstance(document, outputStream);
        document.open();

        document.addTitle("Estado de Cuenta");
        document.addSubject("Estado de Cuenta");
        document.addKeywords("email");
        document.addAuthor("Cooperativa de Ahorro y Crdito Caja Ventura");
        document.addCreator("Cooperativa de Ahorro y Crdito Caja Ventura");

        Paragraph saltoDeLinea = new Paragraph();
        document.add(saltoDeLinea);
    } catch (DocumentException e1) {
        e1.printStackTrace();
    }

    /******************* TITULO ******************/
    try {
        //Image img = Image.getInstance("/images/logo_coop_contrato.png");
        Image img = Image.getInstance("//usr//share//jboss//archivos//logoCartilla//logo_coop_contrato.png");
        img.setAlignment(Image.LEFT | Image.UNDERLYING);
        document.add(img);

        Paragraph parrafoPrincipal = new Paragraph();
        parrafoPrincipal.setSpacingAfter(30);
        //parrafoPrincipal.setSpacingBefore(50);
        parrafoPrincipal.setAlignment(Element.ALIGN_CENTER);
        parrafoPrincipal.setIndentationLeft(100);
        parrafoPrincipal.setIndentationRight(50);

        Paragraph parrafoSecundario = new Paragraph();
        parrafoSecundario.setSpacingAfter(20);
        parrafoSecundario.setSpacingBefore(-20);
        parrafoSecundario.setAlignment(Element.ALIGN_LEFT);
        parrafoSecundario.setIndentationLeft(160);
        parrafoSecundario.setIndentationRight(10);

        Chunk titulo = new Chunk("ESTADO DE CUENTA");
        Font fuenteTitulo = new Font(FontFamily.UNDEFINED, 13, Font.BOLD);
        titulo.setFont(fuenteTitulo);
        parrafoPrincipal.add(titulo);

        Font fuenteDatosCliente = new Font(FontFamily.UNDEFINED, 10);
        Date fechaSistema = new Date();
        SimpleDateFormat formatFecha = new SimpleDateFormat("dd/MM/yyyy HH:mm:ss");
        String fechaActual = formatFecha.format(fechaSistema);

        if (cuentaBancariaView.getTipoPersona() == TipoPersona.NATURAL) {
            Chunk clientePNNombres = new Chunk("CLIENTE       : " + cuentaBancariaView.getSocio() + "\n");
            Chunk clientePNDni = new Chunk(cuentaBancariaView.getTipoDocumento() + "                : "
                    + cuentaBancariaView.getNumeroDocumento() + "\n");
            //Chunk clientePNTitulares = new Chunk("TITULAR(ES): " + cuentaBancariaView.getTitulares() + "\n");
            Chunk clientePNFecha = new Chunk("FECHA          : " + fechaActual + "\n\n");

            Chunk tipoCuentaPN = new Chunk("CUENTA " + cuentaBancariaView.getTipoCuenta() + " N "
                    + cuentaBancariaView.getNumeroCuenta() + "\n");
            Chunk tipoMonedaPN;

            if (cuentaBancariaView.getIdMoneda().compareTo(BigInteger.ZERO) == 0) {
                tipoMonedaPN = new Chunk("MONEDA: " + "DOLARES AMERICANOS" + "\n");
            } else if (cuentaBancariaView.getIdMoneda().compareTo(BigInteger.ONE) == 0) {
                tipoMonedaPN = new Chunk("MONEDA: " + "NUEVOS SOLES" + "\n");
            } else {
                tipoMonedaPN = new Chunk("MONEDA: " + "EUROS" + "\n");
            }

            Chunk fechaEstadoCuenta = new Chunk("ESTADO DE CUENTA DEL " + fechaDesde + " AL " + fechaHasta);
            //obteniedo titulares
            /*String tPN = cuentaBancariaView.getTitulares();
            String[] arrayTitulares = tPN.split(",");
            Chunk clientePNTitulares = new Chunk("Titular(es):");
            for (int i = 0; i < arrayTitulares.length; i++) {
               String string = arrayTitulares[i];
            }*/

            clientePNNombres.setFont(fuenteDatosCliente);
            clientePNDni.setFont(fuenteDatosCliente);
            //clientePNTitulares.setFont(fuenteDatosCliente);
            clientePNFecha.setFont(fuenteDatosCliente);
            tipoCuentaPN.setFont(fuenteDatosCliente);
            tipoMonedaPN.setFont(fuenteDatosCliente);
            fechaEstadoCuenta.setFont(fuenteDatosCliente);

            parrafoSecundario.add(clientePNNombres);
            parrafoSecundario.add(clientePNDni);
            //parrafoSecundario.add(clientePNTitulares);
            parrafoSecundario.add(clientePNFecha);
            parrafoSecundario.add(tipoCuentaPN);
            parrafoSecundario.add(tipoMonedaPN);
            parrafoSecundario.add(fechaEstadoCuenta);

        } else {
            Chunk clientePJNombre = new Chunk("CLIENTE       : " + cuentaBancariaView.getSocio() + "\n");
            Chunk clientePJRuc = new Chunk(cuentaBancariaView.getTipoDocumento() + "               : "
                    + cuentaBancariaView.getNumeroDocumento() + "\n");
            //Chunk clientePJTitulares = new Chunk("TITULAR(ES): " + cuentaBancariaView.getTitulares() + "\n");
            Chunk clientePJFecha = new Chunk("FECHA          : " + fechaActual + "\n\n");

            Chunk tipoCuentaPJ = new Chunk("CUENTA " + cuentaBancariaView.getTipoCuenta() + " N "
                    + cuentaBancariaView.getNumeroCuenta() + "\n");
            Chunk tipoMonedaPJ;

            if (cuentaBancariaView.getIdMoneda().compareTo(BigInteger.ZERO) == 0) {
                tipoMonedaPJ = new Chunk("MONEDA: " + "DOLARES AMERICANOS" + "\n");
            } else if (cuentaBancariaView.getIdMoneda().compareTo(BigInteger.ONE) == 0) {
                tipoMonedaPJ = new Chunk("MONEDA: " + "NUEVOS SOLES" + "\n");
            } else {
                tipoMonedaPJ = new Chunk("MONEDA: " + "EUROS" + "\n");
            }

            Chunk fechaEstadoCuenta = new Chunk("ESTADO DE CUENTA DEL " + fechaDesde + " AL " + fechaHasta);
            //obteniedo titulares
            /*String tPN = cuentaBancariaView.getTitulares();
            String[] arrayTitulares = tPN.split(",");
            Chunk clientePNTitulares = new Chunk("Titular(es):");
            for (int i = 0; i < arrayTitulares.length; i++) {
               String string = arrayTitulares[i];
            }*/

            clientePJNombre.setFont(fuenteDatosCliente);
            clientePJRuc.setFont(fuenteDatosCliente);
            //clientePJTitulares.setFont(fuenteDatosCliente);
            clientePJFecha.setFont(fuenteDatosCliente);
            tipoCuentaPJ.setFont(fuenteDatosCliente);
            tipoMonedaPJ.setFont(fuenteDatosCliente);
            fechaEstadoCuenta.setFont(fuenteDatosCliente);

            parrafoSecundario.add(clientePJNombre);
            parrafoSecundario.add(clientePJRuc);
            //parrafoSecundario.add(clientePJTitulares);
            parrafoSecundario.add(clientePJFecha);
            parrafoSecundario.add(tipoCuentaPJ);
            parrafoSecundario.add(tipoMonedaPJ);
            parrafoSecundario.add(fechaEstadoCuenta);

        }

        document.add(parrafoPrincipal);
        document.add(parrafoSecundario);
    } catch (FileNotFoundException e) {
        e.printStackTrace();
    } catch (DocumentException e) {
        e.printStackTrace();
    } catch (IOException e) {
        e.printStackTrace();
    }

    Font fontTableCabecera = new Font(FontFamily.UNDEFINED, 9, Font.BOLD);
    Font fontTableCuerpo = new Font(FontFamily.UNDEFINED, 9, Font.NORMAL);

    float[] columnWidths = { 5f, 4f, 2.8f, 10f, 3.5f, 4f, 2.8f };
    PdfPTable table = new PdfPTable(columnWidths);
    table.setWidthPercentage(100);

    PdfPCell cellFechaHoraCabecera = new PdfPCell(new Paragraph("FECHA Y HORA", fontTableCabecera));
    PdfPCell cellTransaccionCabecera = new PdfPCell(new Paragraph("TIPO TRANS.", fontTableCabecera));
    PdfPCell cellOperacionCabecera = new PdfPCell(new Paragraph("NUM. OP.", fontTableCabecera));
    PdfPCell cellReferenciaCabecera = new PdfPCell(new Paragraph("REFERENCIA", fontTableCabecera));
    PdfPCell cellMontoCabecera = new PdfPCell(new Paragraph("MONTO", fontTableCabecera));
    PdfPCell cellSaldoDisponibleCabecera = new PdfPCell(new Paragraph("DISPONIBLE", fontTableCabecera));
    PdfPCell cellEstado = new PdfPCell(new Paragraph("ESTADO", fontTableCabecera));

    table.addCell(cellFechaHoraCabecera);
    table.addCell(cellTransaccionCabecera);
    table.addCell(cellOperacionCabecera);
    table.addCell(cellReferenciaCabecera);
    table.addCell(cellMontoCabecera);
    table.addCell(cellSaldoDisponibleCabecera);
    table.addCell(cellEstado);

    for (EstadocuentaBancariaView estadocuentaBancariaView : list) {
        SimpleDateFormat sdf = new SimpleDateFormat("dd/MM/yyyy HH:mm");
        String fecHoraFormat = sdf.format(estadocuentaBancariaView.getHora());

        PdfPCell cellFechaHora = new PdfPCell(new Paragraph(fecHoraFormat, fontTableCuerpo));
        table.addCell(cellFechaHora);
        PdfPCell cellTipoTrasaccion = new PdfPCell(
                new Paragraph(estadocuentaBancariaView.getTipoTransaccionTransferencia(), fontTableCuerpo));
        table.addCell(cellTipoTrasaccion);
        PdfPCell cellNumOperacion = new PdfPCell(
                new Paragraph(estadocuentaBancariaView.getNumeroOperacion().toString(), fontTableCuerpo));
        table.addCell(cellNumOperacion);
        PdfPCell cellReferencia = new PdfPCell(
                new Paragraph(estadocuentaBancariaView.getReferencia(), fontTableCuerpo));
        table.addCell(cellReferencia);
        PdfPCell cellMonto = new PdfPCell(
                new Paragraph(df1.format(estadocuentaBancariaView.getMonto()), fontTableCuerpo));
        table.addCell(cellMonto);
        PdfPCell cellSaldoDisponible = new PdfPCell(
                new Paragraph(df1.format(estadocuentaBancariaView.getSaldoDisponible()), fontTableCuerpo));
        table.addCell(cellSaldoDisponible);
        if (estadocuentaBancariaView.getEstado()) {
            PdfPCell cellEstadoActivo = new PdfPCell(new Paragraph("Activo", fontTableCuerpo));
            table.addCell(cellEstadoActivo);
        } else {
            PdfPCell cellEstadoExtornado = new PdfPCell(new Paragraph("Extornado", fontTableCuerpo));
            table.addCell(cellEstadoExtornado);
        }
    }

    Paragraph saldoDisponible = new Paragraph();
    saldoDisponible.setAlignment(Element.ALIGN_CENTER);
    Chunk textoSaldoDisponible = new Chunk(
            "SALDO DISPONIBLE: " + moneda.getSimbolo() + df1.format(cuentaBancariaView.getSaldo()),
            fontTableCabecera);
    textoSaldoDisponible.setFont(fontTableCabecera);
    saldoDisponible.add(textoSaldoDisponible);

    try {
        document.add(table);
        document.add(saldoDisponible);
    } catch (DocumentException e) {
        e.printStackTrace();
    }

    document.close();

    return Response.ok(outputStream.toByteArray()).type("application/pdf").build();
}

From source file:org.tvd.thptty.management.report.Report.java

private void addContent(Document document, int kind) throws DocumentException {
    //Anchor anchor = new Anchor(tableTitle, tahomaLargeFont);
    //anchor.setName("Bang Diem");

    // Second parameter is the number of the chapter
    //Chapter catPart = new Chapter(new Paragraph(anchor), 1);

    //Paragraph subPara = new Paragraph(createdBy, tahomaLargeFont);
    Paragraph header = new Paragraph(tableTitle, tahomaLargeFont);
    header.setAlignment(Element.ALIGN_LEFT);
    header.add(new Paragraph(createdBy, tahomaLargeFont));
    addEmptyLine(header, 1);//from   w w w. j  a v  a2s .c  o  m

    //Section subCatPart = catPart.addSection(subPara);

    Paragraph paragraph = new Paragraph();

    // Add a table
    if (kind == 1) {
        paragraph.add(createSubjectPointTable());
    } else if (kind == 2) {
        paragraph.add(createStatisticsStudentPointTable());
    }

    header.add(paragraph);

    // Now add all this to the document
    document.add(header);

}

From source file:org.yougi.web.report.EventAttendeeCertificate.java

License:Open Source License

public void generateCertificate(Attendee attendee) throws DocumentException {

    Font helvetica = new Font(Font.FontFamily.HELVETICA, 12);
    BaseFont baseFont = helvetica.getCalculatedBaseFont(false);
    canvas.saveState();//from w  ww.  j  a va  2  s.  co  m
    canvas.beginText();
    canvas.setFontAndSize(baseFont, 12);
    canvas.showTextAligned(Element.ALIGN_LEFT, "Validation code: " + attendee.getCertificateCode()
            + " ( http://www.cejug.net/certificate_validation.xhtml) ", 30, 30, 0);
    canvas.endText();
    canvas.restoreState();

    String[] contentLine = new String[8];
    contentLine[0] = "Certificamos que";
    contentLine[1] = attendee.getCertificateFullname();
    contentLine[2] = "participou do evento";
    contentLine[3] = attendee.getCertificateEvent();
    contentLine[4] = "realizado na";
    contentLine[5] = attendee.getCertificateVenue();
    contentLine[6] = "no dia " + DateTimeUtils.getFormattedDate(attendee.getCertificateDate(), "dd.MM.yyyy");

    Font normalFont = new Font(Font.FontFamily.HELVETICA, 24);
    Font largeFont = new Font(Font.FontFamily.HELVETICA, 28, Font.FontStyle.BOLD.ordinal());
    Paragraph p;

    for (int i = 0; i < 5; i++) {
        p = new Paragraph(" ", normalFont);
        this.document.add(p);
    }

    Font currentFont = normalFont;
    for (int i = 0; i < contentLine.length; i++) {
        p = new Paragraph(contentLine[i], currentFont);
        p.setAlignment(Element.ALIGN_CENTER);
        this.document.add(p);

        currentFont = currentFont.equals(normalFont) ? largeFont : normalFont;
    }
}

From source file:Output.QuotePDf.java

private PdfPTable shipperInformationTable(String personnelInformation) throws DocumentException {
    PdfPTable table = new PdfPTable(4);
    table.setHorizontalAlignment(Element.ALIGN_LEFT);
    float[] columnWidths = new float[] { 30f, 70f, 20f, 80f };
    table.setWidths(columnWidths);/*from ww w .j a va  2s .com*/

    cell = new PdfPCell(new Phrase("Quote ID:", labelFont));
    cell.setColspan(1);
    cell.setBorder(Rectangle.NO_BORDER);
    table.addCell(cell);

    cell = new PdfPCell(new Phrase(quoteID, textFont));
    cell.setColspan(1);
    cell.setBorder(Rectangle.NO_BORDER);
    table.addCell(cell);

    cell = new PdfPCell(new Phrase("Date:", labelFont));
    cell.setColspan(1);
    cell.setBorder(Rectangle.NO_BORDER);
    table.addCell(cell);

    cell = new PdfPCell(new Phrase(date, textFont));
    cell.setColspan(1);
    cell.setBorder(Rectangle.NO_BORDER);
    table.addCell(cell);

    cell = new PdfPCell(new Phrase("Company:", labelFont));
    cell.setColspan(1);
    cell.setBorder(Rectangle.NO_BORDER);
    table.addCell(cell);

    cell = new PdfPCell(new Phrase(company, textFont));
    cell.setColspan(3);
    cell.setBorder(Rectangle.NO_BORDER);
    table.addCell(cell);

    cell = new PdfPCell(new Phrase("Customer:", labelFont));
    cell.setColspan(1);
    cell.setBorder(Rectangle.NO_BORDER);
    table.addCell(cell);

    cell = new PdfPCell(new Phrase(customerName, textFont));
    cell.setColspan(1);
    cell.setBorder(Rectangle.NO_BORDER);
    table.addCell(cell);

    cell = new PdfPCell(new Phrase("Email:", labelFont));
    cell.setColspan(1);
    cell.setBorder(Rectangle.NO_BORDER);
    table.addCell(cell);

    cell = new PdfPCell(new Phrase(customerEmail, emailTextFont));
    cell.setColspan(1);
    cell.setBorder(Rectangle.NO_BORDER);
    table.addCell(cell);

    cell = new PdfPCell(new Phrase("Quote Type:", labelFont));
    cell.setColspan(1);
    cell.setBorder(Rectangle.NO_BORDER);
    table.addCell(cell);

    cell = new PdfPCell(new Phrase(status, textFont));
    cell.setColspan(3);
    cell.setBorder(Rectangle.NO_BORDER);
    table.addCell(cell);

    cell = new PdfPCell(new Phrase("Quoted By:", labelFont));
    cell.setColspan(1);
    cell.setBorder(Rectangle.NO_BORDER);
    table.addCell(cell);

    cell = new PdfPCell(new Phrase(personnelInformation, textFont));
    cell.setColspan(1);
    cell.setBorder(Rectangle.NO_BORDER);
    table.addCell(cell);

    cell = new PdfPCell(new Phrase("Email:", labelFont));
    cell.setColspan(1);
    cell.setBorder(Rectangle.NO_BORDER);
    table.addCell(cell);

    cell = new PdfPCell(new Phrase(groupEmail, emailTextFont));
    cell.setColspan(1);
    cell.setBorder(Rectangle.NO_BORDER);
    table.addCell(cell);

    return table;
}

From source file:Output.QuotePDf.java

private PdfPTable commodityTable() throws DocumentException {
    PdfPTable table = new PdfPTable(4);
    table.setHorizontalAlignment(Element.ALIGN_LEFT);
    float[] columnWidths = new float[] { 55f, 70f, 55f, 65f };
    table.setWidths(columnWidths);/* ww  w.  jav  a2 s  .c  o m*/

    cell = new PdfPCell(new Phrase("Port(s) of Load:", labelFont));
    cell.setColspan(1);
    cell.setBorder(Rectangle.NO_BORDER);
    table.addCell(cell);

    cell = new PdfPCell(new Phrase(pol, textFont));
    cell.setColspan(1);
    cell.setBorder(Rectangle.NO_BORDER);
    table.addCell(cell);

    cell = new PdfPCell(new Phrase("via:", labelFont));
    cell.setColspan(1);
    cell.setHorizontalAlignment(Element.ALIGN_RIGHT);
    cell.setBorder(Rectangle.NO_BORDER);
    table.addCell(cell);

    cell = new PdfPCell(new Phrase(tship, textFont));
    cell.setColspan(1);
    cell.setBorder(Rectangle.NO_BORDER);
    table.addCell(cell);

    cell = new PdfPCell(new Phrase("Port(s) of Discharge:", labelFont));
    cell.setColspan(1);
    cell.setBorder(Rectangle.NO_BORDER);
    table.addCell(cell);

    cell = new PdfPCell(new Phrase(pod, textFont));
    cell.setColspan(3);
    cell.setBorder(Rectangle.NO_BORDER);
    table.addCell(cell);

    cell = new PdfPCell(new Phrase("Commodity:", labelFont));
    cell.setColspan(1);
    cell.setBorder(Rectangle.NO_BORDER);
    table.addCell(cell);

    cell = new PdfPCell(new Phrase(commodityClass, textFont));
    cell.setColspan(1);
    cell.setBorder(Rectangle.NO_BORDER);
    table.addCell(cell);

    cell = new PdfPCell(new Phrase("Handling:", labelFont));
    cell.setColspan(1);
    cell.setHorizontalAlignment(Element.ALIGN_RIGHT);
    cell.setBorder(Rectangle.NO_BORDER);
    table.addCell(cell);

    cell = new PdfPCell(new Phrase(cargoHandling, textFont));
    cell.setColspan(1);
    cell.setBorder(Rectangle.NO_BORDER);
    table.addCell(cell);

    cell = new PdfPCell(new Phrase("Accompanying:", labelFont));
    cell.setColspan(1);
    cell.setBorder(Rectangle.NO_BORDER);
    table.addCell(cell);

    if (accessories) {
        cell = new PdfPCell(new Phrase(accessories_accompanying, textFont));
        cell.setColspan(3);
        cell.setBorder(Rectangle.NO_BORDER);
        table.addCell(cell);
    } else {
        cell = new PdfPCell(new Phrase("N/A", textFont));
        cell.setColspan(3);
        cell.setBorder(Rectangle.NO_BORDER);
        table.addCell(cell);
    }

    cell = new PdfPCell(new Phrase("Description", labelFont));
    cell.setColspan(1);
    cell.setBorder(Rectangle.NO_BORDER);
    table.addCell(cell);

    cell = new PdfPCell(new Phrase(description, textFont));
    cell.setColspan(3);
    cell.setBorder(Rectangle.NO_BORDER);
    table.addCell(cell);

    return table;
}

From source file:Output.QuotePDf.java

private PdfPTable rateTable() throws DocumentException {
    PdfPTable table = new PdfPTable(2);
    table.setHorizontalAlignment(Element.ALIGN_LEFT);
    float[] columnWidths = new float[] { 35f, 75f };
    table.setWidths(columnWidths);/*from  w  w w.jav a2 s .c om*/
    table.setSpacingAfter(10f);

    cell = new PdfPCell(new Phrase("Base Ocean Freight:", labelFont));
    cell.setColspan(1);
    cell.setBorder(Rectangle.NO_BORDER);
    table.addCell(cell);

    cell = new PdfPCell(new Phrase(oft, textFont));
    cell.setColspan(1);
    cell.setBorder(Rectangle.NO_BORDER);
    table.addCell(cell);

    cell = new PdfPCell(new Phrase("MAFI Minimum Charge:", labelFont));
    cell.setColspan(1);
    cell.setBorder(Rectangle.NO_BORDER);
    table.addCell(cell);

    if (includeMafiMinimum) {
        cell = new PdfPCell(new Phrase("$" + mafiMinimum + " per MAFI unit.", textFont));
        cell.setColspan(1);
        cell.setBorder(Rectangle.NO_BORDER);
        table.addCell(cell);
    } else {
        cell = new PdfPCell(new Phrase("N/A", textFont));
        cell.setColspan(1);
        cell.setBorder(Rectangle.NO_BORDER);
        table.addCell(cell);
    }
    cell = new PdfPCell(new Phrase("Subject To:", subjectToFont));
    cell.setColspan(2);
    cell.setBorder(Rectangle.NO_BORDER);
    cell.setHorizontalAlignment(Element.ALIGN_CENTER);
    table.addCell(cell);

    cell = new PdfPCell(new Phrase("Bunker Adjustment Factor:", labelFont));
    cell.setColspan(1);
    cell.setBorder(Rectangle.NO_BORDER);
    table.addCell(cell);

    cell = new PdfPCell(new Phrase(baf, textFont));
    cell.setColspan(1);
    cell.setBorder(Rectangle.NO_BORDER);
    table.addCell(cell);

    cell = new PdfPCell(new Phrase("ECA Surcharge:", labelFont));
    cell.setColspan(1);
    cell.setBorder(Rectangle.NO_BORDER);
    table.addCell(cell);

    cell = new PdfPCell(new Phrase(eca, textFont));
    cell.setColspan(1);
    cell.setBorder(Rectangle.NO_BORDER);
    table.addCell(cell);

    cell = new PdfPCell(new Phrase("Terminal Handling (Origin):", labelFont));
    cell.setColspan(1);
    cell.setBorder(Rectangle.NO_BORDER);
    table.addCell(cell);

    cell = new PdfPCell(new Phrase(thc, textFont));
    cell.setColspan(1);
    cell.setBorder(Rectangle.NO_BORDER);
    table.addCell(cell);

    cell = new PdfPCell(new Phrase("Wharfage (Origin):", labelFont));
    cell.setColspan(1);
    cell.setBorder(Rectangle.NO_BORDER);
    table.addCell(cell);

    cell = new PdfPCell(new Phrase(wfg, textFont));
    cell.setColspan(1);
    cell.setBorder(Rectangle.NO_BORDER);
    table.addCell(cell);

    cell = new PdfPCell(new Phrase("Documentation Fee:", labelFont));
    cell.setColspan(1);
    cell.setBorder(Rectangle.NO_BORDER);
    table.addCell(cell);

    cell = new PdfPCell(new Phrase(doc, textFont));
    cell.setColspan(1);
    cell.setBorder(Rectangle.NO_BORDER);
    table.addCell(cell);

    cell = new PdfPCell(new Phrase("War Risk Surcharge:", labelFont));
    cell.setColspan(1);
    cell.setBorder(Rectangle.NO_BORDER);
    table.addCell(cell);

    if (includeWarRisk) {
        cell = new PdfPCell(new Phrase(wRsk, textFont));
        cell.setColspan(1);
        cell.setBorder(Rectangle.NO_BORDER);
        table.addCell(cell);
    } else {
        cell = new PdfPCell(new Phrase("N/A", textFont));
        cell.setColspan(1);
        cell.setBorder(Rectangle.NO_BORDER);
        table.addCell(cell);
    }

    return table;
}