Example usage for com.itextpdf.text Chunk NEWLINE

List of usage examples for com.itextpdf.text Chunk NEWLINE

Introduction

In this page you can find the example usage for com.itextpdf.text Chunk NEWLINE.

Prototype

Chunk NEWLINE

To view the source code for com.itextpdf.text Chunk NEWLINE.

Click Source Link

Document

This is a Chunk containing a newline.

Usage

From source file:se.inera.intyg.rehabstod.service.export.pdf.HeaderEventHandler.java

License:Open Source License

private PdfPCell printedBy(String userName, String enhetsNamn) {
    LocalDateTime now = LocalDateTime.now();

    Phrase printedBy = new Phrase("", PdfExportConstants.TABLE_CELL_NORMAL);
    printedBy.add(new Chunk("Utskrift av " + userName));
    printedBy.add(Chunk.NEWLINE);
    printedBy.add(new Chunk(enhetsNamn));
    printedBy.add(Chunk.NEWLINE);/* w  w w .  j  av  a  2s  . c o  m*/
    printedBy.add(new Chunk(YearMonthDateFormatter.print(now)));
    printedBy.add(new Chunk(" - "));
    printedBy.add(new Chunk(HourMinuteFormatter.print(now)));

    PdfPCell cell = new PdfPCell(printedBy);
    cell.setHorizontalAlignment(Element.ALIGN_RIGHT);
    cell.setVerticalAlignment(Element.ALIGN_BOTTOM);
    cell.setBorder(Rectangle.NO_BORDER);

    return cell;
}

From source file:servlet.PdfGenerator.java

/**
 * Processes requests for both HTTP <code>GET</code> and <code>POST</code>
 * methods./*from   w ww  . ja va  2 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 {
    Document report = new Document();
    try {
        ByteArrayOutputStream baos = new ByteArrayOutputStream();
        PdfWriter.getInstance(report, baos);

        DBManager manager = (DBManager) getServletContext().getAttribute("dbmanager");
        Group groupToReport = manager.getGroup(Integer.parseInt(request.getParameter("id")));
        LinkedList<User> groupUsers = manager.getUsersForGroupAndVisible(groupToReport.getId());
        Timestamp lastPosted = manager.getLatestPost(groupToReport);
        int numberOfPosts = manager.getGroupPosts(groupToReport).size();
        String context = request.getServletContext().getRealPath("/");
        Iterator<User> groupIterator = groupUsers.iterator();

        report.open();
        // INSERTING DOCUMENT CONTENT AREA
        Font title = FontFactory.getFont(FontFactory.HELVETICA_BOLD, 24);
        Font text = FontFactory.getFont(FontFactory.HELVETICA, 12);
        Paragraph documentHead = new Paragraph(groupToReport.getName(), title);
        Paragraph newLine = new Paragraph(Chunk.NEWLINE);
        Paragraph latestPost = new Paragraph("Latest post inserted on: " + lastPosted, text);
        Paragraph postsNumberToReport = new Paragraph("Number of posts: " + numberOfPosts, text);

        //LAYOUT AND FINAL PARAGRAPH EDITING AREA
        report.add(documentHead);
        report.add(newLine);
        report.add(postsNumberToReport);
        report.add(newLine);
        report.add(latestPost);
        report.add(newLine);
        PdfPTable usersTable = new PdfPTable(5);

        // LOOP FOR SETTING TABLE
        while (groupIterator.hasNext()) {
            User u = groupIterator.next();
            String userName = u.getName();
            PdfPCell avatarCell = new PdfPCell(Image.getInstance(context + u.getAvatar(request)));
            avatarCell.setBorder(0);
            avatarCell.setPaddingBottom(10);
            avatarCell.setColspan(1);
            PdfPCell userNameCell = new PdfPCell(new Phrase(userName));
            userNameCell.setColspan(4);
            userNameCell.setBorder(0);
            userNameCell.setPaddingBottom(10);
            userNameCell.setPaddingLeft(10);
            usersTable.addCell(avatarCell);
            usersTable.addCell(userNameCell);
        }
        usersTable.setHorizontalAlignment(PdfPTable.ALIGN_LEFT);
        report.add(usersTable);

        report.close();

        // SETTING SOME RESPONSE HEADER
        response.setHeader("Expires", "0");
        response.setHeader("Cache-Control", "must-revalidate, post-check=0, pre-check=0");
        response.setHeader("Pragma", "public");
        // SETTING THE CONTENT TYPE
        response.setContentType("application/pdf");
        // THE CONTENTLENGHT
        response.setContentLength(baos.size());
        System.out.println("ci sono");
        try (OutputStream os = response.getOutputStream()) {
            baos.writeTo(os);
            os.flush();
            os.close();
        } catch (Exception e) {
            throw new IOException(e.getMessage());
        }
    } catch (DocumentException e) {
        throw new IOException(e.getMessage());
    }
}

From source file:Servlets.GenerarPinesGrupo.java

@Override
protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {

    String[] idEstudiante = req.getParameterValues("imprimir");

    resp.setContentType("application/pdf");
    OutputStream out = resp.getOutputStream();

    String foto = getServletContext().getRealPath("/recursos/img/logoColegio.png");
    req.setCharacterEncoding("UTF-8");

    try {//w  w  w  .j a  v  a 2  s  .c  o m
        try {
            Document documento = new Document();
            PdfWriter.getInstance(documento, out);

            documento.open();

            Paragraph par1 = new Paragraph();
            Font fontit = new Font(Font.FontFamily.HELVETICA, 16, Font.BOLD, BaseColor.GRAY);
            par1.add(new Phrase("Pin de Acceso HeartsTics", fontit));
            par1.setAlignment(Element.ALIGN_CENTER);
            par1.add(new Phrase(Chunk.NEWLINE));
            par1.add(new Phrase(Chunk.NEWLINE));
            documento.add(par1);
            //                Image image = Image.getInstance("E:\\ArchivosVarios\\logoColegio.png");
            //                image.scalePercent(50);
            Image image = Image.getInstance(foto);
            image.scalePercent(60);

            Font fuentetabla = FontFactory.getFont("Arial", 8, Font.BOLD, BaseColor.BLACK);
            Font fuentetablaPin = FontFactory.getFont("Arial", 10, Font.BOLD, BaseColor.BLACK);
            Font fuentetablaHeader = FontFactory.getFont("Arial", 9, Font.BOLD, BaseColor.BLACK);
            Servicio controlador = new Servicio();
            for (int i = 0; i < idEstudiante.length; i++) {
                int idEst = Integer.parseInt(idEstudiante[i]);
                Pin estudiante = controlador.pinEstudiante(idEst);
                PdfPTable tabla = new PdfPTable(3);

                tabla.setWidthPercentage(60);

                PdfPCell celdaHeader = new PdfPCell(
                        new Paragraph("COLEGIO SAGRADOS CORAZONES", fuentetablaHeader));
                celdaHeader.setVerticalAlignment(Element.ALIGN_MIDDLE);
                celdaHeader.setHorizontalAlignment(Element.ALIGN_CENTER);
                celdaHeader.setColspan(3);
                tabla.addCell(celdaHeader);
                PdfPCell celda01 = new PdfPCell(image);
                //PdfPCell celda01 = new PdfPCell(new Paragraph("imagen"));
                celda01.setHorizontalAlignment(Element.ALIGN_CENTER);
                celda01.setVerticalAlignment(Element.ALIGN_MIDDLE);
                celda01.setRowspan(2);
                celda01.setBorder(Rectangle.NO_BORDER);
                celda01.setBorder(Rectangle.LEFT);
                tabla.addCell(celda01);

                PdfPCell celda1 = new PdfPCell(new Paragraph(
                        "Estudiante: " + estudiante.getNombres() + " " + estudiante.getApellidos(),
                        fuentetabla));
                PdfPCell celda2 = new PdfPCell(new Paragraph("Pin: " + estudiante.getIdPin(), fuentetablaPin));
                PdfPCell celda3 = new PdfPCell(
                        new Paragraph("Fecha creacion: " + estudiante.getInicio(), fuentetabla));
                PdfPCell celda4 = new PdfPCell(
                        new Paragraph("Fecha vencimiento: " + estudiante.getFin(), fuentetabla));

                celda1.setHorizontalAlignment(Element.ALIGN_CENTER);
                celda1.setVerticalAlignment(Element.ALIGN_MIDDLE);
                celda1.setColspan(2);
                celda1.setBorder(Rectangle.NO_BORDER);
                celda1.setBorder(Rectangle.RIGHT);

                celda2.setHorizontalAlignment(Element.ALIGN_CENTER);
                celda2.setVerticalAlignment(Element.ALIGN_MIDDLE);
                celda2.setColspan(2);
                celda2.setBorder(Rectangle.NO_BORDER);
                celda2.setBorder(Rectangle.RIGHT);

                PdfPTable tableFecha = new PdfPTable(2);
                tableFecha.setWidthPercentage(60);
                celda3.setHorizontalAlignment(Element.ALIGN_CENTER);
                celda4.setHorizontalAlignment(Element.ALIGN_CENTER);

                tabla.addCell(celda1);
                tabla.addCell(celda2);
                tableFecha.addCell(celda3);
                tableFecha.addCell(celda4);
                Paragraph par2 = new Paragraph();

                par2.add(new Phrase(Chunk.NEWLINE));
                documento.add(par2);

                documento.add(tabla);
                documento.add(tableFecha);

            }
            documento.close();

        } catch (Exception e) {
            e.getMessage();
        }
    } finally {
        out.close();
    }

}

From source file:Servlets.GenerarPinEstudiante.java

@Override
protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {

    int idEstudiante = Integer.parseInt(req.getParameter("idEst"));

    resp.setContentType("application/pdf");
    OutputStream out = resp.getOutputStream();

    String foto = getServletContext().getRealPath("/recursos/img/logoColegio.png");
    req.setCharacterEncoding("UTF-8");

    try {//  ww w  . j  av  a 2s .c  om
        try {
            Document documento = new Document();
            PdfWriter.getInstance(documento, out);

            documento.open();

            Paragraph par1 = new Paragraph();
            Font fontit = new Font(Font.FontFamily.HELVETICA, 16, Font.BOLD, BaseColor.GRAY);
            par1.add(new Phrase("Pin de Acceso HeartsTics", fontit));
            par1.setAlignment(Element.ALIGN_CENTER);
            par1.add(new Phrase(Chunk.NEWLINE));
            par1.add(new Phrase(Chunk.NEWLINE));
            documento.add(par1);
            //                Image image = Image.getInstance("E:\\ArchivosVarios\\logoColegio.png");
            //                image.scalePercent(50);
            Image image = Image.getInstance(foto);
            image.scalePercent(60);

            Font fuentetabla = FontFactory.getFont("Arial", 8, Font.BOLD, BaseColor.BLACK);
            Font fuentetablaPin = FontFactory.getFont("Arial", 10, Font.BOLD, BaseColor.BLACK);
            Font fuentetablaHeader = FontFactory.getFont("Arial", 9, Font.BOLD, BaseColor.BLACK);

            Servicio controlador = new Servicio();
            Pin estudiante = controlador.pinEstudiante(idEstudiante);
            PdfPTable tabla = new PdfPTable(3);

            tabla.setWidthPercentage(60);

            PdfPCell celdaHeader = new PdfPCell(new Paragraph("COLEGIO SAGRADOS CORAZONES", fuentetablaHeader));
            celdaHeader.setVerticalAlignment(Element.ALIGN_MIDDLE);
            celdaHeader.setHorizontalAlignment(Element.ALIGN_CENTER);
            celdaHeader.setColspan(3);
            tabla.addCell(celdaHeader);
            PdfPCell celda01 = new PdfPCell(image);
            //PdfPCell celda01 = new PdfPCell(new Paragraph("imagen"));
            celda01.setHorizontalAlignment(Element.ALIGN_CENTER);
            celda01.setVerticalAlignment(Element.ALIGN_MIDDLE);
            celda01.setRowspan(2);
            celda01.setBorder(Rectangle.NO_BORDER);
            celda01.setBorder(Rectangle.LEFT);
            tabla.addCell(celda01);

            PdfPCell celda1 = new PdfPCell(new Paragraph(
                    "Estudiante: " + estudiante.getNombres() + " " + estudiante.getApellidos(), fuentetabla));
            PdfPCell celda2 = new PdfPCell(new Paragraph("Pin: " + estudiante.getIdPin(), fuentetablaPin));
            PdfPCell celda3 = new PdfPCell(
                    new Paragraph("Fecha creacion: " + estudiante.getInicio(), fuentetabla));
            PdfPCell celda4 = new PdfPCell(
                    new Paragraph("Fecha vencimiento: " + estudiante.getFin(), fuentetabla));

            celda1.setHorizontalAlignment(Element.ALIGN_CENTER);
            celda1.setVerticalAlignment(Element.ALIGN_MIDDLE);
            celda1.setColspan(2);
            celda1.setBorder(Rectangle.NO_BORDER);
            celda1.setBorder(Rectangle.RIGHT);

            celda2.setHorizontalAlignment(Element.ALIGN_CENTER);
            celda2.setVerticalAlignment(Element.ALIGN_MIDDLE);
            celda2.setColspan(2);
            celda2.setBorder(Rectangle.NO_BORDER);
            celda2.setBorder(Rectangle.RIGHT);

            PdfPTable tableFecha = new PdfPTable(2);
            tableFecha.setWidthPercentage(60);
            celda3.setHorizontalAlignment(Element.ALIGN_CENTER);
            celda4.setHorizontalAlignment(Element.ALIGN_CENTER);

            tabla.addCell(celda1);
            tabla.addCell(celda2);
            tableFecha.addCell(celda3);
            tableFecha.addCell(celda4);
            Paragraph par2 = new Paragraph();

            par2.add(new Phrase(Chunk.NEWLINE));
            documento.add(par2);

            documento.add(tabla);
            documento.add(tableFecha);

            documento.close();

        } catch (Exception e) {
            e.getMessage();
        }
    } finally {
        out.close();
    }

}

From source file:Servlets.ReportsServlet.java

/**
 * Processes requests for both HTTP <code>GET</code> and <code>POST</code>
 * methods.//from ww  w.  jav  a2  s .  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 {
    try {

        Paragraph pp;
        Paragraph palaglapgh, signParagraph, dateParagrapgh;
        Chunk chk;
        Paragraph underText;
        Chunk chuk1;
        Chunk chuk2;
        Paragraph regionText;
        String x;
        ResultSet dir;
        Paragraph regionTexts;
        String repLot;
        repLot = request.getParameter("report");

        String repNum = request.getParameter("ITLot");
        Paragraph newDate;
        response.setContentType("application/pdf");
        OutputStream out = response.getOutputStream();

        //Create document for pdf
        Document doc = new Document();

        //PDF writer to write into document
        PdfWriter docwriter = null;

        DecimalFormat df = new DecimalFormat("0.00");

        switch (repLot) {
        default:

            break;
        case "IT Report":

            //Copied code start from here
            try {
                // //file path
                //String path = "docs/" + "Name";
                docwriter = PdfWriter.getInstance(doc, out);
            } catch (DocumentException ex) {
                Logger.getLogger(PDFDemo.class.getName()).log(Level.SEVERE, null, ex);
            }

            //document header attributes
            doc.addAuthor("CHED CU");
            doc.addCreationDate();
            doc.addProducer();
            doc.addCreator("Grant Monitor");
            doc.addTitle(repLot);
            doc.setPageSize(PageSize.A4.rotate()); //This sets page size to A4 and orientation to Landscape
            //doc.setPageSize(PageSize.A4);
            doc.setMargins(20f, 20f, 10f, 10f);

            //open document
            doc.open();

            //Creating a paragraphs and chunks
            pp = new Paragraph("Cocoa Health And Extension Division", forTitle);
            pp.setAlignment(Element.ALIGN_CENTER);

            palaglapgh = new Paragraph("(Cocobod)", bfBold12);
            palaglapgh.setAlignment(Element.ALIGN_CENTER);

            signParagraph = new Paragraph("Sign: ..............", bfBold12);
            signParagraph.setAlignment(Element.ALIGN_LEFT);

            dateParagrapgh = new Paragraph("Date: ...........", bfBold12);

            chk = new Chunk("From GIS Office, Accra", bfBold12);
            chk.setUnderline(.1f, -2f); // 0.1 thickness and -2 position
            underText = new Paragraph(chk);
            underText.setAlignment(Element.ALIGN_CENTER);

            chuk1 = new Chunk("Lot No:", forTitle2);
            chuk1.setUnderline(.1f, -2f);
            chuk2 = new Chunk(repNum.toUpperCase(), forTitle2);

            regionText = new Paragraph(repLot, forTitle2);
            regionText.setAlignment(Element.ALIGN_CENTER);
            x = "";
            dir = manager.PDFdemos(repNum);
            try {
                if (dir.next()) {
                    x = dir.getString(12);

                }
            } catch (SQLException ex) {
                Logger.getLogger(PDFDemo.class.getName()).log(Level.SEVERE, null, ex);
            }

            regionTexts = new Paragraph(x, forTitle2);
            regionText.setAlignment(Element.ALIGN_CENTER);
            //add the PDF table to the paragraph
            //palaglapgh.add(table);
            //Table Generation block
            regionText.add(reports(repNum, repLot, .25f));

            //SECTION TO ADD ELEMENTS TO PDF
            // add the paragraph to the document
            doc.add(pp);
            //doc.add(Chunk.NEWLINE);       //Adds a new blank line
            doc.add(palaglapgh);
            doc.add(underText);

            doc.add(chuk1);
            doc.add(chuk2);

            //Current Date and time insertion
            newDate = new Paragraph(date, bf12);
            newDate.setAlignment(Element.ALIGN_RIGHT);
            doc.add(newDate);
            doc.add(regionTexts);
            doc.add(regionText);

            doc.add(Chunk.NEWLINE); //Adds a new blank line
            doc.add(Chunk.NEWLINE);

            doc.add(signParagraph);
            doc.add(dateParagrapgh);

            //close the document
            doc.close();

            //close the writer
            docwriter.close();

            out.close();

            break;

        case "TR Report":

            //Copied code start from here
            try {
                // //file path
                //String path = "docs/" + "Name";
                docwriter = PdfWriter.getInstance(doc, out);
            } catch (DocumentException ex) {
                Logger.getLogger(PDFDemo.class.getName()).log(Level.SEVERE, null, ex);
            }

            //document header attributes
            doc.addAuthor("CHED CU");
            doc.addCreationDate();
            doc.addProducer();
            doc.addCreator("Grant Monitor");
            doc.addTitle(repLot);
            //doc.setPageSize(PageSize.A4.rotate());      //This sets page size to A4 and orientation to Landscape
            doc.setPageSize(PageSize.A4);
            doc.setMargins(30f, 30f, 20f, 20f);

            //open document
            doc.open();

            //Creating a paragraphs and chunks
            pp = new Paragraph("Cocoa Health And Extension Division", forTitle);
            pp.setAlignment(Element.ALIGN_CENTER);

            palaglapgh = new Paragraph("(Cocobod)", bfBold12);
            palaglapgh.setAlignment(Element.ALIGN_CENTER);

            signParagraph = new Paragraph("Sign: ..............", bfBold12);
            signParagraph.setAlignment(Element.ALIGN_LEFT);

            dateParagrapgh = new Paragraph("Date: ...........", bfBold12);

            chk = new Chunk("From GIS Office, Accra", bfBold12);
            chk.setUnderline(.1f, -2f); // 0.1 thickness and -2 position
            underText = new Paragraph(chk);
            underText.setAlignment(Element.ALIGN_CENTER);

            chuk1 = new Chunk("Lot No:", forTitle2);
            chuk1.setUnderline(.1f, -2f); // 0.1 thickness and -2 position
            chuk2 = new Chunk(repNum.toUpperCase(), forTitle2);

            regionText = new Paragraph(repLot, forTitle2);
            regionText.setAlignment(Element.ALIGN_CENTER);

            x = "";
            dir = manager.PDFdemos(repNum);
            try {
                if (dir.next()) {
                    x = dir.getString(12);

                }
            } catch (SQLException ex) {
                Logger.getLogger(PDFDemo.class.getName()).log(Level.SEVERE, null, ex);
            }

            regionTexts = new Paragraph(x, forTitle2);
            regionText.setAlignment(Element.ALIGN_CENTER);
            //add the PDF table to the paragraph
            //palaglapgh.add(table);
            //Table Generation block
            regionText.add(reports(repNum, repLot, .1f));

            //SECTION TO ADD ELEMENTS TO PDF
            // add the paragraph to the document
            doc.add(pp);
            //doc.add(Chunk.NEWLINE);       //Adds a new blank line
            doc.add(palaglapgh);
            doc.add(underText);

            doc.add(chuk1);
            doc.add(chuk2);

            //Current Date and time insertion
            newDate = new Paragraph(date, bf12);
            newDate.setAlignment(Element.ALIGN_RIGHT);
            doc.add(newDate);
            doc.add(regionTexts);
            doc.add(regionText);

            doc.add(Chunk.NEWLINE); //Adds a new blank line
            doc.add(Chunk.NEWLINE);

            doc.add(signParagraph);
            doc.add(dateParagrapgh);

            //close the document
            doc.close();

            //close the writer
            docwriter.close();

            out.close();

            break;

        case "RP Report":

            //Copied code start from here
            try {
                // //file path
                //String path = "docs/" + "Name";
                docwriter = PdfWriter.getInstance(doc, out);
            } catch (DocumentException ex) {
                Logger.getLogger(PDFDemo.class.getName()).log(Level.SEVERE, null, ex);
            }

            //document header attributes
            doc.addAuthor("CHED CU");
            doc.addCreationDate();
            doc.addProducer();
            doc.addCreator("Grant Monitor");
            doc.addTitle(repLot);
            doc.setPageSize(PageSize.A4.rotate()); //This sets page size to A4 and orientation to Landscape
            //doc.setPageSize(PageSize.A4);
            doc.setMargins(30f, 30f, 20f, 20f);

            //open document
            doc.open();

            //Creating a paragraphs and chunks
            pp = new Paragraph("Cocoa Health And Extension Division", forTitle);
            pp.setAlignment(Element.ALIGN_CENTER);

            palaglapgh = new Paragraph("(Cocobod)", bfBold12);
            palaglapgh.setAlignment(Element.ALIGN_CENTER);

            signParagraph = new Paragraph("Sign: ..............", bfBold12);
            signParagraph.setAlignment(Element.ALIGN_LEFT);

            dateParagrapgh = new Paragraph("Date: ...........", bfBold12);

            chk = new Chunk("From GIS Office, Accra", bfBold12);
            chk.setUnderline(.1f, -2f); // 0.1 thickness and -2 position
            underText = new Paragraph(chk);
            underText.setAlignment(Element.ALIGN_CENTER);

            chuk1 = new Chunk("RP Lot No:", forTitle2);
            chuk1.setUnderline(.1f, -2f);
            chuk2 = new Chunk(repNum.toUpperCase(), forTitle2);

            regionText = new Paragraph(repLot, forTitle2);
            regionText.setAlignment(Element.ALIGN_CENTER);
            x = "";
            dir = manager.PDFreplants(repNum);
            try {
                if (dir.next()) {
                    x = dir.getString(22);

                }
            } catch (SQLException ex) {
                Logger.getLogger(PDFDemo.class.getName()).log(Level.SEVERE, null, ex);
            }

            regionTexts = new Paragraph(x, forTitle2);
            regionText.setAlignment(Element.ALIGN_CENTER);
            //add the PDF table to the paragraph
            //palaglapgh.add(table);
            //Table Generation block
            regionText.add(RPreport(repNum));

            //SECTION TO ADD ELEMENTS TO PDF
            // add the paragraph to the document
            doc.add(pp);
            //doc.add(Chunk.NEWLINE);       //Adds a new blank line
            doc.add(palaglapgh);
            doc.add(underText);

            doc.add(chuk1);
            doc.add(chuk2);

            //Current Date and time insertion
            newDate = new Paragraph(date, bf12);
            newDate.setAlignment(Element.ALIGN_RIGHT);
            doc.add(newDate);
            doc.add(regionTexts);
            doc.add(regionText);

            doc.add(Chunk.NEWLINE); //Adds a new blank line
            doc.add(Chunk.NEWLINE);

            doc.add(signParagraph);
            doc.add(dateParagrapgh);

            //close the document
            doc.close();

            //close the writer
            docwriter.close();

            out.close();

            break;

        case "Rehab Report":

            //Copied code start from here
            try {
                // //file path
                //String path = "docs/" + "Name";
                docwriter = PdfWriter.getInstance(doc, out);
            } catch (DocumentException ex) {
                Logger.getLogger(PDFDemo.class.getName()).log(Level.SEVERE, null, ex);
            }

            //document header attributes
            doc.addAuthor("CHED CU");
            doc.addCreationDate();
            doc.addProducer();
            doc.addCreator("Grant Monitor");
            doc.addTitle(repLot);
            doc.setPageSize(PageSize.A4.rotate()); //This sets page size to A4 and orientation to Landscape
            //doc.setPageSize(PageSize.A4);
            doc.setMargins(5f, 5f, 3f, 3f);

            //open document
            doc.open();

            //Creating a paragraphs and chunks
            pp = new Paragraph("Cocoa Health And Extension Division", forTitle);
            pp.setAlignment(Element.ALIGN_CENTER);

            palaglapgh = new Paragraph("(Cocobod)", bfBold12);
            palaglapgh.setAlignment(Element.ALIGN_CENTER);

            signParagraph = new Paragraph("Sign: ..............", bfBold12);
            signParagraph.setAlignment(Element.ALIGN_LEFT);

            dateParagrapgh = new Paragraph("Date: ...........", bfBold12);

            chk = new Chunk("Component 1 Rehabilitation Tree Removal Cost From GIS Office, Accra", bfBold12);
            chk.setUnderline(.1f, -2f); // 0.1 thickness and -2 position
            underText = new Paragraph(chk);
            underText.setAlignment(Element.ALIGN_CENTER);

            chuk1 = new Chunk("RP Lot No:", bfBold12);
            chuk1.setUnderline(.1f, -2f);
            chuk2 = new Chunk(repNum, bfBold12);

            regionText = new Paragraph(repLot, forTitle2);
            regionText.setAlignment(Element.ALIGN_CENTER);
            x = "";
            dir = manager.PDFRehab(repNum);//SHOULD BE CHANGED!!!!
            try {
                if (dir.next()) {
                    x = dir.getString(21);

                }
            } catch (SQLException ex) {
                Logger.getLogger(PDFDemo.class.getName()).log(Level.SEVERE, null, ex);
            }

            regionTexts = new Paragraph(x, forTitle2);
            regionText.setAlignment(Element.ALIGN_CENTER);
            //add the PDF table to the paragraph
            //palaglapgh.add(table);
            //Table Generation block
            regionText.add(reports(repNum));

            //SECTION TO ADD ELEMENTS TO PDF
            // add the paragraph to the document
            doc.add(pp);
            //doc.add(Chunk.NEWLINE);       //Adds a new blank line
            doc.add(palaglapgh);
            doc.add(underText);

            doc.add(chuk1);
            doc.add(chuk2);

            //Current Date and time insertion
            newDate = new Paragraph(date, bf12);
            newDate.setAlignment(Element.ALIGN_RIGHT);
            doc.add(newDate);
            doc.add(regionTexts);
            doc.add(regionText);

            doc.add(Chunk.NEWLINE); //Adds a new blank line
            doc.add(Chunk.NEWLINE);

            doc.add(signParagraph);
            doc.add(dateParagrapgh);

            //close the document
            doc.close();

            //close the writer
            docwriter.close();

            out.close();

            //Copied CODES
            break;

        }

    } catch (DocumentException ex) {
        Logger.getLogger(ReportsServlet.class.getName()).log(Level.SEVERE, null, ex);
    }

}

From source file:ServletsReportesPDF.ReporteAbonadas.java

/**
 * Processes requests for both HTTP <code>GET</code> and <code>POST</code>
 * methods.// w w w  . ja  v  a  2 s. co  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 {
    response.setContentType("text/html;charset=UTF-8");

    String num_lote = request.getParameter("num_lote");

    response.setContentType("application/pdf");
    OutputStream out = response.getOutputStream();

    try {
        try {

            Statement st = null;
            Statement st2 = null;
            Statement st3 = null;
            Statement st4 = null;
            Statement st5 = null;
            ResultSet rs = null;
            ResultSet rs2 = null;
            ResultSet rs3 = null;
            ResultSet rs4 = null;
            ResultSet rs5 = null;
            java.sql.Connection con = new ConexionBD().ConexionBD2();

            st = (Statement) con.createStatement();
            st2 = (Statement) con.createStatement();
            st3 = (Statement) con.createStatement();
            st4 = (Statement) con.createStatement();
            st5 = (Statement) con.createStatement();
            rs = st.executeQuery(
                    "SELECT usuario.cedula,nombre,apellido,telefono FROM usuario JOIN lote ON lote.usuario_cedula=usuario.cedula WHERE lote.num_lote='"
                            + num_lote + "'");
            rs2 = st2.executeQuery(
                    "SELECT * from abonada a JOIN insumos_abonada i on i.id_abonada = a.id_abonada where a.num_lote ='"
                            + num_lote + "'");
            rs3 = st3.executeQuery(
                    "SELECT * from abonada a JOIN insumos_abonada i on i.id_abonada = a.id_abonada where a.num_lote ='"
                            + num_lote + "'");
            rs4 = st4.executeQuery("select * from abonada where num_lote = '" + num_lote + "'");
            rs5 = st5.executeQuery(
                    "SELECT * from abonada a JOIN insumos_abonada i on i.id_abonada = a.id_abonada where a.num_lote ='"
                            + num_lote + "'");
            if (con != null) {
                Document documento = new Document(A4.rotate());
                PdfWriter writer = PdfWriter.getInstance(documento, out);
                FooterPiePaginaiText footer = new FooterPiePaginaiText();
                writer.setPageEvent(footer);

                documento.open();

                try {

                    Image imagenes = Image.getInstance(
                            "C:\\Users\\USUARIO\\Desktop\\simpca\\SIMPCA Coagronorte\\web\\ImagenesR\\coagronorte-slogan.png");
                    imagenes.setAlignment(Element.ALIGN_RIGHT);
                    imagenes.scaleToFit(120, 120);
                    documento.add(imagenes);

                    //documento.add(imagenes);
                    Paragraph par21 = new Paragraph();
                    Font fontDescrip = new Font(Font.FontFamily.TIMES_ROMAN, 20, Font.ITALIC, BaseColor.BLACK);
                    par21.add(new Phrase("Cooperativa Agropecuaria de Norte de Santander", fontDescrip));
                    par21.setAlignment(Element.ALIGN_CENTER);
                    par21.add(new Phrase(Chunk.NEWLINE));
                    documento.add(par21);

                    String nombre = null;
                    String Apellido = null;
                    String cedula = null;
                    while (rs.next()) {
                        nombre = (rs.getString("nombre"));
                        cedula = (rs.getString("cedula"));
                        Apellido = (rs.getString("apellido"));
                    }

                    Paragraph par2 = new Paragraph();
                    Font fontfecha = new Font(Font.FontFamily.TIMES_ROMAN, 13, Font.NORMAL, BaseColor.BLACK);
                    Date date = new Date();
                    DateFormat dateFormat = new SimpleDateFormat("dd/MM/yyyy ");
                    par2.add(new Paragraph("Fecha:  " + dateFormat.format(date), fontfecha));
                    //par2.add(new Paragraph(new Date().toString()));
                    par2.setAlignment(Element.ALIGN_RIGHT);
                    ;
                    documento.add(par2);

                    Paragraph par7 = new Paragraph();
                    Font fontUsuario = new Font(Font.FontFamily.TIMES_ROMAN, 14, Font.NORMAL, BaseColor.BLACK);
                    par7.add(new Phrase("Nombre:   " + nombre + "  " + Apellido, fontUsuario));
                    par7.add(new Phrase("\nc.c:   " + cedula, fontUsuario));
                    par7.setAlignment(Element.ALIGN_LEFT);
                    par7.add(new Phrase(Chunk.NEWLINE));
                    documento.add(par7);

                    Paragraph par3 = new Paragraph();
                    Font fontDescri = new Font(Font.FontFamily.TIMES_ROMAN, 16, Font.NORMAL, BaseColor.BLACK);
                    par3.add(new Phrase("Numero Lote:\n " + num_lote, fontDescri));
                    par3.setAlignment(Element.ALIGN_CENTER);
                    par3.add(new Phrase(Chunk.NEWLINE));
                    documento.add(par3);

                } catch (Exception eX) {
                    eX.getMessage();
                }

                try {

                    Paragraph par1 = new Paragraph();
                    Font fonttitulo = new Font(Font.FontFamily.TIMES_ROMAN, 16, Font.BOLD, BaseColor.BLACK);
                    par1.add(new Phrase(Chunk.NEWLINE));
                    par1.add(new Phrase(Chunk.NEWLINE));
                    par1.add(new Phrase(Chunk.NEWLINE));
                    par1.add(new Phrase("REPORTE ABONADAS", fonttitulo));
                    par1.setAlignment(Element.ALIGN_CENTER);
                    par1.add(new Phrase(Chunk.NEWLINE));

                    documento.add(par1);

                    PdfPTable tabla = new PdfPTable(6);
                    FontFactory.registerDirectories();
                    documento.add(new Paragraph("\n"));
                    PdfPCell celda1 = new PdfPCell(new Paragraph("Fecha",
                            FontFactory.getFont("Times New Roman", 12, Font.BOLD, BaseColor.BLACK)));
                    PdfPCell celda2 = new PdfPCell(new Paragraph("Tipo Abonada",
                            FontFactory.getFont("Times New Roman", 12, Font.BOLD, BaseColor.BLACK)));
                    PdfPCell celda3 = new PdfPCell(new Paragraph("Cantidad Bultos",
                            FontFactory.getFont("Times New Roman", 12, Font.BOLD, BaseColor.BLACK)));
                    PdfPCell celda4 = new PdfPCell(new Paragraph("Costo Bulto",
                            FontFactory.getFont("Times New Roman", 12, Font.BOLD, BaseColor.BLACK)));
                    PdfPCell celda5 = new PdfPCell(new Paragraph("Valor Total Bultos",
                            FontFactory.getFont("Times New Roman", 12, Font.BOLD, BaseColor.BLACK)));
                    PdfPCell celda6 = new PdfPCell(new Paragraph("Unidad",
                            FontFactory.getFont("Times New Roman", 12, Font.BOLD, BaseColor.BLACK)));

                    tabla.addCell(celda1);
                    tabla.addCell(celda2);
                    tabla.addCell(celda3);
                    tabla.addCell(celda4);
                    tabla.addCell(celda5);
                    tabla.addCell(celda6);

                    while (rs2.next()) {

                        tabla.addCell(rs2.getString("fecha_abonada"));
                        tabla.addCell(rs2.getString("nombre_abonada"));
                        tabla.addCell(rs2.getString("cantidad_bulto_aplicado_abonada"));
                        tabla.addCell(rs2.getString("costo_unitario_bulto_abonada"));
                        tabla.addCell(rs2.getString("valor_total_bulto_abonada"));
                        tabla.addCell(rs2.getString("unidad_mano_obra_abonada"));

                    }
                    documento.add(tabla);

                } catch (Exception eX) {
                    eX.getMessage();
                }

                try {
                    Paragraph par4 = new Paragraph();

                    par4.add(new Phrase(Chunk.NEWLINE));
                    par4.add(new Phrase(Chunk.NEWLINE));
                    par4.add(new Phrase(Chunk.NEWLINE));
                    Font fontFooter2 = new Font(Font.FontFamily.TIMES_ROMAN, 16, Font.BOLD, BaseColor.BLACK);
                    par4.add(new Phrase("REPORTE MANO DE OBRA ABONADAS", fontFooter2));
                    par4.setAlignment(Element.ALIGN_CENTER);
                    par4.add(new Phrase(Chunk.NEWLINE));
                    par4.add(new Phrase(Chunk.NEWLINE));
                    documento.add(par4);

                    PdfPTable tabla2 = new PdfPTable(3);
                    FontFactory.registerDirectories();
                    PdfPCell celda10 = new PdfPCell(new Paragraph("Cantidad Mano Obra",
                            FontFactory.getFont("Times New Roman", 12, Font.BOLD, BaseColor.BLACK)));
                    celda10.setHorizontalAlignment(Element.ALIGN_CENTER);
                    PdfPCell celda20 = new PdfPCell(new Paragraph("Costo Mano Obra",
                            FontFactory.getFont("Times New Roman", 12, Font.BOLD, BaseColor.BLACK)));
                    celda20.setHorizontalAlignment(Element.ALIGN_CENTER);
                    PdfPCell celda30 = new PdfPCell(new Paragraph("Valor Total Mano Obra",
                            FontFactory.getFont("Times New Roman", 12, Font.BOLD, BaseColor.BLACK)));
                    celda30.setHorizontalAlignment(Element.ALIGN_CENTER);

                    tabla2.addCell(celda10);
                    tabla2.addCell(celda20);
                    tabla2.addCell(celda30);

                    while (rs3.next()) {
                        tabla2.addCell(rs3.getString("cantidad_mano_obra_abonada"));
                        tabla2.addCell(rs3.getString("costo_unitario_mano_obra_abonada"));
                        tabla2.addCell(rs3.getString("valor_total_mano_obra_abonada"));
                    }

                    documento.add(tabla2);

                } catch (Exception eX) {
                    eX.getMessage();
                }

                try {
                    Paragraph par11 = new Paragraph();

                    par11.add(new Phrase(Chunk.NEWLINE));
                    par11.add(new Phrase(Chunk.NEWLINE));
                    par11.add(new Phrase(Chunk.NEWLINE));
                    Font fontFooter3 = new Font(Font.FontFamily.TIMES_ROMAN, 16, Font.BOLD, BaseColor.BLACK);
                    par11.add(new Phrase("OTROS", fontFooter3));
                    par11.setAlignment(Element.ALIGN_CENTER);
                    par11.add(new Phrase(Chunk.NEWLINE));
                    par11.add(new Phrase(Chunk.NEWLINE));
                    documento.add(par11);

                    PdfPTable tabla3 = new PdfPTable(4);
                    FontFactory.registerDirectories();
                    PdfPCell celda21 = new PdfPCell(new Paragraph("Cantidad Transporte",
                            FontFactory.getFont("Times New Roman", 12, Font.BOLD, BaseColor.BLACK)));
                    celda21.setHorizontalAlignment(Element.ALIGN_CENTER);
                    PdfPCell celda22 = new PdfPCell(new Paragraph("Costo Transporte",
                            FontFactory.getFont("Times New Roman", 12, Font.BOLD, BaseColor.BLACK)));
                    celda22.setHorizontalAlignment(Element.ALIGN_CENTER);
                    PdfPCell celda23 = new PdfPCell(new Paragraph("Valor Total Transporte",
                            FontFactory.getFont("Times New Roman", 12, Font.BOLD, BaseColor.BLACK)));
                    celda23.setHorizontalAlignment(Element.ALIGN_CENTER);
                    PdfPCell celda24 = new PdfPCell(new Paragraph("Valor Total Abonada",
                            FontFactory.getFont("Times New Roman", 12, Font.BOLD, BaseColor.BLACK)));
                    celda24.setHorizontalAlignment(Element.ALIGN_CENTER);

                    tabla3.addCell(celda21);
                    tabla3.addCell(celda22);
                    tabla3.addCell(celda23);
                    tabla3.addCell(celda24);

                    while (rs4.next()) {
                        tabla3.addCell(rs4.getString("cantidad_transporte_abonada"));
                        tabla3.addCell(rs4.getString("costo_transporte_abonada"));
                        tabla3.addCell(rs4.getString("valor_total_transporte_abonada"));
                        tabla3.addCell(rs4.getString("valor_total_abonada"));
                    }

                    documento.add(tabla3);

                } catch (Exception eX) {
                    eX.getMessage();
                }

                try {
                    Paragraph par7 = new Paragraph();

                    par7.add(new Phrase(Chunk.NEWLINE));
                    par7.add(new Phrase(Chunk.NEWLINE));
                    par7.add(new Phrase(Chunk.NEWLINE));
                    Font fontFooter4 = new Font(Font.FontFamily.TIMES_ROMAN, 16, Font.BOLD, BaseColor.BLACK);
                    par7.add(new Phrase("REPORTE INSUMOS ABONADAS", fontFooter4));
                    par7.setAlignment(Element.ALIGN_CENTER);
                    par7.add(new Phrase(Chunk.NEWLINE));
                    par7.add(new Phrase(Chunk.NEWLINE));
                    documento.add(par7);

                    PdfPTable tabla4 = new PdfPTable(6);
                    FontFactory.registerDirectories();
                    PdfPCell celda31 = new PdfPCell(new Paragraph("Tipo",
                            FontFactory.getFont("Times New Roman", 12, Font.BOLD, BaseColor.BLACK)));
                    celda31.setHorizontalAlignment(Element.ALIGN_CENTER);
                    PdfPCell celda32 = new PdfPCell(new Paragraph("Nombre",
                            FontFactory.getFont("Times New Roman", 12, Font.BOLD, BaseColor.BLACK)));
                    celda32.setHorizontalAlignment(Element.ALIGN_CENTER);
                    PdfPCell celda33 = new PdfPCell(new Paragraph("Cantidad",
                            FontFactory.getFont("Times New Roman", 12, Font.BOLD, BaseColor.BLACK)));
                    celda33.setHorizontalAlignment(Element.ALIGN_CENTER);
                    PdfPCell celda34 = new PdfPCell(new Paragraph("Unidad",
                            FontFactory.getFont("Times New Roman", 12, Font.BOLD, BaseColor.BLACK)));
                    celda34.setHorizontalAlignment(Element.ALIGN_CENTER);
                    PdfPCell celda35 = new PdfPCell(new Paragraph("Valor Unitario",
                            FontFactory.getFont("Times New Roman", 12, Font.BOLD, BaseColor.BLACK)));
                    celda35.setHorizontalAlignment(Element.ALIGN_CENTER);
                    PdfPCell celda36 = new PdfPCell(new Paragraph("Valor Total",
                            FontFactory.getFont("Times New Roman", 12, Font.BOLD, BaseColor.BLACK)));
                    celda36.setHorizontalAlignment(Element.ALIGN_CENTER);

                    tabla4.addCell(celda31);
                    tabla4.addCell(celda32);
                    tabla4.addCell(celda33);
                    tabla4.addCell(celda34);
                    tabla4.addCell(celda35);
                    tabla4.addCell(celda36);

                    while (rs5.next()) {
                        tabla4.addCell(rs5.getString("tipo_insumo"));
                        tabla4.addCell(rs5.getString("nombre_insumo"));
                        tabla4.addCell(rs5.getString("cantidad_insumo"));
                        tabla4.addCell(rs5.getString("unidad_insumo"));
                        tabla4.addCell(rs5.getString("valor_unitario_insumo"));
                        tabla4.addCell(rs5.getString("valor_total_insumos"));
                    }

                    documento.add(tabla4);

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

                documento.close();

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

    } finally {
        out.close();
    }
}

From source file:ServletsReportesPDF.ReporteCortaBultos.java

/**
 * Processes requests for both HTTP <code>GET</code> and <code>POST</code>
 * methods./*from  w  w  w .j a v a 2s.com*/
 *
 * @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 {
    response.setContentType("text/html;charset=UTF-8");

    String num_lote = request.getParameter("num_lote");

    response.setContentType("application/pdf");
    OutputStream out = response.getOutputStream();

    try {
        try {

            Connection con = null;
            Statement st = null;
            Statement st2 = null;
            Statement st3 = null;
            Statement st4 = null;
            Statement st5 = null;
            ResultSet rs = null;
            ResultSet rs2 = null;
            ResultSet rs3 = null;
            ResultSet rs4 = null;
            ResultSet rs5 = null;
            Class.forName("com.mysql.jdbc.Driver");
            con = (Connection) DriverManager.getConnection("jdbc:mysql://localhost:3306/simpca", "root",
                    "9510");

            st = (Statement) con.createStatement();
            st2 = (Statement) con.createStatement();
            st3 = (Statement) con.createStatement();
            st4 = (Statement) con.createStatement();
            st5 = (Statement) con.createStatement();
            rs = st.executeQuery(
                    "SELECT usuario.cedula,nombre,apellido,telefono FROM usuario JOIN lote ON lote.usuario_cedula=usuario.cedula WHERE lote.num_lote='"
                            + num_lote + "'");
            rs2 = st2.executeQuery("SELECT * from corta_bultos where num_lote ='" + num_lote + "'");
            rs3 = st3.executeQuery("SELECT * from corta_bultos where num_lote ='" + num_lote + "'");
            rs4 = st4.executeQuery("SELECT * from corta_bultos where num_lote ='" + num_lote + "'");
            rs5 = st5.executeQuery("SELECT * from corta_bultos where num_lote ='" + num_lote + "'");
            if (con != null) {
                Document documento = new Document(A4.rotate());
                PdfWriter writer = PdfWriter.getInstance(documento, out);
                FooterPiePaginaiText footer = new FooterPiePaginaiText();
                writer.setPageEvent(footer);

                documento.open();

                try {

                    Image imagenes = Image.getInstance(
                            "C:\\Users\\USUARIO\\Desktop\\simpca\\SIMPCA Coagronorte\\web\\ImagenesR\\coagronorte-slogan.png");
                    imagenes.setAlignment(Element.ALIGN_RIGHT);
                    imagenes.scaleToFit(120, 120);
                    documento.add(imagenes);

                    //documento.add(imagenes);
                    Paragraph par21 = new Paragraph();
                    Font fontDescrip = new Font(Font.FontFamily.TIMES_ROMAN, 20, Font.ITALIC, BaseColor.BLACK);
                    par21.add(new Phrase("Cooperativa Agropecuaria de Norte de Santander", fontDescrip));
                    par21.setAlignment(Element.ALIGN_CENTER);
                    par21.add(new Phrase(Chunk.NEWLINE));
                    documento.add(par21);

                    String nombre = null;
                    String Apellido = null;
                    String cedula = null;
                    while (rs.next()) {
                        nombre = (rs.getString("nombre"));
                        cedula = (rs.getString("cedula"));
                        Apellido = (rs.getString("apellido"));
                    }

                    Paragraph par2 = new Paragraph();
                    Font fontfecha = new Font(Font.FontFamily.TIMES_ROMAN, 13, Font.NORMAL, BaseColor.BLACK);
                    Date date = new Date();
                    DateFormat dateFormat = new SimpleDateFormat("dd/MM/yyyy ");
                    par2.add(new Paragraph("Fecha:  " + dateFormat.format(date), fontfecha));
                    //par2.add(new Paragraph(new Date().toString()));
                    par2.setAlignment(Element.ALIGN_RIGHT);
                    ;
                    documento.add(par2);

                    Paragraph par7 = new Paragraph();
                    Font fontUsuario = new Font(Font.FontFamily.TIMES_ROMAN, 14, Font.NORMAL, BaseColor.BLACK);
                    par7.add(new Phrase("Nombre:   " + nombre + "  " + Apellido, fontUsuario));
                    par7.add(new Phrase("\nc.c:   " + cedula, fontUsuario));
                    par7.setAlignment(Element.ALIGN_LEFT);
                    par7.add(new Phrase(Chunk.NEWLINE));
                    documento.add(par7);

                    Paragraph par3 = new Paragraph();
                    Font fontDescri = new Font(Font.FontFamily.TIMES_ROMAN, 16, Font.NORMAL, BaseColor.BLACK);
                    par3.add(new Phrase("Numero Lote:\n " + num_lote, fontDescri));
                    par3.setAlignment(Element.ALIGN_CENTER);
                    par3.add(new Phrase(Chunk.NEWLINE));
                    documento.add(par3);

                } catch (Exception eX) {
                    eX.getMessage();
                }

                try {

                    Paragraph par1 = new Paragraph();
                    Font fonttitulo = new Font(Font.FontFamily.TIMES_ROMAN, 16, Font.BOLD, BaseColor.BLACK);
                    par1.add(new Phrase(Chunk.NEWLINE));
                    par1.add(new Phrase(Chunk.NEWLINE));
                    par1.add(new Phrase(Chunk.NEWLINE));
                    par1.add(new Phrase("REPORTE CORTA POR BULTOS", fonttitulo));
                    par1.setAlignment(Element.ALIGN_CENTER);
                    par1.add(new Phrase(Chunk.NEWLINE));

                    documento.add(par1);

                    Paragraph par2 = new Paragraph();
                    Font fonttitulo2 = new Font(Font.FontFamily.TIMES_ROMAN, 16, Font.BOLD, BaseColor.BLACK);
                    par2.add(new Phrase(Chunk.NEWLINE));
                    par2.add(new Phrase(Chunk.NEWLINE));
                    par2.add(new Phrase(Chunk.NEWLINE));
                    par2.add(new Phrase("REPORTE CORTO DE MAQUINA LLANTA Y ORUGA", fonttitulo2));
                    par2.setAlignment(Element.ALIGN_CENTER);
                    par2.add(new Phrase(Chunk.NEWLINE));

                    documento.add(par2);

                    PdfPTable tabla = new PdfPTable(7);
                    FontFactory.registerDirectories();
                    documento.add(new Paragraph("\n"));
                    PdfPCell celda1 = new PdfPCell(new Paragraph("Fecha",
                            FontFactory.getFont("Times New Roman", 12, Font.BOLD, BaseColor.BLACK)));
                    PdfPCell celda2 = new PdfPCell(new Paragraph("Cantidad (Llanta)",
                            FontFactory.getFont("Times New Roman", 12, Font.BOLD, BaseColor.BLACK)));
                    PdfPCell celda3 = new PdfPCell(new Paragraph("Valor Unidad (Llanta)",
                            FontFactory.getFont("Times New Roman", 12, Font.BOLD, BaseColor.BLACK)));
                    PdfPCell celda4 = new PdfPCell(new Paragraph("Valor Total (Llanta)",
                            FontFactory.getFont("Times New Roman", 12, Font.BOLD, BaseColor.BLACK)));
                    PdfPCell celda5 = new PdfPCell(new Paragraph("Cantidad (Oruga)",
                            FontFactory.getFont("Times New Roman", 12, Font.BOLD, BaseColor.BLACK)));
                    PdfPCell celda6 = new PdfPCell(new Paragraph("Valor Unidad (Oruga)",
                            FontFactory.getFont("Times New Roman", 12, Font.BOLD, BaseColor.BLACK)));
                    PdfPCell celda7 = new PdfPCell(new Paragraph("Valor Total (Oruga)",
                            FontFactory.getFont("Times New Roman", 12, Font.BOLD, BaseColor.BLACK)));

                    tabla.addCell(celda1);
                    tabla.addCell(celda2);
                    tabla.addCell(celda3);
                    tabla.addCell(celda4);
                    tabla.addCell(celda5);
                    tabla.addCell(celda6);
                    tabla.addCell(celda7);

                    while (rs2.next()) {

                        tabla.addCell(rs2.getString("fecha_crb"));
                        tabla.addCell(rs2.getString("cantidad_mq_llanta_crb"));
                        tabla.addCell(rs2.getString("valor_mq_llanta_crb"));
                        tabla.addCell(rs2.getString("valor_total_mq_llanta_crb"));
                        tabla.addCell(rs2.getString("cantidad_mq_oruga_crb"));
                        tabla.addCell(rs2.getString("valor_mq_oruga_crb"));
                        tabla.addCell(rs2.getString("valor_total_mq_oruga_crb"));

                    }
                    documento.add(tabla);

                    Paragraph par4 = new Paragraph();

                    par4.add(new Phrase(Chunk.NEWLINE));
                    par4.add(new Phrase(Chunk.NEWLINE));
                    par4.add(new Phrase(Chunk.NEWLINE));
                    Font fontFooter2 = new Font(Font.FontFamily.TIMES_ROMAN, 16, Font.BOLD, BaseColor.BLACK);
                    par4.add(new Phrase("REPORTE COSTOS DE LLENADOR, TRACTOR Y BULTEADOR", fontFooter2));
                    par4.setAlignment(Element.ALIGN_CENTER);
                    par4.add(new Phrase(Chunk.NEWLINE));
                    par4.add(new Phrase(Chunk.NEWLINE));
                    documento.add(par4);

                    PdfPTable tabla2 = new PdfPTable(9);
                    FontFactory.registerDirectories();
                    PdfPCell celda10 = new PdfPCell(new Paragraph("Cantidad (Llenador)",
                            FontFactory.getFont("Times New Roman", 12, Font.BOLD, BaseColor.BLACK)));
                    celda10.setHorizontalAlignment(Element.ALIGN_CENTER);
                    PdfPCell celda20 = new PdfPCell(new Paragraph("Valor Unidad (Llenador)",
                            FontFactory.getFont("Times New Roman", 12, Font.BOLD, BaseColor.BLACK)));
                    celda20.setHorizontalAlignment(Element.ALIGN_CENTER);
                    PdfPCell celda30 = new PdfPCell(new Paragraph("Valor Total (Llenador)",
                            FontFactory.getFont("Times New Roman", 12, Font.BOLD, BaseColor.BLACK)));
                    celda30.setHorizontalAlignment(Element.ALIGN_CENTER);
                    PdfPCell celda40 = new PdfPCell(new Paragraph("Cantidad (Tractor)",
                            FontFactory.getFont("Times New Roman", 12, Font.BOLD, BaseColor.BLACK)));
                    celda40.setHorizontalAlignment(Element.ALIGN_CENTER);
                    PdfPCell celda50 = new PdfPCell(new Paragraph("Valor Unidad (Tractor)",
                            FontFactory.getFont("Times New Roman", 12, Font.BOLD, BaseColor.BLACK)));
                    celda50.setHorizontalAlignment(Element.ALIGN_CENTER);
                    PdfPCell celda60 = new PdfPCell(new Paragraph("Valor Total (Tractor)",
                            FontFactory.getFont("Times New Roman", 12, Font.BOLD, BaseColor.BLACK)));
                    celda60.setHorizontalAlignment(Element.ALIGN_CENTER);
                    PdfPCell celda70 = new PdfPCell(new Paragraph("Cantidad (Bulteador)",
                            FontFactory.getFont("Times New Roman", 12, Font.BOLD, BaseColor.BLACK)));
                    celda70.setHorizontalAlignment(Element.ALIGN_CENTER);
                    PdfPCell celda80 = new PdfPCell(new Paragraph("Valor Unidad (Bulteador)",
                            FontFactory.getFont("Times New Roman", 12, Font.BOLD, BaseColor.BLACK)));
                    celda80.setHorizontalAlignment(Element.ALIGN_CENTER);
                    PdfPCell celda90 = new PdfPCell(new Paragraph("Valor Total (Bulteador)",
                            FontFactory.getFont("Times New Roman", 12, Font.BOLD, BaseColor.BLACK)));
                    celda90.setHorizontalAlignment(Element.ALIGN_CENTER);

                    tabla2.addCell(celda10);
                    tabla2.addCell(celda20);
                    tabla2.addCell(celda30);
                    tabla2.addCell(celda40);
                    tabla2.addCell(celda50);
                    tabla2.addCell(celda60);
                    tabla2.addCell(celda70);
                    tabla2.addCell(celda80);
                    tabla2.addCell(celda90);

                    while (rs3.next()) {
                        tabla2.addCell(rs3.getString("cantidad_llenador_crb"));
                        tabla2.addCell(rs3.getString("valor_llenador_crb"));
                        tabla2.addCell(rs3.getString("valor_total_llenador_crb"));
                        tabla2.addCell(rs3.getString("cantidad_tractor_crb"));
                        tabla2.addCell(rs3.getString("valor_tractor_crb"));
                        tabla2.addCell(rs3.getString("valor_total_tractor_crb"));
                        tabla2.addCell(rs3.getString("cantidad_bulteador_crb"));
                        tabla2.addCell(rs3.getString("valor_bulteador_crb"));
                        tabla2.addCell(rs3.getString("valor_total_bulteador_crb"));
                    }

                    documento.add(tabla2);

                    Paragraph par8 = new Paragraph();

                    par8.add(new Phrase(Chunk.NEWLINE));
                    par8.add(new Phrase(Chunk.NEWLINE));
                    par8.add(new Phrase(Chunk.NEWLINE));
                    Font fontFooter4 = new Font(Font.FontFamily.TIMES_ROMAN, 16, Font.BOLD, BaseColor.BLACK);
                    par8.add(new Phrase("REPORTE COSTOS DE FLETE", fontFooter4));
                    par8.setAlignment(Element.ALIGN_CENTER);
                    par8.add(new Phrase(Chunk.NEWLINE));
                    par8.add(new Phrase(Chunk.NEWLINE));
                    documento.add(par8);

                    PdfPTable tabla3 = new PdfPTable(3);
                    FontFactory.registerDirectories();
                    PdfPCell celda100 = new PdfPCell(new Paragraph("Cantidad (Flete)",
                            FontFactory.getFont("Times New Roman", 12, Font.BOLD, BaseColor.BLACK)));
                    celda100.setHorizontalAlignment(Element.ALIGN_CENTER);
                    PdfPCell celda110 = new PdfPCell(new Paragraph("Valor Unidad (Flete)",
                            FontFactory.getFont("Times New Roman", 12, Font.BOLD, BaseColor.BLACK)));
                    celda110.setHorizontalAlignment(Element.ALIGN_CENTER);
                    PdfPCell celda120 = new PdfPCell(new Paragraph("Valor Total (Flete)",
                            FontFactory.getFont("Times New Roman", 12, Font.BOLD, BaseColor.BLACK)));
                    celda120.setHorizontalAlignment(Element.ALIGN_CENTER);

                    tabla3.addCell(celda100);
                    tabla3.addCell(celda110);
                    tabla3.addCell(celda120);

                    while (rs4.next()) {
                        tabla3.addCell(rs4.getString("cantidad_flete_crb"));
                        tabla3.addCell(rs4.getString("valor_flete_crb"));
                        tabla3.addCell(rs4.getString("valor_total_flete_crb"));
                    }

                    documento.add(tabla3);

                    Paragraph par9 = new Paragraph();

                    par9.add(new Phrase(Chunk.NEWLINE));
                    par9.add(new Phrase(Chunk.NEWLINE));
                    par9.add(new Phrase(Chunk.NEWLINE));
                    Font fontFooter5 = new Font(Font.FontFamily.TIMES_ROMAN, 16, Font.BOLD, BaseColor.BLACK);
                    par9.add(new Phrase("REPORTE COSTOS ADICIONALES", fontFooter5));
                    par9.setAlignment(Element.ALIGN_CENTER);
                    par9.add(new Phrase(Chunk.NEWLINE));
                    par9.add(new Phrase(Chunk.NEWLINE));
                    documento.add(par9);

                    PdfPTable tabla4 = new PdfPTable(6);
                    FontFactory.registerDirectories();
                    PdfPCell celda130 = new PdfPCell(new Paragraph("Valor Cabuya O Nylon",
                            FontFactory.getFont("Times New Roman", 12, Font.BOLD, BaseColor.BLACK)));
                    celda130.setHorizontalAlignment(Element.ALIGN_CENTER);
                    PdfPCell celda140 = new PdfPCell(new Paragraph("Valor Celadura Mquina",
                            FontFactory.getFont("Times New Roman", 12, Font.BOLD, BaseColor.BLACK)));
                    celda140.setHorizontalAlignment(Element.ALIGN_CENTER);
                    PdfPCell celda150 = new PdfPCell(new Paragraph("Valor Alimentacin",
                            FontFactory.getFont("Times New Roman", 12, Font.BOLD, BaseColor.BLACK)));
                    celda150.setHorizontalAlignment(Element.ALIGN_CENTER);
                    PdfPCell celda160 = new PdfPCell(new Paragraph("Valor Administracin",
                            FontFactory.getFont("Times New Roman", 12, Font.BOLD, BaseColor.BLACK)));
                    celda160.setHorizontalAlignment(Element.ALIGN_CENTER);
                    PdfPCell celda170 = new PdfPCell(new Paragraph("Valor Transporte Mquina Oruga",
                            FontFactory.getFont("Times New Roman", 12, Font.BOLD, BaseColor.BLACK)));
                    celda170.setHorizontalAlignment(Element.ALIGN_CENTER);
                    PdfPCell celda180 = new PdfPCell(new Paragraph("Costo Total",
                            FontFactory.getFont("Times New Roman", 12, Font.BOLD, BaseColor.BLACK)));
                    celda180.setHorizontalAlignment(Element.ALIGN_CENTER);

                    tabla4.addCell(celda130);
                    tabla4.addCell(celda140);
                    tabla4.addCell(celda150);
                    tabla4.addCell(celda160);
                    tabla4.addCell(celda170);
                    tabla4.addCell(celda180);

                    while (rs5.next()) {
                        tabla4.addCell(rs5.getString("valor_cabuya_nylon_crb"));
                        tabla4.addCell(rs5.getString("valor_celaduria_maquina_crb"));
                        tabla4.addCell(rs5.getString("valor_alimentacion_crb"));
                        tabla4.addCell(rs5.getString("valor_administracion_crb"));
                        tabla4.addCell(rs5.getString("valor_maquina_oruga_crb"));
                        tabla4.addCell(rs5.getString("valor_total_crb"));
                    }

                    documento.add(tabla4);

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

                documento.close();

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

    } finally {
        out.close();
    }
}

From source file:ServletsReportesPDF.ReporteCortaGranel.java

/**
 * Processes requests for both HTTP <code>GET</code> and <code>POST</code>
 * methods./*  w w w . j  ava2s  .  co  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 {
    response.setContentType("text/html;charset=UTF-8");

    String num_lote = request.getParameter("num_lote");

    response.setContentType("application/pdf");
    OutputStream out = response.getOutputStream();

    try {
        try {

            Connection con = null;
            Statement st = null;
            Statement st2 = null;
            Statement st3 = null;
            Statement st4 = null;
            Statement st5 = null;
            ResultSet rs = null;
            ResultSet rs2 = null;
            ResultSet rs3 = null;
            ResultSet rs4 = null;
            ResultSet rs5 = null;
            Class.forName("com.mysql.jdbc.Driver");
            con = (Connection) DriverManager.getConnection("jdbc:mysql://localhost:3306/simpca", "root",
                    "9510");

            st = (Statement) con.createStatement();
            st2 = (Statement) con.createStatement();
            st3 = (Statement) con.createStatement();
            st4 = (Statement) con.createStatement();
            st5 = (Statement) con.createStatement();
            rs = st.executeQuery(
                    "SELECT usuario.cedula,nombre,apellido,telefono FROM usuario JOIN lote ON lote.usuario_cedula=usuario.cedula WHERE lote.num_lote='"
                            + num_lote + "'");
            rs2 = st2.executeQuery("SELECT * from corta_granel where num_lote ='" + num_lote + "'");
            rs3 = st3.executeQuery("SELECT * from corta_granel where num_lote ='" + num_lote + "'");
            rs4 = st4.executeQuery("SELECT * from corta_granel where num_lote ='" + num_lote + "'");
            rs5 = st5.executeQuery("SELECT * from corta_granel where num_lote ='" + num_lote + "'");
            if (con != null) {
                Document documento = new Document(A4.rotate());
                PdfWriter writer = PdfWriter.getInstance(documento, out);
                FooterPiePaginaiText footer = new FooterPiePaginaiText();
                writer.setPageEvent(footer);

                documento.open();

                try {

                    Image imagenes = Image.getInstance(
                            "C:\\Users\\USUARIO\\Desktop\\simpca\\SIMPCA Coagronorte\\web\\ImagenesR\\coagronorte-slogan.png");
                    imagenes.setAlignment(Element.ALIGN_RIGHT);
                    imagenes.scaleToFit(120, 120);
                    documento.add(imagenes);

                    //documento.add(imagenes);
                    Paragraph par21 = new Paragraph();
                    Font fontDescrip = new Font(Font.FontFamily.TIMES_ROMAN, 20, Font.ITALIC, BaseColor.BLACK);
                    par21.add(new Phrase("Cooperativa Agropecuaria de Norte de Santander", fontDescrip));
                    par21.setAlignment(Element.ALIGN_CENTER);
                    par21.add(new Phrase(Chunk.NEWLINE));
                    documento.add(par21);

                    String nombre = null;
                    String Apellido = null;
                    String cedula = null;
                    while (rs.next()) {
                        nombre = (rs.getString("nombre"));
                        cedula = (rs.getString("cedula"));
                        Apellido = (rs.getString("apellido"));
                    }

                    Paragraph par2 = new Paragraph();
                    Font fontfecha = new Font(Font.FontFamily.TIMES_ROMAN, 13, Font.NORMAL, BaseColor.BLACK);
                    Date date = new Date();
                    DateFormat dateFormat = new SimpleDateFormat("dd/MM/yyyy ");
                    par2.add(new Paragraph("Fecha:  " + dateFormat.format(date), fontfecha));
                    //par2.add(new Paragraph(new Date().toString()));
                    par2.setAlignment(Element.ALIGN_RIGHT);
                    ;
                    documento.add(par2);

                    Paragraph par7 = new Paragraph();
                    Font fontUsuario = new Font(Font.FontFamily.TIMES_ROMAN, 14, Font.NORMAL, BaseColor.BLACK);
                    par7.add(new Phrase("Nombre:   " + nombre + "  " + Apellido, fontUsuario));
                    par7.add(new Phrase("\nc.c:   " + cedula, fontUsuario));
                    par7.setAlignment(Element.ALIGN_LEFT);
                    par7.add(new Phrase(Chunk.NEWLINE));
                    documento.add(par7);

                    Paragraph par3 = new Paragraph();
                    Font fontDescri = new Font(Font.FontFamily.TIMES_ROMAN, 16, Font.NORMAL, BaseColor.BLACK);
                    par3.add(new Phrase("Numero Lote:\n " + num_lote, fontDescri));
                    par3.setAlignment(Element.ALIGN_CENTER);
                    par3.add(new Phrase(Chunk.NEWLINE));
                    documento.add(par3);

                } catch (Exception eX) {
                    eX.getMessage();
                }

                try {

                    Paragraph par1 = new Paragraph();
                    Font fonttitulo = new Font(Font.FontFamily.TIMES_ROMAN, 16, Font.BOLD, BaseColor.BLACK);
                    par1.add(new Phrase(Chunk.NEWLINE));
                    par1.add(new Phrase(Chunk.NEWLINE));
                    par1.add(new Phrase(Chunk.NEWLINE));
                    par1.add(new Phrase("REPORTE CORTA POR GRANEL", fonttitulo));
                    par1.setAlignment(Element.ALIGN_CENTER);
                    par1.add(new Phrase(Chunk.NEWLINE));

                    documento.add(par1);

                    Paragraph par2 = new Paragraph();
                    Font fonttitulo2 = new Font(Font.FontFamily.TIMES_ROMAN, 16, Font.BOLD, BaseColor.BLACK);
                    par2.add(new Phrase(Chunk.NEWLINE));
                    par2.add(new Phrase(Chunk.NEWLINE));
                    par2.add(new Phrase(Chunk.NEWLINE));
                    par2.add(new Phrase("REPORTE CORTO DE MAQUINA LLANTA", fonttitulo2));
                    par2.setAlignment(Element.ALIGN_CENTER);
                    par2.add(new Phrase(Chunk.NEWLINE));

                    documento.add(par2);

                    PdfPTable tabla = new PdfPTable(4);
                    FontFactory.registerDirectories();
                    documento.add(new Paragraph("\n"));
                    PdfPCell celda1 = new PdfPCell(new Paragraph("Fecha",
                            FontFactory.getFont("Times New Roman", 12, Font.BOLD, BaseColor.BLACK)));
                    PdfPCell celda2 = new PdfPCell(new Paragraph("Cantidad (Llanta)",
                            FontFactory.getFont("Times New Roman", 12, Font.BOLD, BaseColor.BLACK)));
                    PdfPCell celda3 = new PdfPCell(new Paragraph("Valor Unidad (Llanta)",
                            FontFactory.getFont("Times New Roman", 12, Font.BOLD, BaseColor.BLACK)));
                    PdfPCell celda4 = new PdfPCell(new Paragraph("Valor Total (Llanta)",
                            FontFactory.getFont("Times New Roman", 12, Font.BOLD, BaseColor.BLACK)));

                    tabla.addCell(celda1);
                    tabla.addCell(celda2);
                    tabla.addCell(celda3);
                    tabla.addCell(celda4);

                    while (rs2.next()) {

                        tabla.addCell(rs2.getString("fecha_crg"));
                        tabla.addCell(rs2.getString("cantidad_mq_llanta_crg"));
                        tabla.addCell(rs2.getString("valor_mq_llanta_crg"));
                        tabla.addCell(rs2.getString("valor_total_mq_llanta_crg"));

                    }
                    documento.add(tabla);

                    Paragraph par4 = new Paragraph();

                    par4.add(new Phrase(Chunk.NEWLINE));
                    par4.add(new Phrase(Chunk.NEWLINE));
                    par4.add(new Phrase(Chunk.NEWLINE));
                    Font fontFooter2 = new Font(Font.FontFamily.TIMES_ROMAN, 16, Font.BOLD, BaseColor.BLACK);
                    par4.add(new Phrase("REPORTE CORTO DE MAQUINA ORUGA", fontFooter2));
                    par4.setAlignment(Element.ALIGN_CENTER);
                    par4.add(new Phrase(Chunk.NEWLINE));
                    par4.add(new Phrase(Chunk.NEWLINE));
                    documento.add(par4);

                    PdfPTable tabla2 = new PdfPTable(3);
                    FontFactory.registerDirectories();

                    PdfPCell celda5 = new PdfPCell(new Paragraph("Cantidad (Oruga)",
                            FontFactory.getFont("Times New Roman", 12, Font.BOLD, BaseColor.BLACK)));
                    PdfPCell celda6 = new PdfPCell(new Paragraph("Valor Unidad (Oruga)",
                            FontFactory.getFont("Times New Roman", 12, Font.BOLD, BaseColor.BLACK)));
                    PdfPCell celda7 = new PdfPCell(new Paragraph("Valor Total (Oruga)",
                            FontFactory.getFont("Times New Roman", 12, Font.BOLD, BaseColor.BLACK)));

                    tabla2.addCell(celda5);
                    tabla2.addCell(celda6);
                    tabla2.addCell(celda7);

                    while (rs3.next()) {
                        tabla2.addCell(rs3.getString("cantidad_mq_oruga_crg"));
                        tabla2.addCell(rs3.getString("valor_mq_oruga_crg"));
                        tabla2.addCell(rs3.getString("valor_total_mq_oruga_crg"));
                    }

                    documento.add(tabla2);

                    Paragraph par8 = new Paragraph();

                    par8.add(new Phrase(Chunk.NEWLINE));
                    par8.add(new Phrase(Chunk.NEWLINE));
                    par8.add(new Phrase(Chunk.NEWLINE));
                    Font fontFooter4 = new Font(Font.FontFamily.TIMES_ROMAN, 16, Font.BOLD, BaseColor.BLACK);
                    par8.add(new Phrase("REPORTE COSTOS DE FLETE", fontFooter4));
                    par8.setAlignment(Element.ALIGN_CENTER);
                    par8.add(new Phrase(Chunk.NEWLINE));
                    par8.add(new Phrase(Chunk.NEWLINE));
                    documento.add(par8);

                    PdfPTable tabla3 = new PdfPTable(3);
                    FontFactory.registerDirectories();
                    PdfPCell celda100 = new PdfPCell(new Paragraph("Cantidad (Flete)",
                            FontFactory.getFont("Times New Roman", 12, Font.BOLD, BaseColor.BLACK)));
                    celda100.setHorizontalAlignment(Element.ALIGN_CENTER);
                    PdfPCell celda110 = new PdfPCell(new Paragraph("Valor Unidad (Flete)",
                            FontFactory.getFont("Times New Roman", 12, Font.BOLD, BaseColor.BLACK)));
                    celda110.setHorizontalAlignment(Element.ALIGN_CENTER);
                    PdfPCell celda120 = new PdfPCell(new Paragraph("Valor Total (Flete)",
                            FontFactory.getFont("Times New Roman", 12, Font.BOLD, BaseColor.BLACK)));
                    celda120.setHorizontalAlignment(Element.ALIGN_CENTER);

                    tabla3.addCell(celda100);
                    tabla3.addCell(celda110);
                    tabla3.addCell(celda120);

                    while (rs4.next()) {
                        tabla3.addCell(rs4.getString("cantidad_flete_crg"));
                        tabla3.addCell(rs4.getString("valor_flete_crg"));
                        tabla3.addCell(rs4.getString("valor_total_flete_crg"));
                    }

                    documento.add(tabla3);

                    Paragraph par9 = new Paragraph();

                    par9.add(new Phrase(Chunk.NEWLINE));
                    par9.add(new Phrase(Chunk.NEWLINE));
                    par9.add(new Phrase(Chunk.NEWLINE));
                    Font fontFooter5 = new Font(Font.FontFamily.TIMES_ROMAN, 16, Font.BOLD, BaseColor.BLACK);
                    par9.add(new Phrase("REPORTE COSTOS ADICIONALES", fontFooter5));
                    par9.setAlignment(Element.ALIGN_CENTER);
                    par9.add(new Phrase(Chunk.NEWLINE));
                    par9.add(new Phrase(Chunk.NEWLINE));
                    documento.add(par9);

                    PdfPTable tabla4 = new PdfPTable(4);
                    FontFactory.registerDirectories();
                    PdfPCell celda150 = new PdfPCell(new Paragraph("Valor Alimentacin",
                            FontFactory.getFont("Times New Roman", 12, Font.BOLD, BaseColor.BLACK)));
                    celda150.setHorizontalAlignment(Element.ALIGN_CENTER);
                    PdfPCell celda140 = new PdfPCell(new Paragraph("Valor Celadura Mquina",
                            FontFactory.getFont("Times New Roman", 12, Font.BOLD, BaseColor.BLACK)));
                    celda140.setHorizontalAlignment(Element.ALIGN_CENTER);

                    PdfPCell celda160 = new PdfPCell(new Paragraph("Valor Administracin",
                            FontFactory.getFont("Times New Roman", 12, Font.BOLD, BaseColor.BLACK)));
                    celda160.setHorizontalAlignment(Element.ALIGN_CENTER);
                    PdfPCell celda170 = new PdfPCell(new Paragraph("Costo Total",
                            FontFactory.getFont("Times New Roman", 12, Font.BOLD, BaseColor.BLACK)));
                    celda170.setHorizontalAlignment(Element.ALIGN_CENTER);

                    tabla4.addCell(celda140);
                    tabla4.addCell(celda150);
                    tabla4.addCell(celda160);
                    tabla4.addCell(celda170);

                    while (rs5.next()) {
                        tabla4.addCell(rs5.getString("valor_celaduria_maquina_crg"));
                        tabla4.addCell(rs5.getString("valor_alimentacion_crg"));
                        tabla4.addCell(rs5.getString("valor_administracion_crg"));
                        tabla4.addCell(rs5.getString("valor_total_crg"));
                    }

                    documento.add(tabla4);

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

                documento.close();

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

    } finally {
        out.close();
    }
}

From source file:ServletsReportesPDF.ReporteCortaMaleza.java

/**
 * Processes requests for both HTTP <code>GET</code> and <code>POST</code>
 * methods.//from ww  w.  ja  v  a 2  s  . 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 {
    response.setContentType("text/html;charset=UTF-8");

    String num_lote = request.getParameter("num_lote");

    response.setContentType("application/pdf");
    OutputStream out = response.getOutputStream();

    try {
        try {

            Connection con = null;
            Statement st = null;
            Statement st2 = null;
            Statement st3 = null;
            ResultSet rs = null;
            ResultSet rs2 = null;
            ResultSet rs3 = null;
            Class.forName("com.mysql.jdbc.Driver");
            con = (Connection) DriverManager.getConnection("jdbc:mysql://localhost:3306/simpca", "root",
                    "9510");

            st = (Statement) con.createStatement();
            st2 = (Statement) con.createStatement();
            st3 = (Statement) con.createStatement();
            rs = st.executeQuery(
                    "SELECT usuario.cedula,nombre,apellido,telefono FROM usuario JOIN lote ON lote.usuario_cedula=usuario.cedula WHERE lote.num_lote='"
                            + num_lote + "'");
            rs2 = st2.executeQuery("SELECT * from manejo_residuos_cosecha where num_lote ='" + num_lote + "'");
            rs3 = st3.executeQuery("SELECT * from manejo_residuos_cosecha where num_lote ='" + num_lote + "'");
            if (con != null) {
                Document documento = new Document(A4.rotate());
                PdfWriter writer = PdfWriter.getInstance(documento, out);
                FooterPiePaginaiText footer = new FooterPiePaginaiText();
                writer.setPageEvent(footer);

                documento.open();

                try {

                    Image imagenes = Image.getInstance(
                            "C:\\Users\\USUARIO\\Desktop\\simpca\\SIMPCA Coagronorte\\web\\ImagenesR\\coagronorte-slogan.png");
                    imagenes.setAlignment(Element.ALIGN_RIGHT);
                    imagenes.scaleToFit(120, 120);
                    documento.add(imagenes);

                    //documento.add(imagenes);
                    Paragraph par21 = new Paragraph();
                    Font fontDescrip = new Font(Font.FontFamily.TIMES_ROMAN, 20, Font.ITALIC, BaseColor.BLACK);
                    par21.add(new Phrase("Cooperativa Agropecuaria de Norte de Santander", fontDescrip));
                    par21.setAlignment(Element.ALIGN_CENTER);
                    par21.add(new Phrase(Chunk.NEWLINE));
                    documento.add(par21);

                    String nombre = null;
                    String Apellido = null;
                    String cedula = null;
                    while (rs.next()) {
                        nombre = (rs.getString("nombre"));
                        cedula = (rs.getString("cedula"));
                        Apellido = (rs.getString("apellido"));
                    }

                    Paragraph par2 = new Paragraph();
                    Font fontfecha = new Font(Font.FontFamily.TIMES_ROMAN, 13, Font.NORMAL, BaseColor.BLACK);
                    Date date = new Date();
                    DateFormat dateFormat = new SimpleDateFormat("dd/MM/yyyy ");
                    par2.add(new Paragraph("Fecha:  " + dateFormat.format(date), fontfecha));
                    //par2.add(new Paragraph(new Date().toString()));
                    par2.setAlignment(Element.ALIGN_RIGHT);
                    ;
                    documento.add(par2);

                    Paragraph par7 = new Paragraph();
                    Font fontUsuario = new Font(Font.FontFamily.TIMES_ROMAN, 14, Font.NORMAL, BaseColor.BLACK);
                    par7.add(new Phrase("Nombre:   " + nombre + "  " + Apellido, fontUsuario));
                    par7.add(new Phrase("\nc.c:   " + cedula, fontUsuario));
                    par7.setAlignment(Element.ALIGN_LEFT);
                    par7.add(new Phrase(Chunk.NEWLINE));
                    documento.add(par7);

                    Paragraph par3 = new Paragraph();
                    Font fontDescri = new Font(Font.FontFamily.TIMES_ROMAN, 16, Font.NORMAL, BaseColor.BLACK);
                    par3.add(new Phrase("Numero Lote:\n " + num_lote, fontDescri));
                    par3.setAlignment(Element.ALIGN_CENTER);
                    par3.add(new Phrase(Chunk.NEWLINE));
                    documento.add(par3);

                } catch (Exception eX) {
                    eX.getMessage();
                }

                try {

                    Paragraph par1 = new Paragraph();
                    Font fonttitulo = new Font(Font.FontFamily.TIMES_ROMAN, 16, Font.BOLD, BaseColor.BLACK);
                    par1.add(new Phrase(Chunk.NEWLINE));
                    par1.add(new Phrase(Chunk.NEWLINE));
                    par1.add(new Phrase(Chunk.NEWLINE));
                    par1.add(new Phrase("REPORTE MANEJO RESIDUOS DE COSECHA", fonttitulo));
                    par1.setAlignment(Element.ALIGN_CENTER);
                    par1.add(new Phrase(Chunk.NEWLINE));

                    documento.add(par1);

                    PdfPTable tabla = new PdfPTable(5);
                    FontFactory.registerDirectories();
                    documento.add(new Paragraph("\n"));
                    PdfPCell celda1 = new PdfPCell(new Paragraph("Fecha",
                            FontFactory.getFont("Times New Roman", 12, Font.BOLD, BaseColor.BLACK)));
                    PdfPCell celda2 = new PdfPCell(new Paragraph("Tipo de Manejo",
                            FontFactory.getFont("Times New Roman", 12, Font.BOLD, BaseColor.BLACK)));
                    PdfPCell celda3 = new PdfPCell(new Paragraph("Cantidad Hectreas",
                            FontFactory.getFont("Times New Roman", 12, Font.BOLD, BaseColor.BLACK)));
                    PdfPCell celda4 = new PdfPCell(new Paragraph("Valor de Hectreas",
                            FontFactory.getFont("Times New Roman", 12, Font.BOLD, BaseColor.BLACK)));
                    PdfPCell celda5 = new PdfPCell(new Paragraph("Valor Total",
                            FontFactory.getFont("Times New Roman", 12, Font.BOLD, BaseColor.BLACK)));

                    tabla.addCell(celda1);
                    tabla.addCell(celda2);
                    tabla.addCell(celda3);
                    tabla.addCell(celda4);
                    tabla.addCell(celda5);

                    while (rs2.next()) {

                        tabla.addCell(rs2.getString("fecha_mrc"));
                        tabla.addCell(rs2.getString("tipo_manejo_mrc"));
                        tabla.addCell(rs2.getString("cantidad_hectareas_mrc"));
                        tabla.addCell(rs2.getString("valor_hectareas_mrc"));
                        tabla.addCell(rs2.getString("valor_total_mrc"));

                    }
                    documento.add(tabla);

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

                documento.close();

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

    } finally {
        out.close();
    }
}

From source file:ServletsReportesPDF.ReporteDespalille.java

/**
 * Processes requests for both HTTP <code>GET</code> and <code>POST</code>
 * methods.//from   w  ww  .  j ava2 s  .  com
 *
 * @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 {
    response.setContentType("text/html;charset=UTF-8");

    String num_lote = request.getParameter("num_lote");

    response.setContentType("application/pdf");
    OutputStream out = response.getOutputStream();

    try {
        try {

            Connection con = null;
            Statement st = null;
            Statement st2 = null;
            ResultSet rs = null;
            ResultSet rs2 = null;
            Class.forName("com.mysql.jdbc.Driver");
            con = (Connection) DriverManager.getConnection("jdbc:mysql://localhost:3306/simpca", "root",
                    "9510");

            st = (Statement) con.createStatement();
            st2 = (Statement) con.createStatement();
            rs = st.executeQuery(
                    "SELECT usuario.cedula,nombre,apellido,telefono FROM usuario JOIN lote ON lote.usuario_cedula=usuario.cedula WHERE lote.num_lote='"
                            + num_lote + "'");
            rs2 = st2.executeQuery("SELECT * from despalille where num_lote ='" + num_lote + "'");
            if (con != null) {
                Document documento = new Document(A4.rotate());
                PdfWriter writer = PdfWriter.getInstance(documento, out);
                FooterPiePaginaiText footer = new FooterPiePaginaiText();
                writer.setPageEvent(footer);

                documento.open();

                try {

                    Image imagenes = Image.getInstance(
                            "C:\\Users\\USUARIO\\Desktop\\simpca\\SIMPCA Coagronorte\\web\\ImagenesR\\coagronorte-slogan.png");
                    imagenes.setAlignment(Element.ALIGN_RIGHT);
                    imagenes.scaleToFit(120, 120);
                    documento.add(imagenes);

                    //documento.add(imagenes);
                    Paragraph par21 = new Paragraph();
                    Font fontDescrip = new Font(Font.FontFamily.TIMES_ROMAN, 20, Font.ITALIC, BaseColor.BLACK);
                    par21.add(new Phrase("Cooperativa Agropecuaria de Norte de Santander", fontDescrip));
                    par21.setAlignment(Element.ALIGN_CENTER);
                    par21.add(new Phrase(Chunk.NEWLINE));
                    documento.add(par21);

                    String nombre = null;
                    String Apellido = null;
                    String cedula = null;
                    while (rs.next()) {
                        nombre = (rs.getString("nombre"));
                        cedula = (rs.getString("cedula"));
                        Apellido = (rs.getString("apellido"));
                    }

                    Paragraph par2 = new Paragraph();
                    Font fontfecha = new Font(Font.FontFamily.TIMES_ROMAN, 13, Font.NORMAL, BaseColor.BLACK);
                    Date date = new Date();
                    DateFormat dateFormat = new SimpleDateFormat("dd/MM/yyyy ");
                    par2.add(new Paragraph("Fecha:  " + dateFormat.format(date), fontfecha));
                    //par2.add(new Paragraph(new Date().toString()));
                    par2.setAlignment(Element.ALIGN_RIGHT);
                    ;
                    documento.add(par2);

                    Paragraph par7 = new Paragraph();
                    Font fontUsuario = new Font(Font.FontFamily.TIMES_ROMAN, 14, Font.NORMAL, BaseColor.BLACK);
                    par7.add(new Phrase("Nombre:   " + nombre + "  " + Apellido, fontUsuario));
                    par7.add(new Phrase("\nc.c:   " + cedula, fontUsuario));
                    par7.setAlignment(Element.ALIGN_LEFT);
                    par7.add(new Phrase(Chunk.NEWLINE));
                    documento.add(par7);

                    Paragraph par3 = new Paragraph();
                    Font fontDescri = new Font(Font.FontFamily.TIMES_ROMAN, 16, Font.NORMAL, BaseColor.BLACK);
                    par3.add(new Phrase("Numero Lote:\n " + num_lote, fontDescri));
                    par3.setAlignment(Element.ALIGN_CENTER);
                    par3.add(new Phrase(Chunk.NEWLINE));
                    documento.add(par3);

                } catch (Exception eX) {
                    eX.getMessage();
                }

                try {

                    Paragraph par1 = new Paragraph();
                    Font fonttitulo = new Font(Font.FontFamily.TIMES_ROMAN, 16, Font.BOLD, BaseColor.BLACK);
                    par1.add(new Phrase(Chunk.NEWLINE));
                    par1.add(new Phrase(Chunk.NEWLINE));
                    par1.add(new Phrase(Chunk.NEWLINE));
                    par1.add(new Phrase("REPORTE DESPALILLE", fonttitulo));
                    par1.setAlignment(Element.ALIGN_CENTER);
                    par1.add(new Phrase(Chunk.NEWLINE));

                    documento.add(par1);

                    PdfPTable tabla = new PdfPTable(4);
                    FontFactory.registerDirectories();
                    documento.add(new Paragraph("\n"));
                    PdfPCell celda1 = new PdfPCell(new Paragraph("Fecha",
                            FontFactory.getFont("Times New Roman", 12, Font.BOLD, BaseColor.BLACK)));
                    PdfPCell celda2 = new PdfPCell(new Paragraph("Cantidad Jornales",
                            FontFactory.getFont("Times New Roman", 12, Font.BOLD, BaseColor.BLACK)));
                    PdfPCell celda3 = new PdfPCell(new Paragraph("Valor Unitario Jornal",
                            FontFactory.getFont("Times New Roman", 12, Font.BOLD, BaseColor.BLACK)));
                    PdfPCell celda4 = new PdfPCell(new Paragraph("Valor Total Jornal",
                            FontFactory.getFont("Times New Roman", 12, Font.BOLD, BaseColor.BLACK)));

                    tabla.addCell(celda1);
                    tabla.addCell(celda2);
                    tabla.addCell(celda3);
                    tabla.addCell(celda4);

                    while (rs2.next()) {

                        tabla.addCell(rs2.getString("fecha_dsp"));
                        tabla.addCell(rs2.getString("cantidad_mano_obra_dsp"));
                        tabla.addCell(rs2.getString("precio_mano_obra_dsp"));
                        tabla.addCell(rs2.getString("total_mano_obra_dsp"));

                    }
                    documento.add(tabla);

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

                documento.close();

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

    } finally {
        out.close();
    }
}