Example usage for com.lowagie.text.pdf PdfPTable setWidthPercentage

List of usage examples for com.lowagie.text.pdf PdfPTable setWidthPercentage

Introduction

In this page you can find the example usage for com.lowagie.text.pdf PdfPTable setWidthPercentage.

Prototype

public void setWidthPercentage(float widthPercentage) 

Source Link

Document

Sets the width percentage that the table will occupy in the page.

Usage

From source file:com.krawler.esp.servlets.ExportReportServlet.java

License:Open Source License

private static void prepare(Document d, HeaderFooter hfFooter) {
    PdfPTable table = new PdfPTable(1);
    try {//from  w  w  w  .  j av a 2 s  . c  o  m
        d.setFooter(hfFooter);
        d.open();
        imgPath = StorageHandler.GetProfileImgStorePath() + StorageHandler.GetFileSeparator() + imgPath;
        //                  imgPath = "/home/krawler-user/logo.jpg";                
        table.setHorizontalAlignment(Element.ALIGN_LEFT);
        table.setWidthPercentage(50);
        PdfPCell cell = null;
        try {
            Image img = Image.getInstance(imgPath);
            cell = new PdfPCell(img);
        } catch (Exception e) {
            cell = new PdfPCell(new Paragraph(companyName, fontBig));
        }
        cell.setBorder(0);
        cell.setHorizontalAlignment(Element.ALIGN_LEFT);
        table.addCell(cell);

        d.add(table);
    } catch (Exception e) {
        Logger.getLogger(ExportProjectReportServlet.class.getName()).log(Level.SEVERE, null, e);
    }
}

From source file:com.krawler.esp.servlets.ExportReportServlet.java

License:Open Source License

private static void addCenter(Document d) throws DocumentException {

    PdfPTable table = new PdfPTable(1);
    table.setHorizontalAlignment(Element.ALIGN_CENTER);

    table.setWidthPercentage(50);
    table.setSpacingBefore(10);/*from ww  w.  ja v  a  2  s .c  o m*/
    PdfPCell cell = null;
    cell = new PdfPCell(new Paragraph(ProjectName, fontBold));
    cell.setBorder(0);
    cell.setBorderWidth(0);
    cell.setHorizontalAlignment(Element.ALIGN_CENTER);
    table.addCell(cell);

    cell = new PdfPCell(new Paragraph(ReportName, fontRegular));
    cell.setBorder(0);
    cell.setBorderWidth(0);
    cell.setHorizontalAlignment(Element.ALIGN_CENTER);
    table.addCell(cell);
    // For tasks which prompt user for a start and end date
    if (!(StringUtil.isNullOrEmpty(RepStartDate) && StringUtil.isNullOrEmpty(RepEndDate))) {
        cell = new PdfPCell(new Paragraph("From:" + RepStartDate + " To:" + RepEndDate, fontSmallRegular));
        cell.setBorder(0);
        cell.setBorderWidth(0);
        cell.setHorizontalAlignment(Element.ALIGN_CENTER);
        table.addCell(cell);
    }
    table.setSpacingAfter(10);
    d.add(table);
}

From source file:com.krawler.esp.servlets.ExportServlet.java

License:Open Source License

private static void addComponyLogo(Document d, HttpServletRequest req)
        throws ConfigurationException, DocumentException {
    PdfPTable table = new PdfPTable(1);
    imgPath = StorageHandler.GetProfileImgStorePath() + "logo.gif";
    table.setHorizontalAlignment(Element.ALIGN_LEFT);
    table.setWidthPercentage(50);
    PdfPCell cell = null;//from ww  w  .  j  av a2s.  c o m
    try {
        if (StringUtil.isStandAlone()) {
            imgPath = URLUtil.getPageURL(req, "").concat(defaultCompanyImgPath);
        }
        Image img = Image.getInstance(imgPath);
        cell = new PdfPCell(img);
    } catch (Exception e) {
        cell = new PdfPCell(new Paragraph(companyName, fontBig));
    }
    cell.setBorder(0);
    cell.setHorizontalAlignment(Element.ALIGN_LEFT);
    table.addCell(cell);
    d.add(table);
}

From source file:com.krawler.esp.servlets.ExportServlet.java

License:Open Source License

private static void addTitleSubtitle(Document d) throws DocumentException, JSONException {
    java.awt.Color tColor = new Color(Integer.parseInt(config.getString("textColor"), 16));
    fontBold.setColor(tColor);//from  w  ww.j  a  va2  s.c  o  m
    fontRegular.setColor(tColor);
    PdfPTable table = new PdfPTable(1);
    table.setHorizontalAlignment(Element.ALIGN_CENTER);
    table.setWidthPercentage(100);
    table.setSpacingBefore(6);

    //Report Title
    PdfPCell cell = new PdfPCell(new Paragraph(config.getString("title"), fontBold));
    cell.setBorder(0);
    cell.setBorderWidth(0);
    cell.setHorizontalAlignment(Element.ALIGN_CENTER);
    table.addCell(cell);

    //Report Subtitle(s)
    String[] SubTitles = config.getString("subtitles").split("~");// '~' as separator
    for (int i = 0; i < SubTitles.length; i++) {
        cell = new PdfPCell(new Paragraph(SubTitles[i], fontSmallRegular));
        cell.setBorder(0);
        cell.setBorderWidth(0);
        cell.setHorizontalAlignment(Element.ALIGN_CENTER);
        table.addCell(cell);
    }
    table.setSpacingAfter(6);
    d.add(table);

    //Separator line
    PdfPTable line = new PdfPTable(1);
    line.setWidthPercentage(100);
    PdfPCell cell1 = null;
    cell1 = new PdfPCell(new Paragraph(""));
    cell1.setBorder(PdfPCell.BOTTOM);
    line.addCell(cell1);
    d.add(line);
}

From source file:com.krawler.spring.exportFuctionality.ExportinvController.java

License:Open Source License

private ByteArrayOutputStream createForm(String currencyid, String[] header1, String[] header2,
        String[] header3, String[] header4, String[] values1, String[] values2, String[] values3,
        String[] values4, String string, Object ob, Company com, String contextpath, String logoPath,
        DateFormat formatter) throws JSONException, DocumentException, ServiceException, IOException {
    ByteArrayOutputStream baos = null;
    Document document = null;//from ww  w  .j a v a2 s  .  co m
    PdfWriter writer = null;
    try {
        String company[] = new String[3];
        company[0] = com.getCompanyName();
        company[1] = com.getAddress();
        company[2] = com.getEmailID();
        baos = new ByteArrayOutputStream();
        document = new Document(PageSize.A4, 15, 15, 15, 15);
        writer = PdfWriter.getInstance(document, baos);
        document.open();
        addHeaderFooter(document, writer);
        PdfPTable tab1 = null;
        PdfPTable tab2 = null;
        PdfPTable tab3 = null;

        /*-----------------------------Add Company Name in Center ------------------*/
        tab1 = new PdfPTable(1);
        tab1.setHorizontalAlignment(Element.ALIGN_LEFT);
        PdfPCell cell = new PdfPCell(new Paragraph(com.getCompanyName(), fontBig));
        cell.setHorizontalAlignment(Element.ALIGN_LEFT);
        cell.setBorder(0);
        tab1.addCell(cell);

        tab2 = new PdfPTable(1);
        tab2.setHorizontalAlignment(Element.ALIGN_LEFT);
        imgPath = logoPath;
        PdfPCell imgCell = null;
        try {
            Image img = Image.getInstance(imgPath);
            imgCell = new PdfPCell(img);
        } catch (Exception e) {
            imgCell = new PdfPCell(new Paragraph(com.getCompanyName(), fontBig));
        }
        imgCell.setHorizontalAlignment(Element.ALIGN_LEFT);
        imgCell.setBorder(0);
        tab2.addCell(imgCell);

        PdfPTable table = new PdfPTable(2);
        table.setWidthPercentage(100);
        table.setWidths(new float[] { 40, 60 });
        PdfPCell cellCompimg = new PdfPCell(tab2);
        cellCompimg.setBorder(0);
        table.addCell(cellCompimg);
        PdfPCell cellCompname = new PdfPCell(tab1);
        cellCompname.setBorder(0);
        table.addCell(cellCompname);
        document.add(table);
        document.add(new Paragraph("\n\n\n"));

        /*-----------------------------Add Company information and Invoice Info------------------*/
        PdfPTable table2 = new PdfPTable(3);
        table2.setWidthPercentage(100);
        if (header4.length != 0)
            table2.setWidths(new float[] { 40, 30, 30 });
        else
            table2.setWidths(new float[] { 50, 50, 0 });
        tab1 = getCompanyInfo(company);
        tab2 = createTable(header1, values1);
        PdfPCell cell1 = new PdfPCell(tab1);
        cell1.setBorder(0);
        table2.addCell(cell1);
        PdfPCell cell2 = new PdfPCell(tab2);
        cell2.setBorder(1);
        table2.addCell(cell2);
        PdfPCell cel = new PdfPCell();
        if (header4.length != 0) {
            tab3 = createTable(header4, values4);
            cel = new PdfPCell(tab3);
        } else
            cel = new PdfPCell(new Paragraph("", fontSmallRegular));
        cel.setBorder(1);
        table2.addCell(cel);
        document.add(table2);
        document.add(new Paragraph("\n\n\n"));

        /*-----------------------------Add BillTo Amount Enclosed -------------------------*/
        PdfPTable table3 = new PdfPTable(1);
        table3.setWidthPercentage(100);
        tab1 = createTable(header2, values2);
        PdfPCell cell3 = new PdfPCell(tab1);
        cell3.setBorder(1);
        table3.addCell(cell3);
        document.add(table3);
        document.add(new Paragraph("\n\n\n\n\n\n"));

        /*-----------------------------Add Cutting Line -------------------------*/
        PdfPTable table4 = new PdfPTable(1);
        imgPath = contextpath + "/images/pdf-cut.jpg";
        table4.setHorizontalAlignment(Element.ALIGN_LEFT);
        table4.setWidthPercentage(100);
        PdfPCell cell11 = null;
        try {
            Image img = Image.getInstance(imgPath);
            img.scalePercent(35);
            cell11 = new PdfPCell(img);
        } catch (Exception e) {
        }
        cell11.setBorder(0);
        table4.addCell(cell11);
        document.add(table4);
        document.add(new Paragraph("\n\n"));

        /*-----------------------------Add Product Information ------------------*/
        PdfPTable table5 = new PdfPTable(1);
        table5.setWidthPercentage(100);
        if (string.equals("GoodsReceipt")) {
            GoodsReceipt gr = (GoodsReceipt) ob;
            tab1 = createGoodsReceiptTable(header3, values3, currencyid, gr);
        } else if (string.equals("debit")) {
            DebitNote dn = (DebitNote) ob;
            tab1 = createDebitTable(header3, values3, currencyid, dn);
        } else if (string.equals("billingdebit")) {
            BillingDebitNote dn = (BillingDebitNote) ob;
            tab1 = createDebitTable(header3, values3, currencyid, dn);
        } else if (string.equals("credit")) {
            CreditNote cn = (CreditNote) ob;
            tab1 = createCreditTable(header3, values3, currencyid, cn);
        } else if (string.equals("billingcredit")) {
            BillingCreditNote cn = (BillingCreditNote) ob;
            tab1 = createCreditTable(header3, values3, currencyid, cn);
        } else if (string.equals("PurchaseOrder")) {
            PurchaseOrder po = (PurchaseOrder) ob;
            tab1 = createPurchaseOrderTable(header3, values3, currencyid, po);
        } else if (string.equals("BillingPurchaseOrder")) {
            BillingPurchaseOrder po = (BillingPurchaseOrder) ob;
            tab1 = createPurchaseOrderTable(header3, values3, currencyid, po);
        } else if (string.equals("SalesOrder")) {
            SalesOrder so = (SalesOrder) ob;
            tab1 = createSalesOrderTable(header3, values3, currencyid, so);
        } else if (string.equals("BillingSalesOrder")) {
            BillingSalesOrder so = (BillingSalesOrder) ob;
            tab1 = createSalesOrderTable(header3, values3, currencyid, so);
        } else if (string.equals("Payment")) {
            Payment pay = (Payment) ob;
            tab1 = createPaymentTable(header3, values3, currencyid, pay, formatter);
        } else if (string.equals("Quotation")) {
            Quotation quotation = (Quotation) ob;
            tab1 = createQuotationTable(header3, values3, currencyid, quotation);
        }
        PdfPCell cell5 = new PdfPCell(tab1);
        cell5.setBorder(1);
        table5.addCell(cell5);
        document.add(table5);
        document.add(new Paragraph("\n\n\n"));

        /*-----------------------------Download file ------------------*/
        return baos;
    } catch (Exception ex) {
        return null;
    } finally {
        if (document != null)
            document.close();
        if (writer != null)
            writer.close();
        if (baos != null)
            baos.close();
    }
}

From source file:com.krawler.spring.exportFuctionality.ExportinvController.java

License:Open Source License

private PdfPTable createDebitTable(String header[], String values[], String currencyid, DebitNote deb)
        throws DocumentException, ServiceException, JSONException {
    PdfPTable table = new PdfPTable(header.length);
    table.setWidthPercentage(100);
    table.setWidths(new float[] { 30, 30, 40 });
    PdfPCell cell = null;//from   www  .  ja  v a 2  s. c  o  m
    for (int i = 0; i < header.length; i++) {
        cell = new PdfPCell(new Paragraph(header[i], fontTblMediumBold));
        cell.setHorizontalAlignment(Element.ALIGN_CENTER);
        cell.setPadding(3);
        table.addCell(cell);
    }
    Iterator itr = deb.getRows().iterator();
    while (itr.hasNext()) {
        DebitNoteDetail debDet = (DebitNoteDetail) itr.next();
        cell = new PdfPCell(new Paragraph(debDet.getGoodsReceiptRow().getInventory().getProduct().getName(),
                fontSmallRegular));
        cell.setHorizontalAlignment(Element.ALIGN_LEFT);
        cell.setBorder(Rectangle.LEFT + Rectangle.RIGHT);
        table.addCell(cell);
        cell = new PdfPCell(new Paragraph(
                Integer.toString(debDet.getQuantity()) + " "
                        + debDet.getGoodsReceiptRow().getInventory().getProduct().getUnitOfMeasure().getName(),
                fontSmallRegular));
        cell.setHorizontalAlignment(Element.ALIGN_CENTER);
        cell.setBorder(Rectangle.LEFT + Rectangle.RIGHT);
        table.addCell(cell);
        cell = calculateDiscount(debDet.getDiscount(), currencyid);
        cell.setHorizontalAlignment(Element.ALIGN_RIGHT);
        cell.setBorder(Rectangle.LEFT + Rectangle.RIGHT);
        table.addCell(cell);
    }
    for (int i = 0; i < 3; i++) {
        PdfPCell cell1 = new PdfPCell(new Paragraph("", fontSmallRegular));
        cell1.setHorizontalAlignment(Element.ALIGN_LEFT);
        cell1.setBorder(Rectangle.TOP);
        table.addCell(cell1);
    }
    return table;
}

From source file:com.krawler.spring.exportFuctionality.ExportinvController.java

License:Open Source License

private PdfPTable createCreditTable(String header[], String values[], String currencyid, CreditNote cre)
        throws DocumentException, ServiceException, JSONException {
    PdfPTable table = new PdfPTable(header.length);
    table.setWidthPercentage(100);
    table.setWidths(new float[] { 30, 30, 40 });
    PdfPCell cell = null;//ww  w  .ja  va 2s  .c o m
    for (int i = 0; i < header.length; i++) {
        cell = new PdfPCell(new Paragraph(header[i], fontTblMediumBold));
        cell.setHorizontalAlignment(Element.ALIGN_CENTER);
        cell.setPadding(3);
        table.addCell(cell);
    }
    Iterator itr = cre.getRows().iterator();
    while (itr.hasNext()) {
        CreditNoteDetail creDet = (CreditNoteDetail) itr.next();
        cell = new PdfPCell(
                new Paragraph(creDet.getInvoiceRow().getInventory().getProduct().getName(), fontSmallRegular));
        cell.setHorizontalAlignment(Element.ALIGN_LEFT);
        cell.setBorder(Rectangle.LEFT + Rectangle.RIGHT);
        table.addCell(cell);
        cell = new PdfPCell(new Paragraph(
                Integer.toString(creDet.getQuantity()) + " "
                        + creDet.getInvoiceRow().getInventory().getProduct().getUnitOfMeasure().getName(),
                fontSmallRegular));
        cell.setHorizontalAlignment(Element.ALIGN_CENTER);
        cell.setBorder(Rectangle.LEFT + Rectangle.RIGHT);
        table.addCell(cell);
        cell = calculateDiscount(creDet.getDiscount(), currencyid);
        cell.setHorizontalAlignment(Element.ALIGN_RIGHT);
        cell.setBorder(Rectangle.LEFT + Rectangle.RIGHT);
        table.addCell(cell);
    }
    for (int i = 0; i < 3; i++) {
        PdfPCell cell1 = new PdfPCell(new Paragraph("", fontSmallRegular));
        cell1.setHorizontalAlignment(Element.ALIGN_LEFT);
        cell1.setBorder(Rectangle.TOP);
        table.addCell(cell1);
    }
    return table;
}

From source file:com.krawler.spring.exportFuctionality.ExportinvController.java

License:Open Source License

private PdfPTable createDebitTable(String header[], String values[], String currencyid, BillingDebitNote deb)
        throws DocumentException, ServiceException, JSONException {
    PdfPTable table = new PdfPTable(header.length);
    table.setWidthPercentage(100);
    table.setWidths(new float[] { 30, 30, 40 });
    PdfPCell cell = null;//www .j a va 2 s .  co  m
    for (int i = 0; i < header.length; i++) {
        cell = new PdfPCell(new Paragraph(header[i], fontTblMediumBold));
        cell.setHorizontalAlignment(Element.ALIGN_CENTER);
        cell.setPadding(3);
        table.addCell(cell);
    }
    Iterator itr = deb.getRows().iterator();
    while (itr.hasNext()) {
        BillingDebitNoteDetail debDet = (BillingDebitNoteDetail) itr.next();
        cell = new PdfPCell(new Paragraph(debDet.getGoodsReceiptRow().getProductDetail(), fontSmallRegular));
        cell.setHorizontalAlignment(Element.ALIGN_LEFT);
        cell.setBorder(Rectangle.LEFT + Rectangle.RIGHT);
        table.addCell(cell);
        cell = new PdfPCell(new Paragraph(Double.toString(debDet.getQuantity()), fontSmallRegular));
        cell.setHorizontalAlignment(Element.ALIGN_CENTER);
        cell.setBorder(Rectangle.LEFT + Rectangle.RIGHT);
        table.addCell(cell);
        cell = calculateDiscount(debDet.getDiscount(), currencyid);
        cell.setHorizontalAlignment(Element.ALIGN_RIGHT);
        cell.setBorder(Rectangle.LEFT + Rectangle.RIGHT);
        table.addCell(cell);
    }
    for (int i = 0; i < 3; i++) {
        PdfPCell cell1 = new PdfPCell(new Paragraph("", fontSmallRegular));
        cell1.setHorizontalAlignment(Element.ALIGN_LEFT);
        cell1.setBorder(Rectangle.TOP);
        table.addCell(cell1);
    }
    return table;
}

From source file:com.krawler.spring.exportFuctionality.ExportinvController.java

License:Open Source License

private PdfPTable createCreditTable(String header[], String values[], String currencyid, BillingCreditNote cre)
        throws DocumentException, ServiceException, JSONException {
    PdfPTable table = new PdfPTable(header.length);
    table.setWidthPercentage(100);
    table.setWidths(new float[] { 30, 30, 40 });
    PdfPCell cell = null;//from  w  ww  .  j a va  2 s.  co m
    for (int i = 0; i < header.length; i++) {
        cell = new PdfPCell(new Paragraph(header[i], fontTblMediumBold));
        cell.setHorizontalAlignment(Element.ALIGN_CENTER);
        cell.setPadding(3);
        table.addCell(cell);
    }
    Iterator itr = cre.getRows().iterator();
    while (itr.hasNext()) {
        BillingCreditNoteDetail creDet = (BillingCreditNoteDetail) itr.next();
        cell = new PdfPCell(new Paragraph(creDet.getInvoiceRow().getProductDetail(), fontSmallRegular));
        cell.setHorizontalAlignment(Element.ALIGN_LEFT);
        cell.setBorder(Rectangle.LEFT + Rectangle.RIGHT);
        table.addCell(cell);
        cell = new PdfPCell(new Paragraph(Double.toString(creDet.getQuantity()), fontSmallRegular));
        cell.setHorizontalAlignment(Element.ALIGN_CENTER);
        cell.setBorder(Rectangle.LEFT + Rectangle.RIGHT);
        table.addCell(cell);
        cell = calculateDiscount(creDet.getDiscount(), currencyid);
        cell.setHorizontalAlignment(Element.ALIGN_RIGHT);
        cell.setBorder(Rectangle.LEFT + Rectangle.RIGHT);
        table.addCell(cell);
    }
    for (int i = 0; i < 3; i++) {
        PdfPCell cell1 = new PdfPCell(new Paragraph("", fontSmallRegular));
        cell1.setHorizontalAlignment(Element.ALIGN_LEFT);
        cell1.setBorder(Rectangle.TOP);
        table.addCell(cell1);
    }
    return table;
}

From source file:com.krawler.spring.exportFuctionality.ExportinvController.java

License:Open Source License

private PdfPTable createGoodsReceiptTable(String[] header, String[] values, String currencyid, GoodsReceipt gr)
        throws DocumentException {
    double total = 0;
    PdfPTable table = new PdfPTable(header.length);
    table.setWidthPercentage(100);
    table.setWidths(new float[] { 30, 15, 15, 20, 20 });
    PdfPCell cell = null;/* ww w  . j  a  v a2  s  .c  om*/
    for (int i = 0; i < header.length; i++) {
        cell = new PdfPCell(new Paragraph(header[i], fontTblMediumBold));
        cell.setHorizontalAlignment(Element.ALIGN_CENTER);
        cell.setPadding(3);
        table.addCell(cell);
    }
    Iterator itr = gr.getRows().iterator();
    while (itr.hasNext()) {
        GoodsReceiptDetail row = (GoodsReceiptDetail) itr.next();
        cell = new PdfPCell(new Paragraph(row.getInventory().getProduct().getName(), fontSmallRegular));
        cell.setHorizontalAlignment(Element.ALIGN_LEFT);
        cell.setBorder(Rectangle.LEFT + Rectangle.RIGHT);
        table.addCell(cell);
        cell = new PdfPCell(new Paragraph(Integer.toString(row.getInventory().getQuantity()) + " "
                + row.getInventory().getProduct().getUnitOfMeasure().getName(), fontSmallRegular));
        cell.setHorizontalAlignment(Element.ALIGN_CENTER);
        cell.setBorder(Rectangle.LEFT + Rectangle.RIGHT);
        table.addCell(cell);
        cell = new PdfPCell(new Paragraph(authHandlerDAOObj.getFormattedCurrency(row.getRate(), currencyid),
                fontSmallRegular));
        cell.setHorizontalAlignment(Element.ALIGN_RIGHT);
        cell.setBorder(Rectangle.LEFT + Rectangle.RIGHT);
        table.addCell(cell);
        cell = calculateDiscount(row.getDiscount(), currencyid);
        cell.setHorizontalAlignment(Element.ALIGN_RIGHT);
        cell.setBorder(Rectangle.LEFT + Rectangle.RIGHT);
        table.addCell(cell);
        double amount = row.getRate() * row.getInventory().getQuantity();
        if (row.getDiscount() != null) {
            amount -= row.getDiscount().getDiscountValue();
        }
        total += amount;
        cell = new PdfPCell(
                new Paragraph(authHandlerDAOObj.getFormattedCurrency(amount, currencyid), fontSmallRegular));
        cell.setHorizontalAlignment(Element.ALIGN_RIGHT);
        cell.setBorder(Rectangle.LEFT + Rectangle.RIGHT);
        table.addCell(cell);
    }

    for (int j = 0; j < 50; j++) {
        cell = new PdfPCell(new Paragraph("", fontSmallRegular));
        cell.setHorizontalAlignment(Element.ALIGN_CENTER);
        cell.setBorder(Rectangle.LEFT + Rectangle.RIGHT);
        table.addCell(cell);
    }
    for (int i = 0; i < 3; i++) {
        cell = new PdfPCell(new Paragraph("", fontSmallRegular));
        cell.setHorizontalAlignment(Element.ALIGN_CENTER);
        cell.setBorder(Rectangle.TOP);
        table.addCell(cell);
    }
    cell = new PdfPCell(new Paragraph("  SUB TOTAL", fontTblMediumBold));
    cell.setHorizontalAlignment(Element.ALIGN_LEFT);
    table.addCell(cell);
    cell = new PdfPCell(
            new Paragraph(authHandlerDAOObj.getFormattedCurrency(total, currencyid), fontTblMediumBold));
    cell.setHorizontalAlignment(Element.ALIGN_RIGHT);
    cell.setPadding(4);
    table.addCell(cell);

    for (int i = 0; i < 3; i++) {
        cell = new PdfPCell(new Paragraph("", fontSmallRegular));
        cell.setHorizontalAlignment(Element.ALIGN_CENTER);
        cell.setBorder(0);
        table.addCell(cell);
    }
    cell = new PdfPCell(new Paragraph("  DISCOUNT", fontTblMediumBold));
    cell.setHorizontalAlignment(Element.ALIGN_LEFT);
    cell.setPadding(4);
    table.addCell(cell);
    cell = calculateDiscount(gr.getDiscount(), currencyid);
    cell.setHorizontalAlignment(Element.ALIGN_RIGHT);
    table.addCell(cell);
    for (int i = 0; i < 3; i++) {
        cell = new PdfPCell(new Paragraph("", fontSmallRegular));
        cell.setHorizontalAlignment(Element.ALIGN_CENTER);
        cell.setBorder(0);
        table.addCell(cell);
    }
    cell = new PdfPCell(new Paragraph("  SHIPPING CHARGES", fontTblMediumBold));
    cell.setHorizontalAlignment(Element.ALIGN_LEFT);
    table.addCell(cell);
    cell = getCharges(gr.getShipEntry(), currencyid);
    cell.setHorizontalAlignment(Element.ALIGN_RIGHT);
    table.addCell(cell);
    for (int i = 0; i < 3; i++) {
        cell = new PdfPCell(new Paragraph("", fontSmallRegular));
        cell.setHorizontalAlignment(Element.ALIGN_CENTER);
        cell.setBorder(0);
        table.addCell(cell);
    }
    cell = new PdfPCell(new Paragraph("  OTHER CHARGES", fontTblMediumBold));
    cell.setHorizontalAlignment(Element.ALIGN_LEFT);
    table.addCell(cell);
    cell = getCharges(gr.getOtherEntry(), currencyid);
    cell.setHorizontalAlignment(Element.ALIGN_RIGHT);
    table.addCell(cell);
    for (int i = 0; i < 3; i++) {
        cell = new PdfPCell(new Paragraph("", fontSmallRegular));
        cell.setHorizontalAlignment(Element.ALIGN_CENTER);
        cell.setBorder(0);
        table.addCell(cell);
    }
    cell = new PdfPCell(new Paragraph("  TOTAL", fontTblMediumBold));
    cell.setHorizontalAlignment(Element.ALIGN_LEFT);
    table.addCell(cell);
    cell = new PdfPCell(
            new Paragraph(authHandlerDAOObj.getFormattedCurrency(gr.getVendorEntry().getAmount(), currencyid),
                    fontTblMediumBold));
    cell.setHorizontalAlignment(Element.ALIGN_RIGHT);
    table.addCell(cell);
    return table;
}