Example usage for com.itextpdf.text.html WebColors getRGBColor

List of usage examples for com.itextpdf.text.html WebColors getRGBColor

Introduction

In this page you can find the example usage for com.itextpdf.text.html WebColors getRGBColor.

Prototype

public static BaseColor getRGBColor(String name) 

Source Link

Document

Gives you a BaseColor based on a name.

Usage

From source file:generatepayslipbyaccz.java

/**
 * Processes requests for both HTTP <code>GET</code> and <code>POST</code>
 * methods./*www .ja  v  a2 s  .  c om*/
 *
 * @param request servlet request
 * @param response servlet response
 * @throws ServletException if a servlet-specific error occurs
 * @throws IOException if an I/O error occurs
 */
protected void processRequest(HttpServletRequest request, HttpServletResponse response)
        throws ServletException, IOException, ClassNotFoundException {
    // setting the content type
    response.setContentType("application/pdf");
    try {
        HttpSession session = request.getSession();
        if (session.getAttribute("username") != null) {
            // Get the text that will be added to the PDF

            String month = request.getParameter("month");
            String year = request.getParameter("year");
            String id = request.getParameter("empid");
            //  System.out.println(id);
            //   String text = request.getParameter("text");
            //  if (text == null || text.trim().length() == 0) {
            //       text = "You didn't enter any text.";
            //  }
            //String id="Ultimate01";    
            Class.forName("com.mysql.jdbc.Driver").newInstance();

            Connection con = DriverManager.getConnection("jdbc:mysql://localhost:3306/payroll123", "root", "");

            PreparedStatement ps = con.prepareStatement("SELECT * from employee where id=?");
            ps.setString(1, id);
            //   ps.setString(2, pass);
            PreparedStatement ps1 = con
                    .prepareStatement("SELECT * from payslip where employeeid=? and month=? and year=?");
            ps1.setString(1, id);
            ps1.setString(2, month);
            ps1.setString(3, year);

            PreparedStatement ps2 = con
                    .prepareStatement("SELECT * from `leave` where employeeid=? and month=? and year=?");
            ps2.setString(1, id);
            ps2.setString(2, month);
            ps2.setString(3, year);

            ResultSet rs2 = ps2.executeQuery();
            rs2.next();

            ResultSet rs = ps.executeQuery();
            rs.next();
            ResultSet rs1 = ps1.executeQuery();
            if (rs1.next() == false) {
                response.sendRedirect("generatepayslipbyaccz.jsp?id=Payslip of " + month + "/" + year
                        + " is not generated OR Record of this Payslip is not available in our Database");
            }
            // step 1

            //System.out.println("sssssssssssssssssss");

            Document document = new Document();
            // step 2
            ByteArrayOutputStream baos = new ByteArrayOutputStream();
            PdfWriter.getInstance(document, baos);

            Font font0 = new Font(Font.FontFamily.TIMES_ROMAN, 11);
            Font font1 = new Font(Font.FontFamily.HELVETICA, 11, Font.BOLD);
            Font font2 = new Font(Font.FontFamily.HELVETICA, 18, Font.BOLD);
            Font font3 = new Font(Font.FontFamily.HELVETICA, 9, Font.BOLD);
            Font font4 = new Font(Font.FontFamily.HELVETICA, 10);
            Font font5 = new Font(Font.FontFamily.HELVETICA, 12, Font.BOLD);
            Font font6 = new Font(Font.FontFamily.HELVETICA, 12);

            //font1.setColor(BaseColor.WHITE);
            BaseColor myColor = WebColors.getRGBColor("#F78181");
            BaseColor myColor1 = WebColors.getRGBColor("#FAFAFA");

            //step 3
            document.open();
            // step 3.5
            PdfPTable table1 = new PdfPTable(3); // 1 columns.
            PdfPCell cell00 = new PdfPCell(new Paragraph("Payslip\nFEB-2015", font2));
            cell00.setBorder(PdfPCell.NO_BORDER);
            cell00.setPaddingTop(18);
            PdfPCell cell01 = new PdfPCell(new Paragraph(""));
            cell01.setBorder(PdfPCell.NO_BORDER);

            Image image = Image.getInstance("cc.jpg");
            PdfPCell cell0 = new PdfPCell(image, true);
            cell0.setBorder(PdfPCell.NO_BORDER);

            // cell0.setHorizontalAlignment(Element.ALIGN_RIGHT);
            //PdfPCell cell1 = new PdfPCell(new Paragraph("Mr. NILESH POPATBHAI LATHIYA"));
            table1.addCell(cell00);
            table1.addCell(cell01);
            table1.addCell(cell0);
            //  table1.addCell(cell1);
            //            table.addCell(cell2);
            //          table.addCell(cell3);
            table1.setWidthPercentage(100);
            table1.setSpacingAfter(2f);
            //table1.setSpacingBefore(20f);

            //table1.setSpacingAfter(10f);

            document.add(table1);
            //  table1.setWidthPercentage(100);
            PdfPTable table2 = new PdfPTable(6); // 3 columns.
            table2.setWidthPercentage(100);
            PdfPCell cell11 = new PdfPCell(new Paragraph(
                    rs.getString(2) + " " + rs.getString(3) + " " + rs.getString(4) + " " + rs.getString(5),
                    font0));
            cell11.setColspan(6);
            //cell11.setBorder(PdfPCell.NO_BORDER);
            cell11.setLeading(10f, 0f);
            cell11.setBorderWidth(1f);
            cell11.setPadding(4);
            cell11.setBackgroundColor(myColor1);
            PdfPCell cell12 = new PdfPCell(new Paragraph("Employee Details", font1));
            cell12.setColspan(2);

            cell12.setBorderWidth(1f);
            cell12.setLeading(10f, 0f);
            cell12.setPadding(4);
            cell12.setBackgroundColor(myColor);
            PdfPCell cell13 = new PdfPCell(new Paragraph("Payment & Leave Details", font1));
            cell13.setColspan(2);
            cell13.setLeading(10f, 0f);
            cell13.setPadding(4);
            cell13.setBorderWidth(1f);
            cell13.setBackgroundColor(myColor);
            // cell11.setLeading(15f, 1.5f);
            PdfPCell cell14 = new PdfPCell(new Paragraph("Location Details", font1));
            cell14.setColspan(2);
            cell14.setLeading(10f, 0f);
            cell14.setPadding(4);
            cell14.setBorderWidth(1f);
            cell14.setBackgroundColor(myColor);
            //            PdfPTable nestedTable1 = new PdfPTable(2);
            //    nestedTable1.addCell(new Paragraph("Emp No."));
            //   nestedTable1.addCell(new Paragraph("379666"));

            //      cell41.addElement(nestedTable1);
            table2.addCell(cell11);
            table2.addCell(cell12);
            table2.addCell(cell13);
            table2.addCell(cell14);

            PdfPCell cell15 = new PdfPCell(new Paragraph("Emp ID.", font3));
            //cell15.setLeading(10f, 0f);
            cell15.setPadding(3);
            cell15.setBorderWidth(1f);
            cell15.setBackgroundColor(myColor1);
            PdfPCell cell16 = new PdfPCell(new Paragraph(rs.getString(1), font4));
            //  cell16.setLeading(10f, 0f);
            cell16.setPadding(3);
            cell16.setBorderWidth(1f);
            cell16.setBackgroundColor(myColor1);
            PdfPCell cell17 = new PdfPCell(new Paragraph("Bank Name", font3));
            //cell17.setLeading(10f, 0f);
            cell17.setPadding(3);
            cell17.setBorderWidth(1f);
            cell17.setBackgroundColor(myColor1);
            PdfPCell cell18 = new PdfPCell(new Paragraph(rs.getString(11), font4));
            //cell18.setLeading(10f, 0f);
            cell18.setPadding(3);
            cell18.setBorderWidth(1f);
            cell18.setBackgroundColor(myColor1);
            PdfPCell cell19 = new PdfPCell(new Paragraph("Location", font3));
            //cell19.setLeading(10f, 0f);
            cell19.setPadding(3);
            cell19.setBorderWidth(1f);
            cell19.setBackgroundColor(myColor1);
            PdfPCell cell20 = new PdfPCell(new Paragraph(rs.getString(13), font4));
            //cell20.setLeading(10f, 0f);
            cell20.setPadding(3);
            cell20.setBorderWidth(1f);
            cell20.setBackgroundColor(myColor1);

            table2.addCell(cell15);
            table2.addCell(cell16);
            table2.addCell(cell17);
            table2.addCell(cell18);
            table2.addCell(cell19);
            table2.addCell(cell20);

            PdfPCell cell21 = new PdfPCell(new Paragraph("Dsgn.", font3));
            //cell21.setLeading(10f, 0f);
            cell21.setPadding(3);
            cell21.setBorderWidth(1f);
            cell21.setBackgroundColor(myColor1);
            PdfPCell cell22 = new PdfPCell(new Paragraph(rs.getString(9), font4));
            //  cell22.setLeading(10f, 0f);
            cell22.setPadding(3);
            cell22.setBorderWidth(1f);
            cell22.setBackgroundColor(myColor1);
            PdfPCell cell23 = new PdfPCell(new Paragraph("Acc No.", font3));
            //cell23.setLeading(10f, 0f);
            cell23.setPadding(3);
            cell23.setBorderWidth(1f);
            cell23.setBackgroundColor(myColor1);

            int accno = Integer.parseInt(rs.getString(12));
            String accno1[] = new String[4];
            for (int i = 0; i < 4; i++) {
                accno1[i] = Integer.toString(accno % 10);
                accno /= 10;
            }

            PdfPCell cell24 = new PdfPCell(new Paragraph(
                    "XXXXXXX" + accno1[3] + "" + accno1[2] + "" + accno1[1] + "" + accno1[0], font4));
            //cell24.setLeading(10f, 0f);
            cell24.setPadding(3);
            cell24.setBorderWidth(1f);
            cell24.setBackgroundColor(myColor1);
            PdfPCell cell25 = new PdfPCell(new Paragraph("Base Br.", font3));
            //cell25.setLeading(10f, 0f);
            cell25.setPadding(3);
            cell25.setBorderWidth(1f);
            cell25.setBackgroundColor(myColor1);
            PdfPCell cell26 = new PdfPCell(new Paragraph("CC - Ahmedabad", font4));
            //cell26.setLeading(10f, 0f);
            cell26.setPadding(3);
            cell26.setBorderWidth(1f);
            cell26.setBackgroundColor(myColor1);

            table2.addCell(cell21);
            table2.addCell(cell22);
            table2.addCell(cell23);
            table2.addCell(cell24);
            table2.addCell(cell25);
            table2.addCell(cell26);

            PdfPCell cell27 = new PdfPCell(new Paragraph("Grade", font3));
            //cell27.setLeading(10f, 0f);
            cell27.setPadding(3);
            cell27.setBorderWidth(1f);
            cell27.setBackgroundColor(myColor1);
            PdfPCell cell28 = new PdfPCell(new Paragraph("C2", font4));
            //  cell28.setLeading(10f, 0f);
            cell28.setPadding(3);
            cell28.setBorderWidth(1f);
            cell28.setBackgroundColor(myColor1);
            PdfPCell cell29 = new PdfPCell(new Paragraph("Days paid", font3));
            //cell29.setLeading(10f, 0f);
            cell29.setPadding(3);
            cell29.setBorderWidth(1f);
            cell29.setBackgroundColor(myColor1);
            PdfPCell cell30 = new PdfPCell(new Paragraph(Integer.toString(rs1.getInt(5)), font4));
            //cell30.setLeading(10f, 0f);
            cell30.setPadding(3);
            cell30.setBorderWidth(1f);
            cell30.setBackgroundColor(myColor1);
            PdfPCell cell31 = new PdfPCell(new Paragraph("Depute Br.", font3));
            //cell31.setLeading(10f, 0f);
            cell31.setPadding(3);
            cell31.setBorderWidth(1f);
            cell31.setBackgroundColor(myColor1);
            PdfPCell cell32 = new PdfPCell(new Paragraph("CC - Ahmedabad", font4));
            //cell32.setLeading(10f, 0f);
            cell32.setPadding(3);
            cell32.setBorderWidth(1f);
            cell32.setBackgroundColor(myColor1);

            table2.addCell(cell27);
            table2.addCell(cell28);
            table2.addCell(cell29);
            table2.addCell(cell30);
            table2.addCell(cell31);
            table2.addCell(cell32);

            PdfPCell cell33 = new PdfPCell(new Paragraph("PAN", font3));
            //cell33.setLeading(10f, 0f);
            cell33.setPadding(3);
            cell33.setBorderWidth(1f);
            cell33.setBackgroundColor(myColor1);
            PdfPCell cell34 = new PdfPCell(new Paragraph("XXXXXXX792E", font4));
            //  cell34.setLeading(10f, 0f);
            cell34.setPadding(3);
            cell34.setBorderWidth(1f);
            cell34.setBackgroundColor(myColor1);
            PdfPCell cell35 = new PdfPCell(new Paragraph("Leave Balance", font3));
            //cell35.setLeading(10f, 0f);
            cell35.setPadding(3);
            cell35.setBorderWidth(1f);
            cell35.setBackgroundColor(myColor1);
            // PdfPCell cell36 = new PdfPCell(new Paragraph("EL X SL X CL X",font4));
            PdfPCell cell36 = new PdfPCell(new Paragraph(
                    "EL " + rs2.getInt(1) + "  SL " + rs2.getInt(2) + "  CL " + rs2.getInt(3), font4));
            //cell36.setLeading(10f, 0f);
            cell36.setPadding(3);
            cell36.setBorderWidth(1f);
            cell36.setBackgroundColor(myColor1);
            PdfPCell cell37 = new PdfPCell(new Paragraph(" WON/SWON", font3));
            //cell37.setLeading(10f, 0f);
            cell37.setPadding(3);
            cell37.setBorderWidth(1f);
            cell37.setBackgroundColor(myColor1);
            PdfPCell cell38 = new PdfPCell(new Paragraph("2616141", font4));
            //cell38.setLeading(10f, 0f);
            cell38.setPadding(3);
            cell38.setBorderWidth(1f);
            cell38.setBackgroundColor(myColor1);

            table2.addCell(cell33);
            table2.addCell(cell34);
            table2.addCell(cell35);
            table2.addCell(cell36);
            table2.addCell(cell37);
            table2.addCell(cell38);

            table2.setSpacingAfter(12f);

            document.add(table2);

            PdfPTable table3 = new PdfPTable(5); // 5 columns.
            table3.setWidthPercentage(100);

            PdfPCell cell39 = new PdfPCell(new Paragraph("Earnings", font1));
            cell39.setLeading(10f, 0f);
            cell39.setPadding(4);
            cell39.setBorderWidth(1f);
            cell39.setBackgroundColor(myColor);
            PdfPCell cell40 = new PdfPCell(new Paragraph("Arrears (INR)", font1));
            cell40.setLeading(10f, 0f);
            cell40.setPadding(4);
            cell40.setBorderWidth(1f);
            cell40.setBackgroundColor(myColor);
            PdfPCell cell41 = new PdfPCell(new Paragraph("Current (INR)", font1));
            cell41.setLeading(10f, 0f);
            cell41.setPadding(4);
            cell41.setBorderWidth(1f);
            cell41.setBackgroundColor(myColor);
            PdfPCell cell42 = new PdfPCell(new Paragraph("Deductions", font1));
            cell42.setLeading(10f, 0f);
            cell42.setPadding(4);
            cell42.setBorderWidth(1f);
            cell42.setBackgroundColor(myColor);
            PdfPCell cell43 = new PdfPCell(new Paragraph("Amount (INR)", font1));
            cell43.setLeading(10f, 0f);
            cell43.setPadding(4);
            cell43.setBorderWidth(1f);
            cell43.setBackgroundColor(myColor);

            table3.addCell(cell39);
            table3.addCell(cell40);
            table3.addCell(cell41);
            table3.addCell(cell42);
            table3.addCell(cell43);

            String[] sal = new String[10];
            sal[0] = "Basic Salary";
            sal[1] = "House Rent Allowance";
            sal[2] = "Medical Allowance";
            sal[3] = "Travelling Allowance";
            sal[4] = "Personal Allowance";
            sal[5] = "City Allowance";
            sal[6] = "Performance Pay";
            sal[7] = "Provident Fund";
            sal[8] = "Professional Tax";
            sal[9] = "Extra Leaves";

            Float[] val = new Float[10];
            val[0] = rs1.getFloat(4);
            val[1] = 6000.00f;
            val[2] = 1000.00f;
            val[3] = 1000.00f;
            val[4] = val[0] / 2;
            val[5] = 1000.00f;
            val[6] = val[4];
            val[7] = val[0] * 12 / 100;
            val[8] = 0.00f;
            if ((val[0] + val[4] + val[6]) * 12 > 250000.00f) {
                val[8] = (val[0] + val[4] + val[6]) / 10;
            }
            val[9] = 0.0f;
            if (rs2.getInt(1) < 0)
                val[9] -= (rs2.getInt(1) * val[0]) / 30;
            if (rs2.getInt(2) < 0)
                val[9] -= rs2.getInt(2) * val[0] / 30;
            if (rs2.getInt(3) < 0)
                val[9] -= rs2.getInt(3) * val[0] / 30;

            for (int i = 0; i < 7; i++) {
                PdfPCell cell44 = new PdfPCell(new Paragraph(sal[i], font3));
                //cell27.setLeading(10f, 0f);
                cell44.setPadding(3);
                cell44.setBorderWidth(1f);
                cell44.setBackgroundColor(myColor1);
                PdfPCell cell45 = new PdfPCell(new Paragraph("", font4));
                //  cell45.setLeading(10f, 0f);
                cell45.setPadding(3);
                cell45.setBorderWidth(1f);
                cell45.setBackgroundColor(myColor1);
                PdfPCell cell46 = new PdfPCell(new Paragraph(val[i].toString(), font3));
                //cell46.setLeading(10f, 0f);
                cell46.setHorizontalAlignment(Element.ALIGN_RIGHT);
                cell46.setPadding(3);
                cell46.setBorderWidth(1f);
                cell46.setBackgroundColor(myColor1);

                table3.addCell(cell44);
                table3.addCell(cell45);
                table3.addCell(cell46);

                if (i == 0 || i == 1 || i == 2) {
                    PdfPCell cell47 = new PdfPCell(new Paragraph(sal[7 + i], font4));
                    //cell47.setLeading(10f, 0f);
                    cell47.setPadding(3);
                    cell47.setBorderWidth(1f);
                    cell47.setBackgroundColor(myColor1);
                    table3.addCell(cell47);
                    PdfPCell cell48 = new PdfPCell(new Paragraph(val[i + 7].toString(), font3));
                    //cell48.setLeading(10f, 0f);
                    cell48.setHorizontalAlignment(Element.ALIGN_RIGHT);
                    cell48.setPadding(3);
                    cell48.setBorderWidth(1f);
                    cell48.setBackgroundColor(myColor1);
                    table3.addCell(cell48);
                } else {
                    PdfPCell cell47 = new PdfPCell(new Paragraph("", font4));
                    cell47.setBorder(PdfPCell.NO_BORDER);
                    cell47.setBorderWidthRight(1f);
                    cell47.setColspan(2);
                    table3.addCell(cell47);
                }

            }

            PdfPCell cell48 = new PdfPCell(new Paragraph("", font4));
            //cell48.setBorder(PdfPCell.NO_BORDER);
            cell48.setColspan(3);
            table3.addCell(cell48);

            PdfPCell cell49 = new PdfPCell(new Paragraph("", font4));
            //cell49.setBorder(PdfPCell.NO_BORDER);
            cell49.setColspan(2);
            table3.addCell(cell49);
            table3.addCell(cell48);
            table3.addCell(cell49);
            table3.addCell(cell48);
            table3.addCell(cell49);
            table3.addCell(cell48);
            table3.addCell(cell49);

            PdfPCell cell50 = new PdfPCell(new Paragraph("Total Earnings (Current + Arrears)", font3));
            //cell27.setLeading(10f, 0f);
            cell50.setColspan(2);
            cell50.setPadding(3);
            cell50.setBorderWidth(1f);
            cell50.setBackgroundColor(myColor1);
            table3.addCell(cell50);

            float a = 0.0f;
            for (int i = 0; i < 7; i++) {
                a += val[i];
            }
            PdfPCell cell55 = new PdfPCell(new Paragraph(Float.toString(a), font3));
            //cell27.setLeading(10f, 0f);
            cell55.setPadding(3);
            cell55.setHorizontalAlignment(Element.ALIGN_RIGHT);
            cell55.setBorderWidth(1f);
            cell55.setBackgroundColor(myColor1);
            table3.addCell(cell55);

            PdfPCell cell51 = new PdfPCell(new Paragraph("Total Deductions", font3));
            //cell27.setLeading(10f, 0f);
            //cell51.setColspan(3);
            cell51.setPadding(3);
            cell51.setBorderWidth(1f);
            cell51.setBackgroundColor(myColor1);
            table3.addCell(cell51);

            float b = val[7] + val[8] + val[9];

            PdfPCell cell56 = new PdfPCell(new Paragraph(Float.toString(b), font3));
            //cell27.setLeading(10f, 0f);
            //cell56.setColspan(3);
            cell56.setPadding(3);
            cell56.setHorizontalAlignment(Element.ALIGN_RIGHT);
            cell56.setBorderWidth(1f);
            cell56.setBackgroundColor(myColor1);
            table3.addCell(cell56);

            table3.setSpacingAfter(12f);

            document.add(table3);

            PdfPTable table4 = new PdfPTable(5); // 2 columns.
            table4.setWidthPercentage(100);

            PdfPCell cell54 = new PdfPCell(new Paragraph("", font3));
            cell54.setBorder(PdfPCell.NO_BORDER);
            cell54.setColspan(3);
            table4.addCell(cell54);

            PdfPCell cell52 = new PdfPCell(new Paragraph("Net Pay", font5));
            cell52.setLeading(10f, 0f);
            // cell52.setBorder(PdfPCell.ALIGN_CENTER);
            cell52.setHorizontalAlignment(Element.ALIGN_LEFT);
            cell52.setVerticalAlignment(Element.ALIGN_CENTER);

            cell52.setPadding(6f);
            cell52.setBorderWidth(1f);
            cell52.setBackgroundColor(myColor);
            table4.addCell(cell52);

            PdfPCell cell53 = new PdfPCell(new Paragraph("" + (a - b), font6));
            cell53.setLeading(10f, 0f);
            cell53.setPadding(6f);
            cell53.setHorizontalAlignment(Element.ALIGN_CENTER);
            cell53.setVerticalAlignment(Element.ALIGN_CENTER);
            cell53.setBorderWidth(1f);

            table4.addCell(cell53);

            document.add(table4);

            // step 4
            // document.add(new Paragraph(String.format(
            //         "You have submitted the following text using the %s method:%s",
            //        request.getMethod(),uname)));
            //   document.add(new Paragraph(text));
            // step 5
            document.close();

            // setting some response headers
            response.setHeader("Expires", "0");
            response.setHeader("Cache-Control", "must-revalidate, post-check=0, pre-check=0");
            response.setHeader("Pragma", "public");

            // the contentlength
            response.setContentLength(baos.size());
            // write ByteArrayOutputStream to the ServletOutputStream
            OutputStream os = response.getOutputStream();
            baos.writeTo(os);
            os.flush();
            os.close();
        } else {
            response.sendRedirect("index.jsp?id=Your session may be expired. You have to login first");

        }
    } catch (Exception e) {
        //       throw new IOException(e.getMessage());
        System.out.println(e);
        System.out.println("sssssssssssssssssss");

    }
}

From source file:generatepayslip.java

/**
 * Processes requests for both HTTP <code>GET</code> and <code>POST</code>
 * methods.//from   w  w  w .jav a2  s .c om
 *
 * @param request servlet request
 * @param response servlet response
 * @throws ServletException if a servlet-specific error occurs
 * @throws IOException if an I/O error occurs
 */
protected void processRequest(HttpServletRequest request, HttpServletResponse response)
        throws ServletException, IOException, ClassNotFoundException {
    // setting the content type
    response.setContentType("application/pdf");
    try {
        HttpSession session = request.getSession();
        if (session.getAttribute("username") != null) {
            // Get the text that will be added to the PDF

            String month = request.getParameter("month");
            String year = request.getParameter("year");
            String id = (String) session.getAttribute("id");
            //  System.out.println(id);
            //   String text = request.getParameter("text");
            //  if (text == null || text.trim().length() == 0) {
            //       text = "You didn't enter any text.";
            //  }
            //String id="Ultimate01";    
            Class.forName("com.mysql.jdbc.Driver").newInstance();

            Connection con = DriverManager.getConnection("jdbc:mysql://localhost:3306/payroll123", "root", "");

            PreparedStatement ps = con.prepareStatement("SELECT * from employee where id=?");
            ps.setString(1, id);
            //   ps.setString(2, pass);
            PreparedStatement ps1 = con
                    .prepareStatement("SELECT * from payslip where employeeid=? and month=? and year=?");
            ps1.setString(1, id);
            ps1.setString(2, month);
            ps1.setString(3, year);

            //  PreparedStatement ps2 = con.prepareStatement("SELECT * from leave ");
            PreparedStatement ps2 = con
                    .prepareStatement("SELECT * from `leave` where employeeid=? and month=? and year=?");
            ps2.setString(1, id);
            ps2.setString(2, month);
            ps2.setString(3, year);
            //    
            ResultSet rs = ps.executeQuery();
            rs.next();
            ResultSet rs1 = ps1.executeQuery();
            ResultSet rs2 = ps2.executeQuery();
            rs2.next();
            if (rs1.next() == false) {
                response.sendRedirect("generatepayslip.jsp?id=Payslip of " + month + "/" + year
                        + " is not generated OR Record of this Payslip is not available in our Database");
            }
            // step 1

            //System.out.println("sssssssssssssssssss");

            Document document = new Document();
            // step 2
            ByteArrayOutputStream baos = new ByteArrayOutputStream();
            PdfWriter.getInstance(document, baos);

            Font font0 = new Font(Font.FontFamily.TIMES_ROMAN, 11);
            Font font1 = new Font(Font.FontFamily.HELVETICA, 11, Font.BOLD);
            Font font2 = new Font(Font.FontFamily.HELVETICA, 18, Font.BOLD);
            Font font3 = new Font(Font.FontFamily.HELVETICA, 9, Font.BOLD);
            Font font4 = new Font(Font.FontFamily.HELVETICA, 10);
            Font font5 = new Font(Font.FontFamily.HELVETICA, 12, Font.BOLD);
            Font font6 = new Font(Font.FontFamily.HELVETICA, 12);

            //font1.setColor(BaseColor.WHITE);
            BaseColor myColor = WebColors.getRGBColor("#F78181");
            BaseColor myColor1 = WebColors.getRGBColor("#FAFAFA");

            //step 3
            document.open();
            // step 3.5
            PdfPTable table1 = new PdfPTable(3); // 1 columns.
            PdfPCell cell00 = new PdfPCell(new Paragraph("Payslip\nFEB-2015", font2));
            cell00.setBorder(PdfPCell.NO_BORDER);
            cell00.setPaddingTop(18);
            PdfPCell cell01 = new PdfPCell(new Paragraph(""));
            cell01.setBorder(PdfPCell.NO_BORDER);

            Image image = Image.getInstance("cc.jpg");
            PdfPCell cell0 = new PdfPCell(image, true);
            cell0.setBorder(PdfPCell.NO_BORDER);

            // cell0.setHorizontalAlignment(Element.ALIGN_RIGHT);
            //PdfPCell cell1 = new PdfPCell(new Paragraph("Mr. NILESH POPATBHAI LATHIYA"));
            table1.addCell(cell00);
            table1.addCell(cell01);
            table1.addCell(cell0);
            //  table1.addCell(cell1);
            //            table.addCell(cell2);
            //          table.addCell(cell3);
            table1.setWidthPercentage(100);
            table1.setSpacingAfter(2f);
            //table1.setSpacingBefore(20f);

            //table1.setSpacingAfter(10f);

            document.add(table1);
            //  table1.setWidthPercentage(100);
            PdfPTable table2 = new PdfPTable(6); // 3 columns.
            table2.setWidthPercentage(100);
            PdfPCell cell11 = new PdfPCell(new Paragraph((String) session.getAttribute("username"), font0));
            cell11.setColspan(6);
            //cell11.setBorder(PdfPCell.NO_BORDER);
            cell11.setLeading(10f, 0f);
            cell11.setBorderWidth(1f);
            cell11.setPadding(4);
            cell11.setBackgroundColor(myColor1);
            PdfPCell cell12 = new PdfPCell(new Paragraph("Employee Details", font1));
            cell12.setColspan(2);

            cell12.setBorderWidth(1f);
            cell12.setLeading(10f, 0f);
            cell12.setPadding(4);
            cell12.setBackgroundColor(myColor);
            PdfPCell cell13 = new PdfPCell(new Paragraph("Payment & Leave Details", font1));
            cell13.setColspan(2);
            cell13.setLeading(10f, 0f);
            cell13.setPadding(4);
            cell13.setBorderWidth(1f);
            cell13.setBackgroundColor(myColor);
            // cell11.setLeading(15f, 1.5f);
            PdfPCell cell14 = new PdfPCell(new Paragraph("Location Details", font1));
            cell14.setColspan(2);
            cell14.setLeading(10f, 0f);
            cell14.setPadding(4);
            cell14.setBorderWidth(1f);
            cell14.setBackgroundColor(myColor);
            //            PdfPTable nestedTable1 = new PdfPTable(2);
            //    nestedTable1.addCell(new Paragraph("Emp No."));
            //   nestedTable1.addCell(new Paragraph("379666"));

            //      cell41.addElement(nestedTable1);
            table2.addCell(cell11);
            table2.addCell(cell12);
            table2.addCell(cell13);
            table2.addCell(cell14);

            PdfPCell cell15 = new PdfPCell(new Paragraph("Emp ID.", font3));
            //cell15.setLeading(10f, 0f);
            cell15.setPadding(3);
            cell15.setBorderWidth(1f);
            cell15.setBackgroundColor(myColor1);
            PdfPCell cell16 = new PdfPCell(new Paragraph(rs.getString(1), font4));
            //  cell16.setLeading(10f, 0f);
            cell16.setPadding(3);
            cell16.setBorderWidth(1f);
            cell16.setBackgroundColor(myColor1);
            PdfPCell cell17 = new PdfPCell(new Paragraph("Bank Name", font3));
            //cell17.setLeading(10f, 0f);
            cell17.setPadding(3);
            cell17.setBorderWidth(1f);
            cell17.setBackgroundColor(myColor1);
            PdfPCell cell18 = new PdfPCell(new Paragraph(rs.getString(11), font4));
            //cell18.setLeading(10f, 0f);
            cell18.setPadding(3);
            cell18.setBorderWidth(1f);
            cell18.setBackgroundColor(myColor1);
            PdfPCell cell19 = new PdfPCell(new Paragraph("Location", font3));
            //cell19.setLeading(10f, 0f);
            cell19.setPadding(3);
            cell19.setBorderWidth(1f);
            cell19.setBackgroundColor(myColor1);
            PdfPCell cell20 = new PdfPCell(new Paragraph(rs.getString(13), font4));
            //cell20.setLeading(10f, 0f);
            cell20.setPadding(3);
            cell20.setBorderWidth(1f);
            cell20.setBackgroundColor(myColor1);

            table2.addCell(cell15);
            table2.addCell(cell16);
            table2.addCell(cell17);
            table2.addCell(cell18);
            table2.addCell(cell19);
            table2.addCell(cell20);

            PdfPCell cell21 = new PdfPCell(new Paragraph("Dsgn.", font3));
            //cell21.setLeading(10f, 0f);
            cell21.setPadding(3);
            cell21.setBorderWidth(1f);
            cell21.setBackgroundColor(myColor1);
            PdfPCell cell22 = new PdfPCell(new Paragraph(rs.getString(9), font4));
            //  cell22.setLeading(10f, 0f);
            cell22.setPadding(3);
            cell22.setBorderWidth(1f);
            cell22.setBackgroundColor(myColor1);
            PdfPCell cell23 = new PdfPCell(new Paragraph("Acc No.", font3));
            //cell23.setLeading(10f, 0f);
            cell23.setPadding(3);
            cell23.setBorderWidth(1f);
            cell23.setBackgroundColor(myColor1);

            int accno = Integer.parseInt(rs.getString(12));
            String accno1[] = new String[4];
            for (int i = 0; i < 4; i++) {
                accno1[i] = Integer.toString(accno % 10);
                accno /= 10;
            }

            PdfPCell cell24 = new PdfPCell(new Paragraph(
                    "XXXXXXX" + accno1[3] + "" + accno1[2] + "" + accno1[1] + "" + accno1[0], font4));
            //cell24.setLeading(10f, 0f);
            cell24.setPadding(3);
            cell24.setBorderWidth(1f);
            cell24.setBackgroundColor(myColor1);
            PdfPCell cell25 = new PdfPCell(new Paragraph("Base Br.", font3));
            //cell25.setLeading(10f, 0f);
            cell25.setPadding(3);
            cell25.setBorderWidth(1f);
            cell25.setBackgroundColor(myColor1);
            PdfPCell cell26 = new PdfPCell(new Paragraph("CC - Ahmedabad", font4));
            //cell26.setLeading(10f, 0f);
            cell26.setPadding(3);
            cell26.setBorderWidth(1f);
            cell26.setBackgroundColor(myColor1);

            table2.addCell(cell21);
            table2.addCell(cell22);
            table2.addCell(cell23);
            table2.addCell(cell24);
            table2.addCell(cell25);
            table2.addCell(cell26);

            PdfPCell cell27 = new PdfPCell(new Paragraph("Grade", font3));
            //cell27.setLeading(10f, 0f);
            cell27.setPadding(3);
            cell27.setBorderWidth(1f);
            cell27.setBackgroundColor(myColor1);
            PdfPCell cell28 = new PdfPCell(new Paragraph("C2", font4));
            //  cell28.setLeading(10f, 0f);
            cell28.setPadding(3);
            cell28.setBorderWidth(1f);
            cell28.setBackgroundColor(myColor1);
            PdfPCell cell29 = new PdfPCell(new Paragraph("Days paid", font3));
            //cell29.setLeading(10f, 0f);
            cell29.setPadding(3);
            cell29.setBorderWidth(1f);
            cell29.setBackgroundColor(myColor1);
            PdfPCell cell30 = new PdfPCell(new Paragraph(Integer.toString(rs1.getInt(5)), font4));
            //cell30.setLeading(10f, 0f);
            cell30.setPadding(3);
            cell30.setBorderWidth(1f);
            cell30.setBackgroundColor(myColor1);
            PdfPCell cell31 = new PdfPCell(new Paragraph("Depute Br.", font3));
            //cell31.setLeading(10f, 0f);
            cell31.setPadding(3);
            cell31.setBorderWidth(1f);
            cell31.setBackgroundColor(myColor1);
            PdfPCell cell32 = new PdfPCell(new Paragraph("CC - Ahmedabad", font4));
            //cell32.setLeading(10f, 0f);
            cell32.setPadding(3);
            cell32.setBorderWidth(1f);
            cell32.setBackgroundColor(myColor1);

            table2.addCell(cell27);
            table2.addCell(cell28);
            table2.addCell(cell29);
            table2.addCell(cell30);
            table2.addCell(cell31);
            table2.addCell(cell32);

            PdfPCell cell33 = new PdfPCell(new Paragraph("PAN", font3));
            //cell33.setLeading(10f, 0f);
            cell33.setPadding(3);
            cell33.setBorderWidth(1f);
            cell33.setBackgroundColor(myColor1);
            PdfPCell cell34 = new PdfPCell(new Paragraph("XXXXXXX792E", font4));
            //  cell34.setLeading(10f, 0f);
            cell34.setPadding(3);
            cell34.setBorderWidth(1f);
            cell34.setBackgroundColor(myColor1);
            PdfPCell cell35 = new PdfPCell(new Paragraph("Leave Balance", font3));
            //cell35.setLeading(10f, 0f);
            cell35.setPadding(3);
            cell35.setBorderWidth(1f);
            cell35.setBackgroundColor(myColor1);
            PdfPCell cell36 = new PdfPCell(new Paragraph(
                    "EL " + rs2.getInt(1) + "  SL " + rs2.getInt(2) + "  CL " + rs2.getInt(3), font4));
            // PdfPCell cell36 = new PdfPCell(new Paragraph("EL "+rs2.getInt(2),font4));
            //cell36.setLeading(10f, 0f);rs2.getInt(1)
            cell36.setPadding(3);
            cell36.setBorderWidth(1f);
            cell36.setBackgroundColor(myColor1);
            PdfPCell cell37 = new PdfPCell(new Paragraph(" WON/SWON", font3));
            //cell37.setLeading(10f, 0f);
            cell37.setPadding(3);
            cell37.setBorderWidth(1f);
            cell37.setBackgroundColor(myColor1);
            PdfPCell cell38 = new PdfPCell(new Paragraph("2616141", font4));
            //cell38.setLeading(10f, 0f);
            cell38.setPadding(3);
            cell38.setBorderWidth(1f);
            cell38.setBackgroundColor(myColor1);

            table2.addCell(cell33);
            table2.addCell(cell34);
            table2.addCell(cell35);
            table2.addCell(cell36);
            table2.addCell(cell37);
            table2.addCell(cell38);

            table2.setSpacingAfter(12f);

            document.add(table2);

            PdfPTable table3 = new PdfPTable(5); // 5 columns.
            table3.setWidthPercentage(100);

            PdfPCell cell39 = new PdfPCell(new Paragraph("Earnings", font1));
            cell39.setLeading(10f, 0f);
            cell39.setPadding(4);
            cell39.setBorderWidth(1f);
            cell39.setBackgroundColor(myColor);
            PdfPCell cell40 = new PdfPCell(new Paragraph("Arrears (INR)", font1));
            cell40.setLeading(10f, 0f);
            cell40.setPadding(4);
            cell40.setBorderWidth(1f);
            cell40.setBackgroundColor(myColor);
            PdfPCell cell41 = new PdfPCell(new Paragraph("Current (INR)", font1));
            cell41.setLeading(10f, 0f);
            cell41.setPadding(4);
            cell41.setBorderWidth(1f);
            cell41.setBackgroundColor(myColor);
            PdfPCell cell42 = new PdfPCell(new Paragraph("Deductions", font1));
            cell42.setLeading(10f, 0f);
            cell42.setPadding(4);
            cell42.setBorderWidth(1f);
            cell42.setBackgroundColor(myColor);
            PdfPCell cell43 = new PdfPCell(new Paragraph("Amount (INR)", font1));
            cell43.setLeading(10f, 0f);
            cell43.setPadding(4);
            cell43.setBorderWidth(1f);
            cell43.setBackgroundColor(myColor);

            table3.addCell(cell39);
            table3.addCell(cell40);
            table3.addCell(cell41);
            table3.addCell(cell42);
            table3.addCell(cell43);

            String[] sal = new String[10];
            sal[0] = "Basic Salary";
            sal[1] = "House Rent Allowance";
            sal[2] = "Medical Allowance";
            sal[3] = "Travelling Allowance";
            sal[4] = "Personal Allowance";
            sal[5] = "City Allowance";
            sal[6] = "Performance Pay";
            sal[7] = "Provident Fund";
            sal[8] = "Professional Tax";
            sal[9] = "Extra Leaves";

            Float[] val = new Float[10];
            val[0] = rs1.getFloat(4);
            val[1] = 6000.00f;
            val[2] = 1000.00f;
            val[3] = 1000.00f;
            val[4] = val[0] / 2;
            val[5] = 1000.00f;
            val[6] = val[4];
            val[7] = val[0] * 12 / 100;
            val[8] = 0.00f;
            if ((val[0] + val[4] + val[6]) * 12 > 250000.00f) {
                val[8] = (val[0] + val[4] + val[6]) / 10;
            }
            val[9] = 0.0f;
            if (rs2.getInt(1) < 0)
                val[9] -= (rs2.getInt(1) * val[0]) / 30;
            if (rs2.getInt(2) < 0)
                val[9] -= rs2.getInt(2) * val[0] / 30;
            if (rs2.getInt(3) < 0)
                val[9] -= rs2.getInt(3) * val[0] / 30;

            for (int i = 0; i < 7; i++) {
                PdfPCell cell44 = new PdfPCell(new Paragraph(sal[i], font3));
                //cell27.setLeading(10f, 0f);
                cell44.setPadding(3);
                cell44.setBorderWidth(1f);
                cell44.setBackgroundColor(myColor1);
                PdfPCell cell45 = new PdfPCell(new Paragraph("", font4));
                //  cell45.setLeading(10f, 0f);
                cell45.setPadding(3);
                cell45.setBorderWidth(1f);
                cell45.setBackgroundColor(myColor1);
                PdfPCell cell46 = new PdfPCell(new Paragraph(val[i].toString(), font3));
                //cell46.setLeading(10f, 0f);
                cell46.setHorizontalAlignment(Element.ALIGN_RIGHT);
                cell46.setPadding(3);
                cell46.setBorderWidth(1f);
                cell46.setBackgroundColor(myColor1);

                table3.addCell(cell44);
                table3.addCell(cell45);
                table3.addCell(cell46);

                if (i == 0 || i == 1 || i == 2) {
                    PdfPCell cell47 = new PdfPCell(new Paragraph(sal[7 + i], font4));
                    //cell47.setLeading(10f, 0f);
                    cell47.setPadding(3);
                    cell47.setBorderWidth(1f);
                    cell47.setBackgroundColor(myColor1);
                    table3.addCell(cell47);
                    PdfPCell cell48 = new PdfPCell(new Paragraph(val[i + 7].toString(), font3));
                    //cell48.setLeading(10f, 0f);
                    cell48.setHorizontalAlignment(Element.ALIGN_RIGHT);
                    cell48.setPadding(3);
                    cell48.setBorderWidth(1f);
                    cell48.setBackgroundColor(myColor1);
                    table3.addCell(cell48);
                } else {
                    PdfPCell cell47 = new PdfPCell(new Paragraph("", font4));
                    cell47.setBorder(PdfPCell.NO_BORDER);
                    cell47.setBorderWidthRight(1f);
                    cell47.setColspan(2);
                    table3.addCell(cell47);
                }

            }

            PdfPCell cell48 = new PdfPCell(new Paragraph("", font4));
            //cell48.setBorder(PdfPCell.NO_BORDER);
            cell48.setColspan(3);
            table3.addCell(cell48);

            PdfPCell cell49 = new PdfPCell(new Paragraph("", font4));
            //cell49.setBorder(PdfPCell.NO_BORDER);
            cell49.setColspan(2);
            table3.addCell(cell49);
            table3.addCell(cell48);
            table3.addCell(cell49);
            table3.addCell(cell48);
            table3.addCell(cell49);
            table3.addCell(cell48);
            table3.addCell(cell49);

            PdfPCell cell50 = new PdfPCell(new Paragraph("Total Earnings (Current + Arrears)", font3));
            //cell27.setLeading(10f, 0f);
            cell50.setColspan(2);
            cell50.setPadding(3);
            cell50.setBorderWidth(1f);
            cell50.setBackgroundColor(myColor1);
            table3.addCell(cell50);

            float a = 0.0f;
            for (int i = 0; i < 7; i++) {
                a += val[i];
            }
            PdfPCell cell55 = new PdfPCell(new Paragraph(Float.toString(a), font3));
            //cell27.setLeading(10f, 0f);
            cell55.setPadding(3);
            cell55.setHorizontalAlignment(Element.ALIGN_RIGHT);
            cell55.setBorderWidth(1f);
            cell55.setBackgroundColor(myColor1);
            table3.addCell(cell55);

            PdfPCell cell51 = new PdfPCell(new Paragraph("Total Deductions", font3));
            //cell27.setLeading(10f, 0f);
            //cell51.setColspan(3);
            cell51.setPadding(3);
            cell51.setBorderWidth(1f);
            cell51.setBackgroundColor(myColor1);
            table3.addCell(cell51);

            float b = val[7] + val[8] + val[9];

            PdfPCell cell56 = new PdfPCell(new Paragraph(Float.toString(b), font3));
            //cell27.setLeading(10f, 0f);
            //cell56.setColspan(3);
            cell56.setPadding(3);
            cell56.setHorizontalAlignment(Element.ALIGN_RIGHT);
            cell56.setBorderWidth(1f);
            cell56.setBackgroundColor(myColor1);
            table3.addCell(cell56);

            table3.setSpacingAfter(12f);

            document.add(table3);

            PdfPTable table4 = new PdfPTable(5); // 2 columns.
            table4.setWidthPercentage(100);

            PdfPCell cell54 = new PdfPCell(new Paragraph("", font3));
            cell54.setBorder(PdfPCell.NO_BORDER);
            cell54.setColspan(3);
            table4.addCell(cell54);

            PdfPCell cell52 = new PdfPCell(new Paragraph("Net Pay", font5));
            cell52.setLeading(10f, 0f);
            // cell52.setBorder(PdfPCell.ALIGN_CENTER);
            cell52.setHorizontalAlignment(Element.ALIGN_LEFT);
            cell52.setVerticalAlignment(Element.ALIGN_CENTER);

            cell52.setPadding(6f);
            cell52.setBorderWidth(1f);
            cell52.setBackgroundColor(myColor);
            table4.addCell(cell52);

            PdfPCell cell53 = new PdfPCell(new Paragraph("" + (a - b), font6));
            cell53.setLeading(10f, 0f);
            cell53.setPadding(6f);
            cell53.setHorizontalAlignment(Element.ALIGN_CENTER);
            cell53.setVerticalAlignment(Element.ALIGN_CENTER);
            cell53.setBorderWidth(1f);

            table4.addCell(cell53);

            document.add(table4);

            // step 4
            // document.add(new Paragraph(String.format(
            //         "You have submitted the following text using the %s method:%s",
            //        request.getMethod(),uname)));
            //   document.add(new Paragraph(text));
            // step 5
            document.close();

            // setting some response headers
            response.setHeader("Expires", "0");
            response.setHeader("Cache-Control", "must-revalidate, post-check=0, pre-check=0");
            response.setHeader("Pragma", "public");

            // the contentlength
            response.setContentLength(baos.size());
            // write ByteArrayOutputStream to the ServletOutputStream
            OutputStream os = response.getOutputStream();
            baos.writeTo(os);
            os.flush();
            os.close();
        } else {
            response.sendRedirect("index.jsp?id=Your session may be expired. You have to login first");

        }
    } catch (Exception e) {
        //       throw new IOException(e.getMessage());
        System.out.println(e);
        System.out.println("sssssssssssssssssss");

    }
}

From source file:generatereportbyaccz.java

/**
 * Processes requests for both HTTP <code>GET</code> and <code>POST</code>
 * methods./*from   w  w  w.j a v  a  2s  .  c  o m*/
 *
 * @param request servlet request
 * @param response servlet response
 * @throws ServletException if a servlet-specific error occurs
 * @throws IOException if an I/O error occurs
 */
protected void processRequest(HttpServletRequest request, HttpServletResponse response)
        throws ServletException, IOException, ClassNotFoundException {
    // setting the content type
    response.setContentType("application/pdf");
    try {
        HttpSession session = request.getSession();
        if (session.getAttribute("username") != null) {
            // Get the text that will be added to the PDF

            String month = request.getParameter("month");
            String year = request.getParameter("year");
            //String id=request.getParameter("empid");
            //  System.out.println(id);
            //   String text = request.getParameter("text");
            //  if (text == null || text.trim().length() == 0) {
            //       text = "You didn't enter any text.";
            //  }
            //String id="Ultimate01";    
            Class.forName("com.mysql.jdbc.Driver").newInstance();

            Connection con = DriverManager.getConnection("jdbc:mysql://localhost:3306/payroll123", "root", "");

            PreparedStatement ps = con
                    .prepareStatement("SELECT SUM(basicsalary) as sum1 FROM payslip where month=? and year=?");
            ps.setString(1, month);
            ps.setString(2, year);
            System.out.println("hey1");
            PreparedStatement ps1 = con.prepareStatement(
                    "SELECT COUNT(DISTINCT employeeid) as emps FROM payslip where month=? and year=?");
            ps1.setString(1, month);
            ps1.setString(2, year);
            System.out.println("hey1");

            ResultSet rs = ps.executeQuery();
            //System.out.println(rs.getInt(1));

            rs.next();
            //             System.out.println(rs.getInt("sum1"));
            ResultSet rs1 = ps1.executeQuery();
            rs1.next();
            if (rs.getFloat("sum1") == 0.0 && rs1.getFloat("emps") == 0.0) {
                response.sendRedirect("generatereportbyaccz.jsp?id=Report of " + month + "/" + year
                        + " is not generated OR Record of this Report is not available in our Database");
            }
            // step 1
            Float[] val = new Float[9];
            val[0] = rs.getFloat("sum1");
            val[1] = 6000.00f * rs1.getFloat("emps");
            val[2] = 1000.00f * rs1.getFloat("emps");
            val[3] = 1000.00f * rs1.getFloat("emps");
            val[4] = val[0] / 2;
            val[5] = 1000.00f * rs1.getFloat("emps");
            val[6] = val[4];
            val[7] = val[0] * 12 / 100;
            val[8] = 0.00f;
            if ((val[0] + val[4] + val[6]) * 12 > 250000.00f) {
                val[8] = (val[0] + val[4] + val[6]) / 10;
            }

            //System.out.println("sssssssssssssssssss");

            Document document = new Document();
            // step 2
            ByteArrayOutputStream baos = new ByteArrayOutputStream();
            PdfWriter.getInstance(document, baos);

            Font font0 = new Font(Font.FontFamily.TIMES_ROMAN, 11);
            Font font1 = new Font(Font.FontFamily.HELVETICA, 11, Font.BOLD);
            Font font2 = new Font(Font.FontFamily.HELVETICA, 18, Font.BOLD);
            Font font3 = new Font(Font.FontFamily.HELVETICA, 9, Font.BOLD);
            Font font4 = new Font(Font.FontFamily.HELVETICA, 10);
            Font font5 = new Font(Font.FontFamily.HELVETICA, 12, Font.BOLD);
            Font font6 = new Font(Font.FontFamily.HELVETICA, 12);

            //font1.setColor(BaseColor.WHITE);
            BaseColor myColor = WebColors.getRGBColor("#F78181");
            BaseColor myColor1 = WebColors.getRGBColor("#FAFAFA");

            //step 3
            document.open();
            // step 3.5
            PdfPTable table1 = new PdfPTable(3); // 1 columns.
            // table1.setWidthPercentage(75);

            PdfPCell cell00 = new PdfPCell(new Paragraph("Monthly Payroll Summary\nFEB-2015", font2));
            cell00.setBorder(PdfPCell.NO_BORDER);
            cell00.setPaddingTop(18);
            cell00.setColspan(2);

            Image image = Image.getInstance("cc.jpg");
            PdfPCell cell0 = new PdfPCell(image, true);
            cell0.setBorder(PdfPCell.NO_BORDER);

            // cell0.setHorizontalAlignment(Element.ALIGN_RIGHT);
            //PdfPCell cell1 = new PdfPCell(new Paragraph("Mr. NILESH POPATBHAI LATHIYA"));
            table1.addCell(cell00);
            //          table1.addCell(cell0);
            table1.addCell(cell0);
            //  table1.addCell(cell1);
            //            table.addCell(cell2);
            //          table.addCell(cell3);
            table1.setWidthPercentage(100);
            table1.setSpacingAfter(8f);
            //table1.setSpacingBefore(20f);

            //table1.setSpacingAfter(10f);

            document.add(table1);
            //  table1.setWidthPercentage(100);
            PdfPTable table21 = new PdfPTable(2); // 3 columns.
            table21.setWidthPercentage(100);

            PdfPCell cell151 = new PdfPCell(new Paragraph("Total Number of Employees", font3));
            //cell15.setLeading(10f, 0f);
            cell151.setPadding(3);
            cell151.setBorderWidth(1f);
            cell151.setBackgroundColor(myColor1);

            PdfPCell cell161 = new PdfPCell(new Paragraph(Integer.toString(rs1.getInt("emps")), font4));
            //  cell16.setLeading(10f, 0f);
            cell161.setPadding(3);
            cell161.setBorderWidth(1f);
            cell161.setBackgroundColor(myColor1);

            table21.addCell(cell151);
            table21.addCell(cell161);

            table21.setSpacingAfter(12f);

            document.add(table21);

            PdfPTable table2 = new PdfPTable(2); // 3 columns.

            table2.setWidthPercentage(100);

            PdfPCell cell15 = new PdfPCell(new Paragraph("Total Basic Salary", font3));
            //cell15.setLeading(10f, 0f);
            cell15.setPadding(3);
            cell15.setBorderWidth(1f);
            cell15.setBackgroundColor(myColor1);

            PdfPCell cell16 = new PdfPCell(new Paragraph(Float.toString(val[0]), font4));
            //  cell16.setLeading(10f, 0f);
            cell16.setPadding(3);
            cell16.setBorderWidth(1f);
            cell16.setBackgroundColor(myColor1);

            PdfPCell cell17 = new PdfPCell(new Paragraph("Total House Rent Allowance", font3));
            //cell17.setLeading(10f, 0f);
            cell17.setPadding(3);
            cell17.setBorderWidth(1f);
            cell17.setBackgroundColor(myColor1);
            PdfPCell cell18 = new PdfPCell(new Paragraph(Float.toString(val[1]), font4));
            //cell18.setLeading(10f, 0f);
            cell18.setPadding(3);
            cell18.setBorderWidth(1f);
            cell18.setBackgroundColor(myColor1);
            PdfPCell cell19 = new PdfPCell(new Paragraph("Total Medical Allowance", font3));
            //cell19.setLeading(10f, 0f);
            cell19.setPadding(3);
            cell19.setBorderWidth(1f);
            cell19.setBackgroundColor(myColor1);
            PdfPCell cell20 = new PdfPCell(new Paragraph(Float.toString(val[2]), font4));
            //cell20.setLeading(10f, 0f);
            cell20.setPadding(3);
            cell20.setBorderWidth(1f);
            cell20.setBackgroundColor(myColor1);

            table2.addCell(cell15);
            table2.addCell(cell16);
            table2.addCell(cell17);
            table2.addCell(cell18);
            table2.addCell(cell19);
            table2.addCell(cell20);

            PdfPCell cell21 = new PdfPCell(new Paragraph("Total Travelling Allowance", font3));
            //cell21.setLeading(10f, 0f);
            cell21.setPadding(3);
            cell21.setBorderWidth(1f);
            cell21.setBackgroundColor(myColor1);
            PdfPCell cell22 = new PdfPCell(new Paragraph(Float.toString(val[3]), font4));
            //  cell22.setLeading(10f, 0f);
            cell22.setPadding(3);
            cell22.setBorderWidth(1f);
            cell22.setBackgroundColor(myColor1);
            PdfPCell cell23 = new PdfPCell(new Paragraph("Total Personal Allowance", font3));
            //cell23.setLeading(10f, 0f);
            cell23.setPadding(3);
            cell23.setBorderWidth(1f);
            cell23.setBackgroundColor(myColor1);

            PdfPCell cell24 = new PdfPCell(new Paragraph(Float.toString(val[4]), font4));
            //cell24.setLeading(10f, 0f);
            cell24.setPadding(3);
            cell24.setBorderWidth(1f);
            cell24.setBackgroundColor(myColor1);
            PdfPCell cell25 = new PdfPCell(new Paragraph("Total City Allowance", font3));
            //cell25.setLeading(10f, 0f);
            cell25.setPadding(3);
            cell25.setBorderWidth(1f);
            cell25.setBackgroundColor(myColor1);
            PdfPCell cell26 = new PdfPCell(new Paragraph(Float.toString(val[5]), font4));
            //cell26.setLeading(10f, 0f);
            cell26.setPadding(3);
            cell26.setBorderWidth(1f);
            cell26.setBackgroundColor(myColor1);

            table2.addCell(cell21);
            table2.addCell(cell22);
            table2.addCell(cell23);
            table2.addCell(cell24);
            table2.addCell(cell25);
            table2.addCell(cell26);

            PdfPCell cell27 = new PdfPCell(new Paragraph("Total Performance Pay", font3));
            //cell27.setLeading(10f, 0f);
            cell27.setPadding(3);
            cell27.setBorderWidth(1f);
            cell27.setBackgroundColor(myColor1);
            PdfPCell cell28 = new PdfPCell(new Paragraph(Float.toString(val[6]), font4));
            //  cell28.setLeading(10f, 0f);
            cell28.setPadding(3);
            cell28.setBorderWidth(1f);
            cell28.setBackgroundColor(myColor1);

            table2.addCell(cell27);
            table2.addCell(cell28);

            table2.setSpacingAfter(12f);

            document.add(table2);

            PdfPTable table3 = new PdfPTable(2); // 3 columns.
            table3.setWidthPercentage(100);

            PdfPCell cell271 = new PdfPCell(new Paragraph("Final Total amount paid by company", font3));
            //cell27.setLeading(10f, 0f);
            cell271.setPadding(3);
            cell271.setBorderWidth(1f);
            cell271.setBackgroundColor(myColor1);
            PdfPCell cell281 = new PdfPCell(new Paragraph(Float.toString(val[6]), font4));
            //  cell28.setLeading(10f, 0f);
            cell281.setPadding(3);
            cell281.setBorderWidth(1f);
            cell281.setBackgroundColor(myColor1);

            PdfPCell cell29 = new PdfPCell(new Paragraph("Total Provident Fund Collected", font3));
            //cell29.setLeading(10f, 0f);
            cell29.setPadding(3);
            cell29.setBorderWidth(1f);
            cell29.setBackgroundColor(myColor1);
            PdfPCell cell30 = new PdfPCell(new Paragraph(Float.toString(val[7]), font4));
            //cell30.setLeading(10f, 0f);
            cell30.setPadding(3);
            cell30.setBorderWidth(1f);
            cell30.setBackgroundColor(myColor1);
            PdfPCell cell31 = new PdfPCell(new Paragraph("Total Professional Tax Collected", font3));
            //cell31.setLeading(10f, 0f);
            cell31.setPadding(3);
            cell31.setBorderWidth(1f);
            cell31.setBackgroundColor(myColor1);
            PdfPCell cell32 = new PdfPCell(new Paragraph(Float.toString(val[8]), font4));
            //cell32.setLeading(10f, 0f);
            cell32.setPadding(3);
            cell32.setBorderWidth(1f);
            cell32.setBackgroundColor(myColor1);

            table3.addCell(cell271);
            table3.addCell(cell281);
            table3.addCell(cell29);
            table3.addCell(cell30);
            table3.addCell(cell31);
            table3.addCell(cell32);

            table3.setSpacingAfter(12f);

            document.add(table3);
            /*  PdfPCell cell33 = new PdfPCell(new Paragraph("PAN",font3));
              //cell33.setLeading(10f, 0f);
              cell33.setPadding(3);
              cell33.setBorderWidth(1f);
              cell33.setBackgroundColor(myColor1);
              PdfPCell cell34 = new PdfPCell(new Paragraph("XXXXXXX792E",font4));
            //  cell34.setLeading(10f, 0f);
              cell34.setPadding(3);
              cell34.setBorderWidth(1f);
              cell34.setBackgroundColor(myColor1);
              PdfPCell cell35 = new PdfPCell(new Paragraph("Leave Balance",font3));
              //cell35.setLeading(10f, 0f);
              cell35.setPadding(3);
              cell35.setBorderWidth(1f);
              cell35.setBackgroundColor(myColor1);
              PdfPCell cell36 = new PdfPCell(new Paragraph("EL X SL X CL X",font4));
              //cell36.setLeading(10f, 0f);
              cell36.setPadding(3);
              cell36.setBorderWidth(1f);
              cell36.setBackgroundColor(myColor1);
              PdfPCell cell37 = new PdfPCell(new Paragraph(" WON/SWON",font3));
              //cell37.setLeading(10f, 0f);
              cell37.setPadding(3);
              cell37.setBorderWidth(1f);
              cell37.setBackgroundColor(myColor1);
              PdfPCell cell38 = new PdfPCell(new Paragraph("2616141",font4));
              //cell38.setLeading(10f, 0f);
              cell38.setPadding(3);
              cell38.setBorderWidth(1f);
              cell38.setBackgroundColor(myColor1);
                      
              table2.addCell(cell33);
              table2.addCell(cell34);
              table2.addCell(cell35);
              table2.addCell(cell36);
              table2.addCell(cell37);
              table2.addCell(cell38);
             */

            /* 
             PdfPTable table3 = new PdfPTable(5); // 5 columns.
             table3.setWidthPercentage(100);
                    
             PdfPCell cell39 = new PdfPCell(new Paragraph("Earnings",font1));
             cell39.setLeading(10f, 0f);
             cell39.setPadding(4);
             cell39.setBorderWidth(1f);
             cell39.setBackgroundColor(myColor);
             PdfPCell cell40 = new PdfPCell(new Paragraph("Arrears (INR)",font1));
             cell40.setLeading(10f, 0f);
             cell40.setPadding(4);
             cell40.setBorderWidth(1f);
             cell40.setBackgroundColor(myColor);
             PdfPCell cell41 = new PdfPCell(new Paragraph("Current (INR)",font1));
             cell41.setLeading(10f, 0f);
             cell41.setPadding(4);
             cell41.setBorderWidth(1f);
             cell41.setBackgroundColor(myColor);
             PdfPCell cell42 = new PdfPCell(new Paragraph("Deductions",font1));
             cell42.setLeading(10f, 0f);
             cell42.setPadding(4);
             cell42.setBorderWidth(1f);
             cell42.setBackgroundColor(myColor);
             PdfPCell cell43 = new PdfPCell(new Paragraph("Amount (INR)",font1));
             cell43.setLeading(10f, 0f);
             cell43.setPadding(4);
             cell43.setBorderWidth(1f);
             cell43.setBackgroundColor(myColor);
                     
             table3.addCell(cell39);
             table3.addCell(cell40);
             table3.addCell(cell41);
             table3.addCell(cell42);
             table3.addCell(cell43);
                     
             String[] sal = new String[9];
             sal[0]="Basic Salary";
             sal[1]="House Rent Allowance";
             sal[2]="Medical Allowance";
             sal[3]="Travelling Allowance";
             sal[4]="Personal Allowance";
             sal[5]="City Allowance";
             sal[6]="Performance Pay";
             sal[7]="Provident Fund";
             sal[8]="Professional Tax";
                     
             Float[] val = new Float[9];
             val[0]=rs1.getFloat(4);
             val[1]=6000.00f;
             val[2]=1000.00f;
             val[3]=1000.00f;
             val[4]=val[0]/2;
             val[5]=1000.00f;
             val[6]=val[4];
             val[7]=val[0]*12/100;
             val[8]=0.00f;
             if((val[0]+val[4]+val[6])*12>250000.00f)
             {
                 val[8]=(val[0]+val[4]+val[6])/10;
             }
                     
                     
                     
             for(int i=0;i<7;i++)
             {
              PdfPCell cell44 = new PdfPCell(new Paragraph(sal[i],font3));
             //cell27.setLeading(10f, 0f);
             cell44.setPadding(3);
             cell44.setBorderWidth(1f);
             cell44.setBackgroundColor(myColor1);
             PdfPCell cell45 = new PdfPCell(new Paragraph("",font4));
            //  cell45.setLeading(10f, 0f);
             cell45.setPadding(3);
             cell45.setBorderWidth(1f);
             cell45.setBackgroundColor(myColor1);
             PdfPCell cell46 = new PdfPCell(new Paragraph(val[i].toString(),font3));
             //cell46.setLeading(10f, 0f);
             cell46.setHorizontalAlignment(Element.ALIGN_RIGHT);
             cell46.setPadding(3);
             cell46.setBorderWidth(1f);
             cell46.setBackgroundColor(myColor1);
                         
             table3.addCell(cell44);
             table3.addCell(cell45);
             table3.addCell(cell46);
                     
                     
             if(i==0 || i==1) {       
             PdfPCell cell47 = new PdfPCell(new Paragraph(sal[7+i],font4));
             //cell47.setLeading(10f, 0f);
             cell47.setPadding(3);
             cell47.setBorderWidth(1f);
             cell47.setBackgroundColor(myColor1);
             table3.addCell(cell47);
             PdfPCell cell48 = new PdfPCell(new Paragraph(val[i+7].toString(),font3));
             //cell48.setLeading(10f, 0f);
             cell48.setHorizontalAlignment(Element.ALIGN_RIGHT);
             cell48.setPadding(3);
             cell48.setBorderWidth(1f);
             cell48.setBackgroundColor(myColor1);
             table3.addCell(cell48);
             }
             else
             {
             PdfPCell cell47 = new PdfPCell(new Paragraph("",font4));
             cell47.setBorder(PdfPCell.NO_BORDER);
             cell47.setBorderWidthRight (1f);
             cell47.setColspan(2);
             table3.addCell(cell47);
             }
                        
             }
                     
             PdfPCell cell48 = new PdfPCell(new Paragraph("",font4));
             //cell48.setBorder(PdfPCell.NO_BORDER);
             cell48.setColspan(3);
             table3.addCell(cell48);
                     
             PdfPCell cell49 = new PdfPCell(new Paragraph("",font4));
             //cell49.setBorder(PdfPCell.NO_BORDER);
             cell49.setColspan(2);
             table3.addCell(cell49);
             table3.addCell(cell48);
             table3.addCell(cell49);
             table3.addCell(cell48);
             table3.addCell(cell49);
             table3.addCell(cell48);
             table3.addCell(cell49);
                    
                     
             PdfPCell cell50 = new PdfPCell(new Paragraph("Total Earnings (Current + Arrears)",font3));
             //cell27.setLeading(10f, 0f);
             cell50.setColspan(2);
             cell50.setPadding(3);
             cell50.setBorderWidth(1f);
             cell50.setBackgroundColor(myColor1);
             table3.addCell(cell50);
                     
             float a = 0.0f;
            for(int i=0;i<7;i++)
            {a+=val[i];}
             PdfPCell cell55 = new PdfPCell(new Paragraph(Float.toString(a),font3));
             //cell27.setLeading(10f, 0f);
             cell55.setPadding(3);
             cell55.setHorizontalAlignment(Element.ALIGN_RIGHT);
             cell55.setBorderWidth(1f);
             cell55.setBackgroundColor(myColor1);
             table3.addCell(cell55);
                     
                     
             PdfPCell cell51 = new PdfPCell(new Paragraph("Total Deductions",font3));
             //cell27.setLeading(10f, 0f);
             //cell51.setColspan(3);
             cell51.setPadding(3);
             cell51.setBorderWidth(1f);
             cell51.setBackgroundColor(myColor1);
             table3.addCell(cell51);
                     
             float b = val[7]+val[8];
                    
             PdfPCell cell56 = new PdfPCell(new Paragraph(Float.toString(b),font3));
             //cell27.setLeading(10f, 0f);
             //cell56.setColspan(3);
             cell56.setPadding(3);
             cell56.setHorizontalAlignment(Element.ALIGN_RIGHT);
             cell56.setBorderWidth(1f);
             cell56.setBackgroundColor(myColor1);
             table3.addCell(cell56);
                     
             table3.setSpacingAfter(12f);
                    
             document.add(table3);
                    
             PdfPTable table4 = new PdfPTable(5); // 2 columns.
             table4.setWidthPercentage(100);
                     
             PdfPCell cell54 = new PdfPCell(new Paragraph("",font3));
             cell54.setBorder(PdfPCell.NO_BORDER);
             cell54.setColspan(3);
             table4.addCell(cell54);
                     
             PdfPCell cell52 = new PdfPCell(new Paragraph("Net Pay",font5));
            cell52.setLeading(10f, 0f);
            // cell52.setBorder(PdfPCell.ALIGN_CENTER);
             cell52.setHorizontalAlignment(Element.ALIGN_LEFT);
             cell52.setVerticalAlignment(Element.ALIGN_CENTER);
                     
             cell52.setPadding(6f);
             cell52.setBorderWidth(1f);
             cell52.setBackgroundColor(myColor);
             table4.addCell(cell52);
                     
             PdfPCell cell53 = new PdfPCell(new Paragraph(""+(a-b),font6));
             cell53.setLeading(10f, 0f);
             cell53.setPadding(6f);
                  cell53.setHorizontalAlignment(Element.ALIGN_CENTER);
             cell53.setVerticalAlignment(Element.ALIGN_CENTER);
            cell53.setBorderWidth(1f);
                     
             table4.addCell(cell53);
                     
             document.add(table4);
                    
            */

            // step 4
            // document.add(new Paragraph(String.format(
            //         "You have submitted the following text using the %s method:%s",
            //        request.getMethod(),uname)));
            //   document.add(new Paragraph(text));
            // step 5
            document.close();

            // setting some response headers
            response.setHeader("Expires", "0");
            response.setHeader("Cache-Control", "must-revalidate, post-check=0, pre-check=0");
            response.setHeader("Pragma", "public");

            // the contentlength
            response.setContentLength(baos.size());
            // write ByteArrayOutputStream to the ServletOutputStream
            OutputStream os = response.getOutputStream();
            baos.writeTo(os);
            os.flush();
            os.close();
        } else {
            response.sendRedirect("index.jsp?id=Your session may be expired. You have to login first");

        }
    } catch (Exception e) {
        //       throw new IOException(e.getMessage());
        System.out.println(e);
        System.out.println("sssssssssssssssssss");

    }
}

From source file:com.asae.controllers.BeanGestionRutinas.java

public void generarPdf() {
    Document document = new Document();
    try {/*  w ww  .j a  v  a  2 s  .co m*/
        File file = File.createTempFile("rutina-", ".pdf", new File("/var/webapp/pdf"));
        pdfFileName = file.getName();

        PdfWriter writer = PdfWriter.getInstance(document, new FileOutputStream(file));
        document.open();
        Font bold = new Font(Font.FontFamily.HELVETICA, 12f, Font.BOLD);
        URL url = FacesContext.getCurrentInstance().getExternalContext()
                .getResource("/resources/img/logo-unicauca-negro.png");
        Image imgLogoUnicauca = Image.getInstance(url);
        imgLogoUnicauca.scaleAbsolute(118f, 131f);

        PdfPTable tableEncabezado = new PdfPTable(2);
        tableEncabezado.getDefaultCell().setBorder(Rectangle.NO_BORDER);
        tableEncabezado.setWidthPercentage(100);
        tableEncabezado.setSpacingAfter(5);
        PdfPCell cell1 = new PdfPCell(imgLogoUnicauca);
        cell1.setBorder(Rectangle.NO_BORDER);
        PdfPCell cell2 = new PdfPCell(new Paragraph("Vicerrectoria Administrativa"));
        cell2.setBorder(Rectangle.NO_BORDER);
        cell2.setVerticalAlignment(Element.ALIGN_BOTTOM);
        cell2.setHorizontalAlignment(Element.ALIGN_RIGHT);
        PdfPCell cell3 = new PdfPCell(new Paragraph("Universidad del Cauca", bold));
        cell3.setBorder(Rectangle.NO_BORDER);
        PdfPCell cell4 = new PdfPCell(new Paragraph("Gimnasio y Actividad Fsica", bold));
        cell4.setBorder(Rectangle.NO_BORDER);
        cell4.setHorizontalAlignment(Element.ALIGN_RIGHT);
        tableEncabezado.addCell(cell1);
        tableEncabezado.addCell(cell2);
        tableEncabezado.addCell(cell3);
        tableEncabezado.addCell(cell4);

        PdfPTable tableDatosUsuario = new PdfPTable(3);
        tableDatosUsuario.getDefaultCell().setBorder(Rectangle.NO_BORDER);
        tableDatosUsuario.setWidthPercentage(100);
        tableDatosUsuario.setSpacingBefore(20);
        PdfPCell cell5 = new PdfPCell(new Paragraph("Nombre: " + rutinaVisualizar.getIdusuario().getFisrtname()
                + " " + rutinaVisualizar.getIdusuario().getSecondname() + " "
                + rutinaVisualizar.getIdusuario().getFirstlastname() + " "
                + rutinaVisualizar.getIdusuario().getSecondlastname()));
        cell5.setBorder(Rectangle.NO_BORDER);
        PdfPCell cell6 = new PdfPCell();
        cell6.setBorder(Rectangle.NO_BORDER);
        PdfPCell cell7 = new PdfPCell();
        cell7.setBorder(Rectangle.NO_BORDER);

        tableDatosUsuario.addCell(cell5);
        tableDatosUsuario.addCell(cell6);
        tableDatosUsuario.addCell(cell7);

        PdfPTable tableFechas = new PdfPTable(3);
        tableFechas.getDefaultCell().setBorder(Rectangle.NO_BORDER);
        tableFechas.setWidthPercentage(100);
        tableFechas.setSpacingBefore(10);
        PdfPCell cell8 = new PdfPCell(
                new Paragraph("Fecha de inicio: " + getMyFormattedDate(rutinaVisualizar.getFechaInicio())));
        cell8.setBorder(Rectangle.NO_BORDER);
        PdfPCell cell9 = new PdfPCell(
                new Paragraph("Fecha de fin: " + getMyFormattedDate(rutinaVisualizar.getFechaFin())));
        cell9.setBorder(Rectangle.NO_BORDER);
        PdfPCell cell10 = new PdfPCell();
        cell10.setBorder(Rectangle.NO_BORDER);

        tableFechas.addCell(cell8);
        tableFechas.addCell(cell9);
        tableFechas.addCell(cell10);

        PdfPTable tableMedidas = new PdfPTable(4);
        tableMedidas.getDefaultCell().setBorder(Rectangle.NO_BORDER);
        tableMedidas.setWidthPercentage(100);
        tableMedidas.setSpacingBefore(10);

        Usuario usuAux = rutinaVisualizar.getIdusuario();
        List<Evaluacion> lstEvalAux = usuAux.getEvaluacionList();
        Evaluacion evalAux;
        double peso = 0;
        if (lstEvalAux.size() > 0) {
            evalAux = lstEvalAux.get(lstEvalAux.size() - 1);
            peso = evalAux.getPeso().doubleValue();
        }

        double estatura = 0;
        MedidasGenerales medGenAux = usuAux.getMedidasGenerales();
        if (medGenAux != null) {
            estatura = medGenAux.getEstatura().doubleValue();
        }

        PdfPCell cell11 = new PdfPCell(new Paragraph("Peso: " + peso));
        cell11.setBorder(Rectangle.NO_BORDER);
        PdfPCell cell12 = new PdfPCell(new Paragraph("Talla: " + estatura));
        cell12.setBorder(Rectangle.NO_BORDER);

        double imc = 0;
        if (peso != 0 && estatura != 0) {
            imc = peso / Math.pow(estatura, 2);
        }

        PdfPCell cell13 = new PdfPCell(new Paragraph("I.M.C: " + imc));
        cell13.setBorder(Rectangle.NO_BORDER);
        PdfPCell cell14 = new PdfPCell(new Paragraph("Rutina: " + rutinaVisualizar.getCodigoRutina()));
        cell14.setBorder(Rectangle.NO_BORDER);

        tableMedidas.addCell(cell11);
        tableMedidas.addCell(cell12);
        tableMedidas.addCell(cell13);
        tableMedidas.addCell(cell14);

        PdfPTable tableDias = new PdfPTable(2);
        tableDias.getDefaultCell().setBorder(Rectangle.NO_BORDER);
        tableDias.setWidthPercentage(100);
        tableDias.setSpacingBefore(20);
        tableDias.setHorizontalAlignment(Element.ALIGN_LEFT);
        tableDias.setWidths(new int[] { 1, 9 });

        List<Dia> lstDiasPDF = rutinaVisualizar.getDiaList();

        PdfPCell cellCabezeraDia = new PdfPCell(new Paragraph("Da", bold));
        PdfPCell cellCabezeraDia2 = new PdfPCell();
        cellCabezeraDia2.setBorder(Rectangle.NO_BORDER);

        tableDias.addCell(cellCabezeraDia);
        tableDias.addCell(cellCabezeraDia2);

        for (Dia dia : lstDiasPDF) {
            PdfPCell cellDia = new PdfPCell(new Paragraph(dia.getNumDia().toString()));
            PdfPCell cellDia2 = new PdfPCell();
            cellDia2.setBorder(Rectangle.NO_BORDER);

            List<GrupoMuscular> lstGMuscularPDF = dia.getGrupoMuscularList();

            if (lstGMuscularPDF.size() > 0) {
                PdfPTable tableGMuscular = new PdfPTable(2);
                tableGMuscular.getDefaultCell().setBorder(Rectangle.NO_BORDER);
                tableGMuscular.setWidthPercentage(100);
                tableGMuscular.setHorizontalAlignment(Element.ALIGN_LEFT);
                tableGMuscular.setWidths(new int[] { 1, 6 });

                PdfPCell cellCabezeraGMuscular = new PdfPCell(new Paragraph("Grupo Muscular", bold));
                cellCabezeraGMuscular.setBorder(Rectangle.BOTTOM | Rectangle.RIGHT | Rectangle.TOP);
                PdfPCell cellCabezeraGMuscular2 = new PdfPCell();
                cellCabezeraGMuscular2.setBorder(Rectangle.NO_BORDER);
                tableGMuscular.addCell(cellCabezeraGMuscular);
                tableGMuscular.addCell(cellCabezeraGMuscular2);

                int aux = 1;
                for (GrupoMuscular gMuscularFor : lstGMuscularPDF) {
                    PdfPCell cellGMuscular = new PdfPCell(
                            new Paragraph(gMuscularFor.getIdgrupoMuscularGeneral().getNombre()));
                    cellGMuscular.setBorder(Rectangle.BOTTOM | Rectangle.RIGHT);
                    PdfPCell cellGMuscular2 = new PdfPCell();
                    cellGMuscular2.setBorder(Rectangle.NO_BORDER);

                    List<EjercicioGm> lstEjerciciosGMuscularPDF = gMuscularFor.getEjercicioGmList();
                    BaseColor myColor = WebColors.getRGBColor("#CCEEFF");
                    if (lstEjerciciosGMuscularPDF.size() > 0) {
                        PdfPTable tableEjercicioGMsucular = new PdfPTable(5);
                        tableEjercicioGMsucular.getDefaultCell().setBorder(Rectangle.NO_BORDER);
                        tableEjercicioGMsucular.setWidthPercentage(100);
                        tableEjercicioGMsucular.setHorizontalAlignment(Element.ALIGN_LEFT);

                        PdfPCell cellCabezeraEjercicioGM = new PdfPCell(new Paragraph("Ejercicio", bold));
                        cellCabezeraEjercicioGM.setBorder(Rectangle.BOTTOM | Rectangle.RIGHT | Rectangle.TOP);
                        cellCabezeraEjercicioGM.setLeading(20f, 0f);
                        cellCabezeraEjercicioGM.setBackgroundColor(myColor);
                        tableEjercicioGMsucular.addCell(cellCabezeraEjercicioGM);

                        PdfPCell cellCabezeraEjercicioGM2 = new PdfPCell(new Paragraph("Series", bold));
                        cellCabezeraEjercicioGM2.setBorder(Rectangle.BOTTOM | Rectangle.RIGHT | Rectangle.TOP);
                        cellCabezeraEjercicioGM2.setLeading(20f, 0f);
                        cellCabezeraEjercicioGM2.setBackgroundColor(myColor);
                        tableEjercicioGMsucular.addCell(cellCabezeraEjercicioGM2);

                        PdfPCell cellCabezeraEjercicioGM3 = new PdfPCell(new Paragraph("Repeticiones", bold));
                        cellCabezeraEjercicioGM3.setBorder(Rectangle.BOTTOM | Rectangle.RIGHT | Rectangle.TOP);
                        cellCabezeraEjercicioGM3.setLeading(20f, 0f);
                        cellCabezeraEjercicioGM3.setBackgroundColor(myColor);
                        tableEjercicioGMsucular.addCell(cellCabezeraEjercicioGM3);

                        PdfPCell cellCabezeraEjercicioGM4 = new PdfPCell(new Paragraph("Receso", bold));
                        cellCabezeraEjercicioGM4.setBorder(Rectangle.BOTTOM | Rectangle.RIGHT | Rectangle.TOP);
                        cellCabezeraEjercicioGM4.setLeading(20f, 0f);
                        cellCabezeraEjercicioGM4.setBackgroundColor(myColor);
                        tableEjercicioGMsucular.addCell(cellCabezeraEjercicioGM4);

                        PdfPCell cellCabezeraEjercicioGM5 = new PdfPCell(new Paragraph("Peso", bold));
                        cellCabezeraEjercicioGM5.setBorder(Rectangle.BOTTOM | Rectangle.RIGHT | Rectangle.TOP);
                        cellCabezeraEjercicioGM5.setLeading(20f, 0f);
                        cellCabezeraEjercicioGM5.setBackgroundColor(myColor);
                        tableEjercicioGMsucular.addCell(cellCabezeraEjercicioGM5);

                        int aux2 = 1;
                        for (EjercicioGm ejercicioGm : lstEjerciciosGMuscularPDF) {
                            PdfPCell cellEjercicioGM = new PdfPCell(
                                    new Paragraph(ejercicioGm.getEjercicio().getNombre()));
                            cellEjercicioGM.setBorder(Rectangle.BOTTOM | Rectangle.RIGHT);
                            cellEjercicioGM.setLeading(20f, 0f);

                            PdfPCell cellEjercicioGM2 = new PdfPCell(
                                    new Paragraph(ejercicioGm.getNumeroSeries().toString()));
                            cellEjercicioGM2.setBorder(Rectangle.BOTTOM | Rectangle.RIGHT);
                            cellEjercicioGM2.setLeading(20f, 0f);

                            PdfPCell cellEjercicioGM3 = new PdfPCell(
                                    new Paragraph(ejercicioGm.getRepeticiones().toString()));
                            cellEjercicioGM3.setBorder(Rectangle.BOTTOM | Rectangle.RIGHT);
                            cellEjercicioGM3.setLeading(20f, 0f);

                            PdfPCell cellEjercicioGM4 = new PdfPCell(
                                    new Paragraph(ejercicioGm.getReceso().toString()));
                            cellEjercicioGM4.setBorder(Rectangle.BOTTOM | Rectangle.RIGHT);
                            cellEjercicioGM4.setLeading(20f, 0f);

                            PdfPCell cellEjercicioGM5 = new PdfPCell(
                                    new Paragraph(ejercicioGm.getPeso().toString()));
                            cellEjercicioGM5.setBorder(Rectangle.BOTTOM | Rectangle.RIGHT);
                            cellEjercicioGM5.setLeading(20f, 0f);

                            if (aux2 % 2 == 0) {
                                cellEjercicioGM.setBackgroundColor(myColor);
                                cellEjercicioGM2.setBackgroundColor(myColor);
                                cellEjercicioGM3.setBackgroundColor(myColor);
                                cellEjercicioGM4.setBackgroundColor(myColor);
                                cellEjercicioGM5.setBackgroundColor(myColor);
                            }

                            tableEjercicioGMsucular.addCell(cellEjercicioGM);
                            tableEjercicioGMsucular.addCell(cellEjercicioGM2);
                            tableEjercicioGMsucular.addCell(cellEjercicioGM3);
                            tableEjercicioGMsucular.addCell(cellEjercicioGM4);
                            tableEjercicioGMsucular.addCell(cellEjercicioGM5);
                            aux2++;
                        }
                        cellGMuscular2.addElement(tableEjercicioGMsucular);
                    }
                    tableGMuscular.addCell(cellGMuscular);
                    tableGMuscular.addCell(cellGMuscular2);
                    aux++;
                }
                cellDia2.addElement(tableGMuscular);
            }
            tableDias.addCell(cellDia);
            tableDias.addCell(cellDia2);
        }

        LineSeparator ls = new LineSeparator();
        document.add(tableEncabezado);
        document.add(ls);
        document.add(tableDatosUsuario);
        document.add(tableFechas);
        document.add(tableMedidas);
        document.add(tableDias);
        document.close();
    } catch (DocumentException | FileNotFoundException e) {
        e.printStackTrace();
    } catch (IOException ex) {
        Logger.getLogger(BeanGestionRutinas.class.getName()).log(Level.SEVERE, null, ex);
    }
}

From source file:com.mycom.products.mywebsite.backend.util.DownloadHandler.java

License:Open Source License

@RequestMapping(value = "/user/{id}", method = RequestMethod.GET)
protected final void downloadUserInformation(@PathVariable int id, HttpServletRequest request,
        final HttpServletResponse response) throws ServletException, BusinessException, DocumentException {
    UserBean user = userService.select(id, FetchMode.EAGER);
    if (user == null) {
        return;/*  w w  w  .  j a va  2  s. c  o m*/
    }
    Document document = new Document();
    document.setMargins(70, 70, 20, 20);

    try {
        response.setContentType("application/pdf");
        response.setHeader("Content-Disposition",
                "attachment; filename=\"" + user.getName() + "_profile.pdf\"");
        PdfWriter.getInstance(document, response.getOutputStream());
        document.open();
        Image profileImage = null;
        try {
            profileImage = Image.getInstance(user.getContent().getFilePath());
        } catch (Exception e) {
            // e.printStackTrace();
        }
        if (profileImage != null) {
            profileImage.setAlignment(Image.MIDDLE | Image.TEXTWRAP);
            profileImage.setBorder(Image.BOX);
            profileImage.setBorderWidth(5);
            BaseColor bgcolor = WebColors.getRGBColor("#E5E3E3");
            profileImage.setBorderColor(bgcolor);
            profileImage.scaleToFit(100, 100);
            document.add(profileImage);
        }
        document.add(Chunk.NEWLINE);
        document.add(Chunk.NEWLINE);

        // Adding Table Data
        PdfPTable table = new PdfPTable(2); // 2 columns.
        table.setWidthPercentage(100); // Width 100%
        table.setSpacingBefore(15f); // Space before table
        table.setSpacingAfter(15f); // Space after table

        // Set Column widths
        float[] columnWidths = { 1f, 2f, };
        table.setWidths(columnWidths);

        // Name
        setTableHeader("Name", table);
        setTableContent(user.getName(), table);

        // Gender
        setTableHeader("Gender", table);
        String gender = "Male";
        if (user.getGender() == Gender.FEMALE) {
            gender = "Female";
        }
        setTableContent(gender, table);

        // Age
        setTableHeader("Age", table);
        setTableContent("" + user.getAge(), table);

        // Date of Birth
        setTableHeader("DOB", table);
        DateTimeFormatter dateFormatter = DateTimeFormatter.ofPattern("dd/MM/yyyy");
        setTableContent(dateFormatter.format(user.getDob()), table);

        // Email
        setTableHeader("Email", table);
        setTableContent(user.getEmail(), table);

        // NRC
        setTableHeader("NRC", table);
        setTableContent(user.getNrc(), table);

        // Phone
        setTableHeader("Phone", table);
        setTableContent(user.getPhone(), table);

        // Roles
        String roleStr = "";
        List<RoleBean> roles = user.getRoles();
        if (roles != null && roles.size() > 0) {
            Iterator<RoleBean> itr = roles.iterator();
            while (itr.hasNext()) {
                RoleBean role = itr.next();
                roleStr += role.getName();
                if (itr.hasNext()) {
                    roleStr += ",";
                }
            }
        }
        setTableHeader("Role(s)", table);
        setTableContent(roleStr, table);

        // Address
        setTableHeader("Address", table);
        setTableContent(user.getAddress(), table);

        document.add(table);
        document.add(new Paragraph(new Date().toString()));

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

    }
    document.close();
}

From source file:com.mycom.products.mywebsite.backend.util.DownloadHandler.java

License:Open Source License

private void setTableHeader(String value, PdfPTable table) {
    PdfPCell cell = new PdfPCell(new Paragraph(value));
    cell.setBorderColor(BaseColor.GRAY);
    cell.setFixedHeight(25);//  w w w  . j  a v  a 2 s .  c  o m
    BaseColor myColor = WebColors.getRGBColor("#F7F7F7");
    cell.setBackgroundColor(myColor);
    cell.setPaddingLeft(10);
    cell.setHorizontalAlignment(Element.ALIGN_CENTER);
    cell.setVerticalAlignment(Element.ALIGN_MIDDLE);
    table.addCell(cell);

}

From source file:FormatoPDF.ClasesPDF.PDF1.java

public void CrearPDF1(String[][] tabla, String txt1, String txt2, String txt3, String txt4, String txt5,
            String txt6, JTable tabla2) {
        String[][] tabla1 = tabla;
        float[] medidas1 = { 8.5f, 9.0f, 7.5f, 3.5f, 4.5f, 4.0f };
        float[] medidas2 = { 7.5f, 3.5f, 7.0f, 5.5f, 4.5f, 4.5f, 4.5f };
        float[] medidas3 = { 6.5f, 20.5f };
        JFileChooser dlg = new JFileChooser();
        int option = dlg.showSaveDialog(dlg);
        if (option == JFileChooser.APPROVE_OPTION) {
            File f = dlg.getSelectedFile();
            String f1 = f.toString();
            try {
                BaseColor MiColor = WebColors.getRGBColor("#04B4AE");
                TablasPDF tab = new TablasPDF();
                ImagenHome img = new ImagenHome();
                Document document = new Document();
                PdfWriter writer = PdfWriter.getInstance(document, new FileOutputStream(f1 + ".pdf"));
                Paragraph saltolinea = new Paragraph();
                saltolinea.add("\n");
                document.open();//w w w .j a  va 2 s .c  o  m
                document.add(img.CrearImg());
                DatosEncabezado en = new DatosEncabezado();
                String[][] valores = new String[4][2];
                valores[0][0] = "Dependencia: ";
                valores[0][1] = txt1;
                valores[1][0] = "Expediente: ";
                valores[1][1] = txt2;
                valores[2][0] = "Sesin: ";
                valores[2][1] = txt3;
                valores[3][0] = "Fecha: ";
                valores[3][1] = txt4;
                en.Datos(valores, writer);

                document.add(saltolinea);
                document.add(saltolinea);
                document.add(saltolinea);
                document.add(saltolinea);
                document.add(saltolinea);
                document.add(saltolinea);
                document.add(saltolinea);
                document.add(saltolinea);
                document.add(saltolinea);
                document.add(saltolinea);
                boolean color = true;
                PdfPTable tabpdf1 = new PdfPTable(6);
                PdfPCell cell1 = new PdfPCell(
                        new Paragraph("Sesin:", FontFactory.getFont("arial", 10, Font.BOLD, BaseColor.BLACK)));
                PdfPCell cell11 = new PdfPCell(
                        new Paragraph(tabla1[0][1], FontFactory.getFont("arial", 10, Font.BOLD, BaseColor.BLACK)));
                cell1.setBackgroundColor(MiColor);
                tabpdf1.addCell(cell1);
                tabpdf1.addCell(cell11);
                PdfPCell cell2 = new PdfPCell(
                        new Paragraph("Fecha:", FontFactory.getFont("arial", 10, Font.BOLD, BaseColor.BLACK)));
                PdfPCell cell22 = new PdfPCell(
                        new Paragraph(tabla1[0][3], FontFactory.getFont("arial", 10, Font.BOLD, BaseColor.BLACK)));
                cell2.setBackgroundColor(MiColor);
                tabpdf1.addCell(cell2);
                tabpdf1.addCell(cell22);
                PdfPCell cell3 = new PdfPCell(
                        new Paragraph("Acuerdo:", FontFactory.getFont("arial", 10, Font.BOLD, BaseColor.BLACK)));
                PdfPCell cell33 = new PdfPCell(
                        new Paragraph(txt5, FontFactory.getFont("arial", 10, Font.BOLD, BaseColor.BLACK)));
                cell3.setBackgroundColor(MiColor);
                tabpdf1.addCell(cell3);
                tabpdf1.addCell(cell33);
                document.add(tab.DibujarTablaArre1(6, 6, tabla1, medidas1, color, tabpdf1, 1, ""));

                document.add(saltolinea);
                document.add(saltolinea);
                document.add(saltolinea);
                document.add(saltolinea);

                PdfPTable tabpdf2 = new PdfPTable(7);
                PdfPCell cell1tab2 = new PdfPCell(new Phrase("ESTUDIO DE MERCADO",
                        FontFactory.getFont("arial", 10, Font.BOLD, BaseColor.BLACK)));
                cell1tab2.setBackgroundColor(MiColor);
                cell1tab2.setMinimumHeight(30);
                cell1tab2.setHorizontalAlignment(Element.ALIGN_CENTER);
                cell1tab2.setColspan(7);
                cell1tab2.setRowspan(1);
                cell1tab2.setVerticalAlignment(Element.ALIGN_MIDDLE);
                tabpdf2.addCell(cell1tab2);

                PdfPCell cell2tab2 = new PdfPCell(new Phrase("Datos de la empresa ",
                        FontFactory.getFont("arial", 10, Font.BOLD, BaseColor.BLACK)));
                cell2tab2.setBackgroundColor(MiColor);
                cell2tab2.setHorizontalAlignment(Element.ALIGN_CENTER);
                cell2tab2.setColspan(4);
                cell2tab2.setRowspan(1);
                cell2tab2.setVerticalAlignment(Element.ALIGN_MIDDLE);
                tabpdf2.addCell(cell2tab2);

                PdfPCell cell3tab2 = new PdfPCell(new Phrase("Datos de cotizacin ",
                        FontFactory.getFont("arial", 10, Font.BOLD, BaseColor.BLACK)));
                cell3tab2.setBackgroundColor(MiColor);
                cell3tab2.setHorizontalAlignment(Element.ALIGN_CENTER);
                cell3tab2.setColspan(3);
                cell3tab2.setRowspan(1);
                cell3tab2.setVerticalAlignment(Element.ALIGN_MIDDLE);
                tabpdf2.addCell(cell3tab2);

                PdfPCell cell4tab2 = new PdfPCell(new Paragraph("Nombre, Denominacin o Razn Social",
                        FontFactory.getFont("arial", 10, Font.BOLD, BaseColor.BLACK)));
                cell4tab2.setBackgroundColor(MiColor);
                cell4tab2.setHorizontalAlignment(Element.ALIGN_CENTER);
                tabpdf2.addCell(cell4tab2);
                PdfPCell cell5tab2 = new PdfPCell(
                        new Paragraph("RFC", FontFactory.getFont("arial", 10, Font.BOLD, BaseColor.BLACK)));
                cell5tab2.setBackgroundColor(MiColor);
                cell5tab2.setHorizontalAlignment(Element.ALIGN_CENTER);
                tabpdf2.addCell(cell5tab2);
                PdfPCell cell6tab2 = new PdfPCell(new Paragraph("Representante Legal",
                        FontFactory.getFont("arial", 10, Font.BOLD, BaseColor.BLACK)));
                cell6tab2.setBackgroundColor(MiColor);
                cell6tab2.setHorizontalAlignment(Element.ALIGN_CENTER);
                tabpdf2.addCell(cell6tab2);
                PdfPCell cell7tab2 = new PdfPCell(new Paragraph("Domicilio Fiscal",
                        FontFactory.getFont("arial", 10, Font.BOLD, BaseColor.BLACK)));
                cell7tab2.setBackgroundColor(MiColor);
                cell7tab2.setHorizontalAlignment(Element.ALIGN_CENTER);
                tabpdf2.addCell(cell7tab2);
                PdfPCell cell8tab2 = new PdfPCell(
                        new Paragraph("Subtotal", FontFactory.getFont("arial", 10, Font.BOLD, BaseColor.BLACK)));
                cell8tab2.setBackgroundColor(MiColor);
                cell8tab2.setHorizontalAlignment(Element.ALIGN_CENTER);
                tabpdf2.addCell(cell8tab2);
                PdfPCell cell9tab2 = new PdfPCell(
                        new Paragraph("IVA", FontFactory.getFont("arial", 10, Font.BOLD, BaseColor.BLACK)));
                cell9tab2.setBackgroundColor(MiColor);
                cell9tab2.setHorizontalAlignment(Element.ALIGN_CENTER);
                tabpdf2.addCell(cell9tab2);
                PdfPCell cell10tab2 = new PdfPCell(
                        new Paragraph("TOTAL", FontFactory.getFont("arial", 10, Font.BOLD, BaseColor.BLACK)));
                cell10tab2.setBackgroundColor(MiColor);
                cell10tab2.setHorizontalAlignment(Element.ALIGN_CENTER);
                tabpdf2.addCell(cell10tab2);

                document.add(tab.DibujarTabla(7, 5, tabla2, medidas2, tabpdf2));
                document.add(saltolinea);
                document.add(saltolinea);
                document.add(saltolinea);
                document.add(saltolinea);

                PdfPTable tabpdf3 = new PdfPTable(2);
                PdfPCell cell1tab3 = new PdfPCell(
                        new Phrase("Observaciones:", FontFactory.getFont("arial", 10, Font.BOLD, BaseColor.BLACK)));
                cell1tab3.setBackgroundColor(MiColor);
                cell1tab3.setMinimumHeight(60);
                cell1tab3.setHorizontalAlignment(Element.ALIGN_CENTER);
                cell1tab3.setVerticalAlignment(Element.ALIGN_MIDDLE);
                tabpdf3.addCell(cell1tab3);

                PdfPCell cell2tab3 = new PdfPCell(
                        new Phrase(txt6, FontFactory.getFont("arial", 10, Font.BOLD, BaseColor.BLACK)));
                cell2tab3.setMinimumHeight(60);
                cell2tab3.setHorizontalAlignment(Element.ALIGN_CENTER);
                cell2tab3.setVerticalAlignment(Element.ALIGN_MIDDLE);
                tabpdf3.addCell(cell2tab3);
                tabpdf3.setWidths(medidas3);
                document.add(tabpdf3);

                document.close();
                JOptionPane.showMessageDialog(null, "El archivo se ha guardado", "Exito",
                        JOptionPane.INFORMATION_MESSAGE);

                File path = new File(f1 + ".pdf");
                Desktop.getDesktop().open(path);
            } catch (Exception e) {
                JOptionPane.showMessageDialog(null, "Error " + e, "Error", JOptionPane.ERROR_MESSAGE);
            }
        }
    }

From source file:FormatoPDF.ClasesPDF.PDF2.java

public void CrearPDF2(String[][] tabla, String txt1, String txt2, String txt3, String txt4, String txt5,
            String txt6, String txt7, JTable tabla2, String txt8, String txt9, JTable tabla3, String txt10) {
        String[][] tabla1 = tabla;
        float[] medidas1 = { 8.5f, 9.0f, 7.5f, 3.5f, 4.5f, 4.0f };
        float[] medidas2 = { 6.5f, 4.5f, 6.0f, 5.5f, 5.5f, 5.5f, 3.0f, 3.0f };
        float[] medidas3 = { 6.5f, 3.5f, 3.5f, 3.5f, 2.5f, 3.5f, 6.0f, 4.0f, 4.0f };
        float[] medidas4 = { 6.5f, 20.5f };
        JFileChooser dlg = new JFileChooser();
        int option = dlg.showSaveDialog(dlg);
        if (option == JFileChooser.APPROVE_OPTION) {
            File f = dlg.getSelectedFile();
            String f1 = f.toString();
            try {
                BaseColor MiColor = WebColors.getRGBColor("#04B4AE");
                TablasPDF tab = new TablasPDF();
                ImagenHome img = new ImagenHome();
                Document document = new Document();
                PdfWriter writer = PdfWriter.getInstance(document, new FileOutputStream(f1 + ".pdf"));
                Paragraph saltolinea = new Paragraph();
                saltolinea.add("\n");
                document.open();// w w  w  .  ja v  a  2s  .  co m
                document.add(img.CrearImg());
                DatosEncabezado en = new DatosEncabezado();
                String[][] valores = new String[4][2];
                valores[0][0] = "Dependencia: ";
                valores[0][1] = txt1;
                valores[1][0] = "Expediente: ";
                valores[1][1] = txt2;
                valores[2][0] = "Sesin: ";
                valores[2][1] = txt3;
                valores[3][0] = "Fecha: ";
                valores[3][1] = txt4;
                en.Datos(valores, writer);

                document.add(saltolinea);
                document.add(saltolinea);
                document.add(saltolinea);
                document.add(saltolinea);
                document.add(saltolinea);
                document.add(saltolinea);
                document.add(saltolinea);
                document.add(saltolinea);
                document.add(saltolinea);
                document.add(saltolinea);
                boolean color = true;
                PdfPTable tabpdf1 = new PdfPTable(6);
                PdfPCell cell1 = new PdfPCell(
                        new Paragraph("Sesin:", FontFactory.getFont("arial", 10, Font.BOLD, BaseColor.BLACK)));
                PdfPCell cell11 = new PdfPCell(
                        new Paragraph(tabla1[0][1], FontFactory.getFont("arial", 10, Font.BOLD, BaseColor.BLACK)));
                cell1.setBackgroundColor(MiColor);
                tabpdf1.addCell(cell1);
                tabpdf1.addCell(cell11);
                PdfPCell cell2 = new PdfPCell(
                        new Paragraph("Fecha:", FontFactory.getFont("arial", 10, Font.BOLD, BaseColor.BLACK)));
                PdfPCell cell22 = new PdfPCell(
                        new Paragraph(tabla1[0][3], FontFactory.getFont("arial", 10, Font.BOLD, BaseColor.BLACK)));
                cell2.setBackgroundColor(MiColor);
                tabpdf1.addCell(cell2);
                tabpdf1.addCell(cell22);
                PdfPCell cell3 = new PdfPCell(
                        new Paragraph("Acuerdo:", FontFactory.getFont("arial", 10, Font.BOLD, BaseColor.BLACK)));
                PdfPCell cell33 = new PdfPCell(
                        new Paragraph(txt5, FontFactory.getFont("arial", 10, Font.BOLD, BaseColor.BLACK)));
                cell3.setBackgroundColor(MiColor);
                tabpdf1.addCell(cell3);
                tabpdf1.addCell(cell33);
                document.add(tab.DibujarTablaArre1(6, 6, tabla1, medidas1, color, tabpdf1, 2, txt6));

                document.add(saltolinea);
                document.add(saltolinea);
                document.add(saltolinea);

                PdfPTable tabpdf2 = new PdfPTable(8);
                tabpdf2.setWidths(medidas2);
                PdfPCell cell1tab2 = new PdfPCell(new Phrase("Datos de la empresa ",
                        FontFactory.getFont("arial", 8, Font.BOLD, BaseColor.BLACK)));
                cell1tab2.setBackgroundColor(MiColor);
                cell1tab2.setHorizontalAlignment(Element.ALIGN_CENTER);
                cell1tab2.setColspan(4);
                cell1tab2.setRowspan(2);
                cell1tab2.setVerticalAlignment(Element.ALIGN_MIDDLE);
                tabpdf2.addCell(cell1tab2);

                PdfPCell cell2tab2 = new PdfPCell(
                        new Phrase("", FontFactory.getFont("arial", 8, Font.BOLD, BaseColor.BLACK)));
                cell2tab2.setBackgroundColor(MiColor);
                cell2tab2.setHorizontalAlignment(Element.ALIGN_CENTER);
                cell2tab2.setColspan(2);
                cell2tab2.setRowspan(1);
                cell2tab2.setVerticalAlignment(Element.ALIGN_MIDDLE);
                tabpdf2.addCell(cell2tab2);

                PdfPCell cell3tab2 = new PdfPCell(new Phrase("Junta de Aclaraciones",
                        FontFactory.getFont("arial", 8, Font.BOLD, BaseColor.BLACK)));
                cell3tab2.setBackgroundColor(MiColor);
                cell3tab2.setHorizontalAlignment(Element.ALIGN_CENTER);
                cell3tab2.setColspan(2);
                cell3tab2.setRowspan(1);
                cell3tab2.setVerticalAlignment(Element.ALIGN_MIDDLE);
                tabpdf2.addCell(cell3tab2);

                PdfPCell cell4tab2 = new PdfPCell(
                        new Phrase("Fecha:", FontFactory.getFont("arial", 8, Font.BOLD, BaseColor.BLACK)));
                cell4tab2.setHorizontalAlignment(Element.ALIGN_CENTER);
                cell4tab2.setBackgroundColor(MiColor);
                cell4tab2.setColspan(1);
                cell4tab2.setRowspan(1);
                cell4tab2.setVerticalAlignment(Element.ALIGN_MIDDLE);
                tabpdf2.addCell(cell4tab2);

                PdfPCell cell5tab2 = new PdfPCell(
                        new Phrase(txt7, FontFactory.getFont("arial", 8, Font.BOLD, BaseColor.BLACK)));
                cell5tab2.setHorizontalAlignment(Element.ALIGN_CENTER);
                cell5tab2.setColspan(1);
                cell5tab2.setRowspan(1);
                cell5tab2.setVerticalAlignment(Element.ALIGN_MIDDLE);
                tabpdf2.addCell(cell5tab2);///////////

                PdfPTable tabpdf3 = new PdfPTable(8);
                document.add(tabpdf2);

                PdfPCell cell1tab3 = new PdfPCell(new Phrase("Nombre, Denominacin o Razn Social",
                        FontFactory.getFont("arial", 8, Font.BOLD, BaseColor.BLACK)));
                cell1tab3.setBackgroundColor(MiColor);
                cell1tab3.setHorizontalAlignment(Element.ALIGN_CENTER);
                cell1tab3.setVerticalAlignment(Element.ALIGN_MIDDLE);
                tabpdf3.addCell(cell1tab3);

                PdfPCell cell2tab3 = new PdfPCell(
                        new Phrase("RFC", FontFactory.getFont("arial", 8, Font.BOLD, BaseColor.BLACK)));
                cell2tab3.setBackgroundColor(MiColor);
                cell2tab3.setHorizontalAlignment(Element.ALIGN_CENTER);
                cell2tab3.setVerticalAlignment(Element.ALIGN_MIDDLE);
                tabpdf3.addCell(cell2tab3);

                PdfPCell cell3tab3 = new PdfPCell(new Phrase("Representante Legal",
                        FontFactory.getFont("arial", 8, Font.BOLD, BaseColor.BLACK)));
                cell3tab3.setBackgroundColor(MiColor);
                cell3tab3.setHorizontalAlignment(Element.ALIGN_CENTER);
                cell3tab3.setVerticalAlignment(Element.ALIGN_MIDDLE);
                tabpdf3.addCell(cell3tab3);

                PdfPCell cell4tab3 = new PdfPCell(new Phrase("Domicilio Fiscal",
                        FontFactory.getFont("arial", 8, Font.BOLD, BaseColor.BLACK)));
                cell4tab3.setBackgroundColor(MiColor);
                cell4tab3.setHorizontalAlignment(Element.ALIGN_CENTER);
                cell4tab3.setVerticalAlignment(Element.ALIGN_MIDDLE);
                tabpdf3.addCell(cell4tab3);

                PdfPCell cell5tab3 = new PdfPCell(new Phrase("Proveedores sancionados",
                        FontFactory.getFont("arial", 8, Font.BOLD, BaseColor.BLACK)));
                cell5tab3.setBackgroundColor(MiColor);
                cell5tab3.setHorizontalAlignment(Element.ALIGN_CENTER);
                cell5tab3.setVerticalAlignment(Element.ALIGN_MIDDLE);
                tabpdf3.addCell(cell5tab3);

                PdfPCell cell6tab3 = new PdfPCell(
                        new Phrase("Pgina web", FontFactory.getFont("arial", 8, Font.BOLD, BaseColor.BLACK)));
                cell6tab3.setBackgroundColor(MiColor);
                cell6tab3.setHorizontalAlignment(Element.ALIGN_CENTER);
                cell6tab3.setVerticalAlignment(Element.ALIGN_MIDDLE);
                tabpdf3.addCell(cell6tab3);

                PdfPCell cell7tab3 = new PdfPCell(
                        new Phrase("Asisti", FontFactory.getFont("arial", 8, Font.BOLD, BaseColor.BLACK)));
                cell7tab3.setBackgroundColor(MiColor);
                cell7tab3.setHorizontalAlignment(Element.ALIGN_CENTER);
                cell7tab3.setVerticalAlignment(Element.ALIGN_MIDDLE);
                tabpdf3.addCell(cell7tab3);

                PdfPCell cell8tab3 = new PdfPCell(
                        new Phrase("No asisti", FontFactory.getFont("arial", 8, Font.BOLD, BaseColor.BLACK)));
                cell8tab3.setBackgroundColor(MiColor);
                cell8tab3.setHorizontalAlignment(Element.ALIGN_CENTER);
                cell8tab3.setVerticalAlignment(Element.ALIGN_MIDDLE);
                tabpdf3.addCell(cell8tab3);

                document.add(tab.DibujarTabla(8, 4, tabla2, medidas2, tabpdf3));
                document.add(saltolinea);
                document.add(saltolinea);
                document.add(saltolinea);
                ///////////////////////
                PdfPTable tabpdf4 = new PdfPTable(9);
                PdfPCell cell1tab4 = new PdfPCell(new Phrase("Nombre, Denominacin o Razn Social",
                        FontFactory.getFont("arial", 8, Font.BOLD, BaseColor.BLACK)));
                cell1tab4.setBackgroundColor(MiColor);
                cell1tab4.setHorizontalAlignment(Element.ALIGN_CENTER);
                cell1tab4.setColspan(1);
                cell1tab4.setRowspan(4);
                cell1tab4.setVerticalAlignment(Element.ALIGN_MIDDLE);
                tabpdf4.addCell(cell1tab4);

                PdfPCell cell2tab4 = new PdfPCell(new Phrase("Apertura de Propuestas",
                        FontFactory.getFont("arial", 8, Font.BOLD, BaseColor.BLACK)));
                cell2tab4.setBackgroundColor(MiColor);
                cell2tab4.setHorizontalAlignment(Element.ALIGN_CENTER);
                cell2tab4.setColspan(5);
                cell2tab4.setRowspan(1);
                cell2tab4.setVerticalAlignment(Element.ALIGN_MIDDLE);
                tabpdf4.addCell(cell2tab4);

                PdfPCell cell3tab4 = new PdfPCell(new Phrase("Notificacin y Lectura de Fallo",
                        FontFactory.getFont("arial", 8, Font.BOLD, BaseColor.BLACK)));
                cell3tab4.setBackgroundColor(MiColor);
                cell3tab4.setHorizontalAlignment(Element.ALIGN_CENTER);
                cell3tab4.setColspan(3);
                cell3tab4.setRowspan(1);
                cell3tab4.setVerticalAlignment(Element.ALIGN_MIDDLE);
                tabpdf4.addCell(cell3tab4);

                PdfPCell cell4tab4 = new PdfPCell(
                        new Phrase("Fecha:", FontFactory.getFont("arial", 8, Font.BOLD, BaseColor.BLACK)));
                cell4tab4.setHorizontalAlignment(Element.ALIGN_CENTER);
                cell4tab4.setBackgroundColor(MiColor);
                cell4tab4.setColspan(2);
                cell4tab4.setRowspan(1);
                cell4tab4.setVerticalAlignment(Element.ALIGN_MIDDLE);
                tabpdf4.addCell(cell4tab4);

                PdfPCell cell5tab4 = new PdfPCell(
                        new Phrase(txt8, FontFactory.getFont("arial", 8, Font.BOLD, BaseColor.BLACK)));
                cell5tab4.setHorizontalAlignment(Element.ALIGN_CENTER);
                cell5tab4.setColspan(3);
                cell5tab4.setRowspan(1);
                cell5tab4.setVerticalAlignment(Element.ALIGN_MIDDLE);
                tabpdf4.addCell(cell5tab4);

                PdfPCell cell6tab4 = new PdfPCell(
                        new Phrase("Fecha:", FontFactory.getFont("arial", 8, Font.BOLD, BaseColor.BLACK)));
                cell6tab4.setHorizontalAlignment(Element.ALIGN_CENTER);
                cell6tab4.setBackgroundColor(MiColor);
                cell6tab4.setColspan(1);
                cell6tab4.setRowspan(1);
                cell6tab4.setVerticalAlignment(Element.ALIGN_MIDDLE);
                tabpdf4.addCell(cell6tab4);

                PdfPCell cell7tab4 = new PdfPCell(
                        new Phrase(txt9, FontFactory.getFont("arial", 8, Font.BOLD, BaseColor.BLACK)));
                cell7tab4.setHorizontalAlignment(Element.ALIGN_CENTER);
                cell7tab4.setColspan(2);
                cell7tab4.setRowspan(1);
                cell7tab4.setVerticalAlignment(Element.ALIGN_MIDDLE);
                tabpdf4.addCell(cell7tab4);

                PdfPCell cell8tab4 = new PdfPCell(
                        new Phrase("Tcnica", FontFactory.getFont("arial", 8, Font.BOLD, BaseColor.BLACK)));
                cell8tab4.setHorizontalAlignment(Element.ALIGN_CENTER);
                cell8tab4.setBackgroundColor(MiColor);
                cell8tab4.setColspan(2);
                cell8tab4.setRowspan(1);
                cell8tab4.setVerticalAlignment(Element.ALIGN_MIDDLE);
                tabpdf4.addCell(cell8tab4);

                PdfPCell cell9tab4 = new PdfPCell(
                        new Phrase("Econmica ", FontFactory.getFont("arial", 8, Font.BOLD, BaseColor.BLACK)));
                cell9tab4.setHorizontalAlignment(Element.ALIGN_CENTER);
                cell9tab4.setBackgroundColor(MiColor);
                cell9tab4.setColspan(3);
                cell9tab4.setRowspan(1);
                cell9tab4.setVerticalAlignment(Element.ALIGN_MIDDLE);
                tabpdf4.addCell(cell9tab4);

                PdfPCell cell10tab4 = new PdfPCell(new Phrase("Motivo de desechamiento",
                        FontFactory.getFont("arial", 8, Font.BOLD, BaseColor.BLACK)));
                cell10tab4.setHorizontalAlignment(Element.ALIGN_CENTER);
                cell10tab4.setBackgroundColor(MiColor);
                cell10tab4.setColspan(1);
                cell10tab4.setRowspan(2);
                cell10tab4.setVerticalAlignment(Element.ALIGN_MIDDLE);
                tabpdf4.addCell(cell10tab4);

                PdfPCell cell11tab4 = new PdfPCell(new Phrase("Empresa Adjudicada",
                        FontFactory.getFont("arial", 8, Font.BOLD, BaseColor.BLACK)));
                cell11tab4.setHorizontalAlignment(Element.ALIGN_CENTER);
                cell11tab4.setBackgroundColor(MiColor);
                cell11tab4.setColspan(1);
                cell11tab4.setRowspan(2);
                cell11tab4.setVerticalAlignment(Element.ALIGN_MIDDLE);
                tabpdf4.addCell(cell11tab4);

                PdfPCell cell12tab4 = new PdfPCell(new Phrase("Monto Adjudicado",
                        FontFactory.getFont("arial", 8, Font.BOLD, BaseColor.BLACK)));
                cell12tab4.setHorizontalAlignment(Element.ALIGN_CENTER);
                cell12tab4.setBackgroundColor(MiColor);
                cell12tab4.setColspan(1);
                cell12tab4.setRowspan(2);
                cell12tab4.setVerticalAlignment(Element.ALIGN_MIDDLE);
                tabpdf4.addCell(cell12tab4);

                PdfPCell cell13tab4 = new PdfPCell(
                        new Phrase("Presenta", FontFactory.getFont("arial", 8, Font.BOLD, BaseColor.BLACK)));
                cell13tab4.setBackgroundColor(MiColor);
                cell13tab4.setHorizontalAlignment(Element.ALIGN_CENTER);
                cell13tab4.setVerticalAlignment(Element.ALIGN_MIDDLE);
                tabpdf4.addCell(cell13tab4);

                PdfPCell cell14tab4 = new PdfPCell(
                        new Phrase("No presenta", FontFactory.getFont("arial", 8, Font.BOLD, BaseColor.BLACK)));
                cell14tab4.setBackgroundColor(MiColor);
                cell14tab4.setHorizontalAlignment(Element.ALIGN_CENTER);
                cell14tab4.setVerticalAlignment(Element.ALIGN_MIDDLE);
                tabpdf4.addCell(cell14tab4);

                PdfPCell cell15tab4 = new PdfPCell(
                        new Phrase("Subtotal ", FontFactory.getFont("arial", 8, Font.BOLD, BaseColor.BLACK)));
                cell15tab4.setBackgroundColor(MiColor);
                cell15tab4.setHorizontalAlignment(Element.ALIGN_CENTER);
                cell15tab4.setVerticalAlignment(Element.ALIGN_MIDDLE);
                tabpdf4.addCell(cell15tab4);

                PdfPCell cell16tab4 = new PdfPCell(
                        new Phrase("IVA", FontFactory.getFont("arial", 8, Font.BOLD, BaseColor.BLACK)));
                cell16tab4.setBackgroundColor(MiColor);
                cell16tab4.setHorizontalAlignment(Element.ALIGN_CENTER);
                cell16tab4.setVerticalAlignment(Element.ALIGN_MIDDLE);
                tabpdf4.addCell(cell16tab4);

                PdfPCell cell17tab4 = new PdfPCell(
                        new Phrase("Total", FontFactory.getFont("arial", 8, Font.BOLD, BaseColor.BLACK)));
                cell17tab4.setBackgroundColor(MiColor);
                cell17tab4.setHorizontalAlignment(Element.ALIGN_CENTER);
                cell17tab4.setVerticalAlignment(Element.ALIGN_MIDDLE);
                tabpdf4.addCell(cell17tab4);

                document.add(tab.DibujarTabla(9, 4, tabla3, medidas3, tabpdf4));
                document.add(saltolinea);
                document.add(saltolinea);
                document.add(saltolinea);
                document.add(saltolinea);

                PdfPTable tabpdf5 = new PdfPTable(2);
                PdfPCell cell1tab5 = new PdfPCell(
                        new Phrase("Observaciones:", FontFactory.getFont("arial", 10, Font.BOLD, BaseColor.BLACK)));
                cell1tab5.setBackgroundColor(MiColor);
                cell1tab5.setMinimumHeight(60);
                cell1tab5.setHorizontalAlignment(Element.ALIGN_CENTER);
                cell1tab5.setVerticalAlignment(Element.ALIGN_MIDDLE);
                tabpdf5.addCell(cell1tab5);

                PdfPCell cell2tab5 = new PdfPCell(
                        new Phrase(txt10, FontFactory.getFont("arial", 10, Font.BOLD, BaseColor.BLACK)));
                cell2tab5.setMinimumHeight(60);
                cell2tab5.setHorizontalAlignment(Element.ALIGN_CENTER);
                cell2tab5.setVerticalAlignment(Element.ALIGN_MIDDLE);
                tabpdf5.addCell(cell2tab5);
                tabpdf5.setWidths(medidas4);
                document.add(tabpdf5);

                document.close();
                JOptionPane.showMessageDialog(null, "El archivo se ha guardado", "Exito",
                        JOptionPane.INFORMATION_MESSAGE);

                File path = new File(f1 + ".pdf");
                Desktop.getDesktop().open(path);
            } catch (Exception e) {
                JOptionPane.showMessageDialog(null, "Error " + e, "Error", JOptionPane.ERROR_MESSAGE);
            }
        }
    }

From source file:FormatoPDF.ClasesPDF.TablasPDF.java

public PdfPTable DibujarTablaArre1(int col, int fil, String[][] tabla, float medidas[], boolean x,
            PdfPTable tab, int pdf, String ult) {

        try {// w ww.j  a v a  2  s.c o  m
            BaseColor MiColor = WebColors.getRGBColor("#04B4AE");
            tab.setWidths(medidas);
            if (pdf == 2) {
                fil = 7;
            }
            for (int i = 1; i < fil; i++) {
                for (int j = 0; j < col - 2; j++) {
                    if (i == 6) {
                        PdfPCell cell = new PdfPCell(new Phrase("Publicacin de bases: ",
                                FontFactory.getFont("arial", 10, Font.BOLD, BaseColor.BLACK)));
                        cell.setVerticalAlignment(Element.ALIGN_MIDDLE);
                        cell.setBackgroundColor(MiColor);
                        tab.addCell(cell);
                        PdfPCell cell2 = new PdfPCell(
                                new Phrase(ult, FontFactory.getFont("arial", 10, Font.BOLD, BaseColor.BLACK)));
                        cell2.setVerticalAlignment(Element.ALIGN_MIDDLE);
                        cell2.setColspan(5);
                        cell2.setRowspan(1);
                        tab.addCell(cell2);
                        break;
                    } else {
                        Object obj1 = tabla[i][j];
                        String value1 = obj1.toString();
                        if (x) {
                            if (j == 0 || j == 2) {
                                PdfPCell cell = new PdfPCell(new Paragraph(value1,
                                        FontFactory.getFont("arial", 10, Font.BOLD, BaseColor.BLACK)));
                                cell.setBackgroundColor(MiColor);
                                cell.setVerticalAlignment(Element.ALIGN_MIDDLE);
                                tab.addCell(cell);
                            } else if (j == 3) {
                                PdfPCell cell = new PdfPCell(new Phrase(value1,
                                        FontFactory.getFont("arial", 10, Font.BOLD, BaseColor.BLACK)));
                                cell.setColspan(3);
                                cell.setRowspan(1);
                                cell.setVerticalAlignment(Element.ALIGN_MIDDLE);
                                tab.addCell(cell);
                            } else {
                                PdfPCell cell = new PdfPCell(new Phrase(value1,
                                        FontFactory.getFont("arial", 10, Font.BOLD, BaseColor.BLACK)));
                                cell.setVerticalAlignment(Element.ALIGN_MIDDLE);
                                tab.addCell(cell);
                            }
                        } else {
                            if (j == 3) {
                                PdfPCell cell = new PdfPCell(new Phrase(value1,
                                        FontFactory.getFont("arial", 10, Font.BOLD, BaseColor.BLACK)));
                                cell.setColspan(3);
                                cell.setRowspan(1);
                                cell.setVerticalAlignment(Element.ALIGN_MIDDLE);
                                tab.addCell(cell);
                            } else {
                                PdfPCell cell = new PdfPCell(new Phrase(value1,
                                        FontFactory.getFont("arial", 10, Font.BOLD, BaseColor.BLACK)));
                                cell.setVerticalAlignment(Element.ALIGN_MIDDLE);
                                tab.addCell(cell);
                            }
                        }
                    }
                }
            }
        } catch (Exception e) {
            System.out.println("Error " + e);
        }
        return tab;
    }

From source file:org.mapfish.print.config.ColorWrapper.java

License:Open Source License

public static BaseColor convertColor(String color) throws IllegalArgumentException {

    if (color == null) {
        return null;
    } else {// w w w.  java2s. c o  m
        return WebColors.getRGBColor(color);
    }

}