Example usage for com.itextpdf.text Rectangle Rectangle

List of usage examples for com.itextpdf.text Rectangle Rectangle

Introduction

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

Prototype

Rectangle

Source Link

Usage

From source file:Almacen.formatosPedido.java

private void cabeceraCompra(PDF reporte, BaseFont bf, PdfPTable tabla, Almacen almacen, Orden ord) {
    Session session = HibernateUtil.getSessionFactory().openSession();
    try {/*w w  w . j  a  v a 2s  .  c o m*/
        reporte.contenido.setLineWidth(0.5f);
        reporte.contenido.setColorStroke(new GrayColor(0.2f));
        reporte.contenido.setColorFill(new GrayColor(0.9f));
        reporte.contenido.roundRectangle(35, 755, 280, 10, 0);
        reporte.contenido.roundRectangle(35, 735, 280, 20, 0);
        ////*2
        reporte.contenido.roundRectangle(35, 388, 280, 10, 0);
        reporte.contenido.roundRectangle(35, 368, 280, 20, 0);
        ////         
        reporte.inicioTexto();
        reporte.contenido.setFontAndSize(bf, 13);
        reporte.contenido.setColorFill(BaseColor.BLACK);
        reporte.agregaObjeto(reporte.crearImagen("imagenes/grande300115.jpg", 335, -23, 30));
        /*2*/reporte.agregarImagen(reporte.crearImagen("imagenes/grande300115.jpg", 100, -390, 30));//-390//-375
        reporte.contenido.setFontAndSize(bf, 12);
        reporte.contenido.setColorFill(BaseColor.BLACK);
        if (miAlmacen.getTipoMovimiento() == 1) {
            if (miAlmacen.getOperacion() == 1 || miAlmacen.getOperacion() == 2 || miAlmacen.getOperacion() == 3)
                reporte.contenido.showTextAligned(
                        PdfContentByte.ALIGN_LEFT, "Movimiento en Almacn (Entrada de Material): "
                                + almacen.getIdAlmacen() + " Pedido:" + almacen.getPedido().getIdPedido(),
                        35, 767, 0);
            if (miAlmacen.getOperacion() == 5)
                reporte.contenido.showTextAligned(
                        PdfContentByte.ALIGN_LEFT, "Movimientos de Almacn (Devolucin de ventas): "
                                + almacen.getIdAlmacen() + " Pedido:" + almacen.getPedido().getIdPedido(),
                        35, 767, 0);
            ////*2
            if (miAlmacen.getOperacion() == 1 || miAlmacen.getOperacion() == 2 || miAlmacen.getOperacion() == 3)
                reporte.contenido.showTextAligned(
                        PdfContentByte.ALIGN_LEFT, "Movimiento en Almacn (Entrada de Material): "
                                + almacen.getIdAlmacen() + " Pedido:" + almacen.getPedido().getIdPedido(),
                        35, 400, 0);
            if (miAlmacen.getOperacion() == 6)
                reporte.contenido.showTextAligned(
                        PdfContentByte.ALIGN_LEFT, "Movimientos de Almacn (Devolucin de ventas): "
                                + almacen.getIdAlmacen() + " Pedido:" + almacen.getPedido().getIdPedido(),
                        35, 400, 0);
            /////
        } else {
            if (miAlmacen.getOperacion() == 1 || miAlmacen.getOperacion() == 2 || miAlmacen.getOperacion() == 3)
                reporte.contenido.showTextAligned(PdfContentByte.ALIGN_LEFT,
                        "Movimiento de Almacn (Devolucin de material a proveedor): "
                                + almacen.getIdAlmacen() + " Pedido:" + almacen.getPedido().getIdPedido(),
                        35, 767, 0);
            if (miAlmacen.getOperacion() == 6)
                reporte.contenido.showTextAligned(
                        PdfContentByte.ALIGN_LEFT, "Movimientos de Almacn (Entrega de ventas): "
                                + almacen.getIdAlmacen() + " Pedido:" + almacen.getPedido().getIdPedido(),
                        35, 767, 0);
            ///**2
            if (miAlmacen.getOperacion() == 1 || miAlmacen.getOperacion() == 2 || miAlmacen.getOperacion() == 3)
                reporte.contenido.showTextAligned(PdfContentByte.ALIGN_LEFT,
                        "Movimiento de Almacn (Devolucin de material a proveedor): "
                                + almacen.getIdAlmacen() + " Pedido:" + almacen.getPedido().getIdPedido(),
                        35, 400, 0);
            if (miAlmacen.getOperacion() == 6)
                reporte.contenido.showTextAligned(
                        PdfContentByte.ALIGN_LEFT, "Movimientos de Almacn (Entrega de ventas): "
                                + almacen.getIdAlmacen() + " Pedido:" + almacen.getPedido().getIdPedido(),
                        35, 400, 0);
            ///
        }

        reporte.contenido.setFontAndSize(bf, 7);
        reporte.contenido.showTextAligned(PdfContentByte.ALIGN_RIGHT,
                "Fecha:" + new SimpleDateFormat("dd-MM-yyyy HH:mm:ss").format(new Date()), 306, 757, 0);
        /*2*/reporte.contenido.showTextAligned(PdfContentByte.ALIGN_RIGHT,
                "Fecha:" + new SimpleDateFormat("dd-MM-yyyy HH:mm:ss").format(new Date()), 306, 390, 0);
        if (ord != null)
            ord = (Orden) session.get(Orden.class, ord.getIdOrden());

        //************************datos de movimiento****************************
        DateFormat dateFormat = new SimpleDateFormat("dd-MM-yyyy");//YYYY-MM-DD HH:MM:SS
        reporte.contenido.showTextAligned(PdfContentByte.ALIGN_LEFT, "Materiales y Refacciones del Almacn",
                40, 757, 0);
        /*2*/reporte.contenido.showTextAligned(PdfContentByte.ALIGN_LEFT,
                "Materiales y Refacciones del Almacn", 40, 390, 0);
        reporte.contenido.showTextAligned(PdfContentByte.ALIGN_LEFT,
                "N. Movimiento: " + almacen.getIdAlmacen(), 40, 747, 0);
        /*2*/reporte.contenido.showTextAligned(PdfContentByte.ALIGN_LEFT,
                "N. Movimiento: " + almacen.getIdAlmacen(), 40, 380, 0);
        if (almacen.getTipoMovimiento() == 1)
            reporte.contenido.showTextAligned(PdfContentByte.ALIGN_LEFT, "Tipo de Movimiento : Entrada", 120,
                    747, 0);
        else
            reporte.contenido.showTextAligned(PdfContentByte.ALIGN_LEFT, "Tipo de Movimiento : Salida", 120,
                    747, 0);
        ////2
        if (almacen.getTipoMovimiento() == 1)
            reporte.contenido.showTextAligned(PdfContentByte.ALIGN_LEFT, "Tipo de Movimiento : Entrada", 120,
                    380, 0);
        else
            reporte.contenido.showTextAligned(PdfContentByte.ALIGN_LEFT, "Tipo de Movimiento : Salida", 120,
                    380, 0);
        ////
        if (almacen.getOperacion() == 1)
            reporte.contenido.showTextAligned(PdfContentByte.ALIGN_LEFT, "Tipo de Operacin : Pedido", 220,
                    747, 0);
        if (almacen.getOperacion() == 2)
            reporte.contenido.showTextAligned(PdfContentByte.ALIGN_LEFT, "Tipo de Operacin : Pedido E.", 220,
                    747, 0);
        if (almacen.getOperacion() == 3)
            reporte.contenido.showTextAligned(PdfContentByte.ALIGN_LEFT, "Tipo de Operacin : Pedido A.", 220,
                    747, 0);
        if (almacen.getOperacion() == 6)
            reporte.contenido.showTextAligned(PdfContentByte.ALIGN_LEFT, "Tipo de Operacin : Venta", 220, 747,
                    0);
        ////2
        if (almacen.getOperacion() == 1)
            reporte.contenido.showTextAligned(PdfContentByte.ALIGN_LEFT, "Tipo de Operacin : Pedido", 220,
                    380, 0);
        if (almacen.getOperacion() == 2)
            reporte.contenido.showTextAligned(PdfContentByte.ALIGN_LEFT, "Tipo de Operacin : Pedido E.", 220,
                    380, 0);
        if (almacen.getOperacion() == 3)
            reporte.contenido.showTextAligned(PdfContentByte.ALIGN_LEFT, "Tipo de Operacin : Pedido A.", 220,
                    380, 0);
        if (almacen.getOperacion() == 6)
            reporte.contenido.showTextAligned(PdfContentByte.ALIGN_LEFT, "Tipo de Operacin : Venta", 220, 380,
                    0);
        ////
        if (ord != null) {
            reporte.contenido.showTextAligned(PdfContentByte.ALIGN_LEFT, "N. Orden: " + ord.getIdOrden(), 40,
                    737, 0);
            /*2*/reporte.contenido.showTextAligned(PdfContentByte.ALIGN_LEFT, "N. Orden: " + ord.getIdOrden(),
                    40, 370, 0);
        }

        //Firmas de material 
        if (miAlmacen.getTipoMovimiento() == 1) {
            reporte.contenido.roundRectangle(45, 450, 130, 1, 0);
            reporte.contenido.showTextAligned(PdfContentByte.ALIGN_LEFT, "ENTREGA: " + almacen.getEntrego(), 45,
                    440, 0);
            reporte.contenido.roundRectangle(250, 450, 130, 1, 0);
            reporte.contenido.showTextAligned(PdfContentByte.ALIGN_LEFT, "AUTORIZA: ", 250, 440, 0);
            reporte.contenido.roundRectangle(440, 450, 130, 1, 0);
            reporte.contenido.showTextAligned(PdfContentByte.ALIGN_LEFT,
                    "RECIBE: " + almacen.getUsuario().getEmpleado().getNombre(), 440, 440, 0);
        } else {
            reporte.contenido.roundRectangle(45, 450, 130, 1, 0);
            reporte.contenido.showTextAligned(PdfContentByte.ALIGN_LEFT,
                    "ENTREGA: " + almacen.getUsuario().getEmpleado().getNombre(), 45, 440, 0);
            reporte.contenido.roundRectangle(250, 450, 130, 1, 0);
            reporte.contenido.showTextAligned(PdfContentByte.ALIGN_LEFT, "AUTORIZA: ", 250, 440, 0);
            reporte.contenido.roundRectangle(440, 450, 130, 1, 0);
            reporte.contenido.showTextAligned(PdfContentByte.ALIGN_LEFT, "RECIBE: " + almacen.getEntrego(), 440,
                    440, 0);
        }

        ///2
        if (miAlmacen.getTipoMovimiento() == 1) {
            reporte.contenido.roundRectangle(45, 30, 130, 1, 0);
            reporte.contenido.showTextAligned(PdfContentByte.ALIGN_LEFT, "ENTREGA: " + almacen.getEntrego(), 45,
                    20, 0);
            reporte.contenido.roundRectangle(250, 30, 130, 1, 0);
            reporte.contenido.showTextAligned(PdfContentByte.ALIGN_LEFT, "AUTORIZA: ", 250, 20, 0);
            reporte.contenido.roundRectangle(440, 30, 130, 1, 0);
            reporte.contenido.showTextAligned(PdfContentByte.ALIGN_LEFT,
                    "RECIBE: " + almacen.getUsuario().getEmpleado().getNombre(), 440, 20, 0);
        } else {
            reporte.contenido.roundRectangle(45, 30, 130, 1, 0);
            reporte.contenido.showTextAligned(PdfContentByte.ALIGN_LEFT,
                    "ENTREGA: " + almacen.getUsuario().getEmpleado().getNombre(), 45, 20, 0);
            reporte.contenido.roundRectangle(250, 30, 130, 1, 0);
            reporte.contenido.showTextAligned(PdfContentByte.ALIGN_LEFT, "AUTORIZA: ", 250, 20, 0);
            reporte.contenido.roundRectangle(440, 30, 130, 1, 0);
            reporte.contenido.showTextAligned(PdfContentByte.ALIGN_LEFT, "RECIBE: " + almacen.getEntrego(), 440,
                    20, 0);
        }
        ///

        reporte.finTexto();
        reporte.contenido.setFontAndSize(bf, 12);
        //agregamos renglones vacios para dejar un espacio(tabla)
        reporte.agregaObjeto(new Paragraph(" "));
        reporte.agregaObjeto(new Paragraph(" "));

        Font font = new Font(Font.FontFamily.HELVETICA, 6, Font.BOLD);
        BaseColor cabecera = BaseColor.GRAY;
        int centro = Element.ALIGN_CENTER;

        tabla.addCell(reporte.celda("N", font, cabecera, centro, 0, 1, Rectangle.RECTANGLE));
        tabla.addCell(reporte.celda("#", font, cabecera, centro, 0, 1, Rectangle.RECTANGLE));
        tabla.addCell(reporte.celda("N Parte", font, cabecera, centro, 0, 1, Rectangle.RECTANGLE));
        tabla.addCell(reporte.celda("Descripcin", font, cabecera, centro, 0, 1, Rectangle.RECTANGLE));
        tabla.addCell(reporte.celda("Med", font, cabecera, centro, 0, 1, Rectangle.RECTANGLE));
        tabla.addCell(reporte.celda("Cant", font, cabecera, centro, 0, 1, Rectangle.RECTANGLE));
        if (tabla.getNumberOfColumns() > 6) {
            tabla.addCell(reporte.celda("Costo c/u", font, cabecera, centro, 0, 1, Rectangle.RECTANGLE));
            tabla.addCell(reporte.celda("Total", font, cabecera, centro, 0, 1, Rectangle.RECTANGLE));
        }
    } catch (Exception e) {
        System.out.println(e);
    }
    if (session != null)
        if (session.isOpen())
            session.close();
}

From source file:Almacen.Reporte2.java

private void jButton5ActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_jButton5ActionPerformed
    // TODO add your handling code here:
    h = new Herramientas(usr, 0);
    h.session(sessionPrograma);//from  w  ww  . ja  v  a2  s. co m
    if (t_datos1.getRowCount() > 0) {
        javax.swing.JFileChooser jF1 = new javax.swing.JFileChooser();
        jF1.setFileFilter(new ExtensionFileFilter("Excel document (*.pdf)", new String[] { "pdf" }));
        String ruta = null;
        if (jF1.showSaveDialog(null) == jF1.APPROVE_OPTION) {
            ruta = jF1.getSelectedFile().getAbsolutePath();
            if (ruta != null) {
                Session session = HibernateUtil.getSessionFactory().openSession();
                try {
                    DecimalFormat formatoPorcentaje = new DecimalFormat("#,##0.00");
                    formatoPorcentaje.setMinimumFractionDigits(2);
                    session.beginTransaction().begin();
                    BaseFont bf = BaseFont.createFont(BaseFont.HELVETICA, BaseFont.WINANSI,
                            BaseFont.NOT_EMBEDDED);
                    //Orden ord=buscaApertura();
                    PDF reporte = new PDF();
                    Date fecha = new Date();
                    DateFormat dateFormat = new SimpleDateFormat("dd-MM-yyyyHH-mm-ss");//YYYY-MM-DD HH:MM:SS
                    String valor = dateFormat.format(fecha);

                    reporte.Abrir2(PageSize.LETTER, "reporte almacen", ruta + ".pdf");
                    Font font = new Font(Font.FontFamily.HELVETICA, 7, Font.NORMAL);
                    BaseColor contenido = BaseColor.WHITE;
                    int centro = Element.ALIGN_CENTER;
                    int izquierda = Element.ALIGN_LEFT;
                    int derecha = Element.ALIGN_RIGHT;
                    float[] nuevos = new float[] { 20, 150, 20, 100, 70, 20, 60 };

                    PdfPTable tabla = reporte.crearTabla(nuevos.length, nuevos, 100, Element.ALIGN_LEFT);

                    cabecera(reporte, bf, tabla, "Reporte de material a " + cb_tipo.getSelectedItem().toString()
                            + " orden: " + t_busca.getText(), 2);
                    for (int ren = 0; ren < t_datos1.getRowCount(); ren++) {
                        for (int col = 0; col < t_datos1.getColumnCount(); col++) {
                            try {
                                tabla.addCell(reporte.celda(t_datos1.getValueAt(ren, col).toString(), font,
                                        contenido, izquierda, 0, 1, Rectangle.RECTANGLE));
                            } catch (Exception e) {
                                tabla.addCell(reporte.celda("", font, contenido, izquierda, 0, 1,
                                        Rectangle.RECTANGLE));
                            }
                        }
                    }
                    tabla.setHeaderRows(1);
                    reporte.agregaObjeto(tabla);
                    reporte.cerrar();
                    reporte.visualizar2(ruta + ".pdf");
                } catch (Exception e) {
                    System.out.println(e);
                    e.printStackTrace();
                    JOptionPane.showMessageDialog(this,
                            "No se pudo realizar el reporte si el archivo esta abierto.");
                }
                if (session != null)
                    if (session.isOpen())
                        session.close();
            }
        }
    }
}

From source file:Almacen.Reporte2.java

private void jButton3ActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_jButton3ActionPerformed
    // TODO add your handling code here:
    h = new Herramientas(usr, 0);
    h.session(sessionPrograma);/*w w w  .  ja  va 2s  . c  om*/
    if (t_datos.getRowCount() > 0) {
        javax.swing.JFileChooser jF1 = new javax.swing.JFileChooser();
        jF1.setFileFilter(new ExtensionFileFilter("Excel document (*.pdf)", new String[] { "pdf" }));
        String ruta = null;
        if (jF1.showSaveDialog(null) == jF1.APPROVE_OPTION) {
            ruta = jF1.getSelectedFile().getAbsolutePath();
            if (ruta != null) {
                Session session = HibernateUtil.getSessionFactory().openSession();
                try {
                    DecimalFormat formatoPorcentaje = new DecimalFormat("#,##0.00");
                    formatoPorcentaje.setMinimumFractionDigits(2);
                    session.beginTransaction().begin();
                    BaseFont bf = BaseFont.createFont(BaseFont.HELVETICA, BaseFont.WINANSI,
                            BaseFont.NOT_EMBEDDED);
                    //Orden ord=buscaApertura();
                    PDF reporte = new PDF();
                    Date fecha = new Date();
                    DateFormat dateFormat = new SimpleDateFormat("dd-MM-yyyyHH-mm-ss");//YYYY-MM-DD HH:MM:SS
                    String valor = dateFormat.format(fecha);

                    reporte.Abrir2(PageSize.LETTER, "reporte almacen", ruta + ".pdf");
                    Font font = new Font(Font.FontFamily.HELVETICA, 7, Font.NORMAL);
                    BaseColor contenido = BaseColor.WHITE;
                    int centro = Element.ALIGN_CENTER;
                    int izquierda = Element.ALIGN_LEFT;
                    int derecha = Element.ALIGN_RIGHT;
                    float[] nuevos = new float[] { 36, 140, 86, 36, 40, 45, 37, 50, 42, 60 };

                    PdfPTable tabla = reporte.crearTabla(nuevos.length, nuevos, 100, Element.ALIGN_LEFT);

                    cabecera(reporte, bf, tabla, "Reporte de movimientos de pedidos en almacen", 1);
                    for (int ren = 0; ren < t_datos.getRowCount(); ren++) {
                        for (int col = 0; col < t_datos.getColumnCount(); col++) {
                            try {
                                if (col == 7)
                                    tabla.addCell(reporte.celda(
                                            formatoPorcentaje.format(t_datos.getValueAt(ren, col)), font,
                                            contenido, derecha, 0, 1, Rectangle.RECTANGLE));
                                else
                                    tabla.addCell(reporte.celda(t_datos.getValueAt(ren, col).toString(), font,
                                            contenido, izquierda, 0, 1, Rectangle.RECTANGLE));
                            } catch (Exception e) {
                                tabla.addCell(reporte.celda("", font, contenido, izquierda, 0, 1,
                                        Rectangle.RECTANGLE));
                            }
                        }
                    }
                    tabla.setHeaderRows(1);
                    reporte.agregaObjeto(tabla);
                    reporte.cerrar();
                    reporte.visualizar2(ruta + ".pdf");
                } catch (Exception e) {
                    System.out.println(e);
                    e.printStackTrace();
                    JOptionPane.showMessageDialog(this,
                            "No se pudo realizar el reporte si el archivo esta abierto.");
                }
                if (session != null)
                    if (session.isOpen())
                        session.close();
            }
        }
    }
}

From source file:Almacen.Reporte2.java

private void jButton8ActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_jButton8ActionPerformed
    // TODO add your handling code here:
    h = new Herramientas(usr, 0);
    h.session(sessionPrograma);/*from  ww w  .  java  2  s  .co  m*/
    if (t_datos2.getRowCount() > 0) {
        javax.swing.JFileChooser jF1 = new javax.swing.JFileChooser();
        jF1.setFileFilter(new ExtensionFileFilter("Excel document (*.pdf)", new String[] { "pdf" }));
        String ruta = null;
        if (jF1.showSaveDialog(null) == jF1.APPROVE_OPTION) {
            ruta = jF1.getSelectedFile().getAbsolutePath();
            if (ruta != null) {
                Session session = HibernateUtil.getSessionFactory().openSession();
                try {
                    session.beginTransaction().begin();
                    BaseFont bf = BaseFont.createFont(BaseFont.HELVETICA, BaseFont.WINANSI,
                            BaseFont.NOT_EMBEDDED);

                    PDF reporte = new PDF();
                    Date fecha = new Date();
                    DateFormat dateFormat = new SimpleDateFormat("dd-MM-yyyyHH-mm-ss");//YYYY-MM-DD HH:MM:SS
                    String valor = dateFormat.format(fecha);

                    reporte.Abrir2(PageSize.LETTER, "reporte pedidos", ruta + ".pdf");
                    Font font = new Font(Font.FontFamily.HELVETICA, 7, Font.NORMAL);
                    BaseColor contenido = BaseColor.WHITE;
                    int centro = Element.ALIGN_CENTER;
                    int izquierda = Element.ALIGN_LEFT;
                    int derecha = Element.ALIGN_RIGHT;
                    float[] nuevos = new float[] { 60, 340, 170, 60, 90, 90, 90 };

                    PdfPTable tabla = reporte.crearTabla(nuevos.length, nuevos, 100, Element.ALIGN_CENTER);
                    cabecera1(reporte, bf, tabla, "Reporte de Consultar Pedidos.", 1);
                    for (int ren = 0; ren < t_datos2.getRowCount(); ren++) {
                        for (int col = 0; col < t_datos2.getColumnCount(); col++) {
                            try {
                                tabla.addCell(reporte.celda(t_datos2.getValueAt(ren, col).toString(), font,
                                        contenido, derecha, 0, 1, Rectangle.RECTANGLE));
                            } catch (Exception e) {
                                tabla.addCell(
                                        reporte.celda("", font, contenido, centro, 0, 1, Rectangle.RECTANGLE));
                            }
                        }
                    }
                    tabla.setHeaderRows(1);
                    reporte.agregaObjeto(tabla);
                    reporte.cerrar();
                    reporte.visualizar2(ruta + ".pdf");
                } catch (Exception e) {
                    System.out.println(e);
                    e.printStackTrace();
                    JOptionPane.showMessageDialog(this,
                            "No se pudo realizar el reporte si el archivo esta abierto.");
                }
                if (session != null)
                    if (session.isOpen())
                        session.close();
            }
        }
    }
}

From source file:Almacen.Reporte2.java

public void cabecera(PDF reporte, BaseFont bf, PdfPTable tabla, String titulo1, int op) {
    Session session = HibernateUtil.getSessionFactory().openSession();
    try {//from   w w w  . j a  va  2s.com
        reporte.contenido.setLineWidth(0.5f);
        reporte.contenido.setColorStroke(new GrayColor(0.2f));
        reporte.contenido.setColorFill(new GrayColor(0.9f));

        Configuracion con = (Configuracion) session.get(Configuracion.class, 1);
        reporte.inicioTexto();
        reporte.contenido.setFontAndSize(bf, 14);
        reporte.contenido.setColorFill(BaseColor.BLACK);
        reporte.contenido.showTextAligned(PdfContentByte.ALIGN_LEFT, con.getEmpresa(), 35, 755, 0);
        reporte.contenido.setFontAndSize(bf, 8);
        reporte.contenido.setColorFill(BaseColor.BLACK);
        String titulo = titulo1;
        if (op == 1) {
            if (t_fecha1.getText().compareTo("AAAA-MM-DD") != 0)
                titulo += " del " + t_fecha1.getText();
            if (t_fecha2.getText().compareTo("AAAA-MM-DD") != 0)
                titulo += " al " + t_fecha2.getText();
        }
        reporte.contenido.showTextAligned(PdfContentByte.ALIGN_LEFT, titulo, 35, 745, 0);
        reporte.contenido.showTextAligned(PdfContentByte.ALIGN_RIGHT,
                "Fecha:" + new SimpleDateFormat("dd-MM-yyyy HH:mm:ss").format(new Date()), 570, 745, 0);

        reporte.finTexto();
        //agregamos renglones vacios para dejar un espacio
        reporte.agregaObjeto(new Paragraph(" "));

        Font font = new Font(Font.FontFamily.HELVETICA, 6, Font.BOLD);

        BaseColor cabecera = BaseColor.GRAY;
        BaseColor contenido = BaseColor.WHITE;
        int centro = Element.ALIGN_CENTER;
        int izquierda = Element.ALIGN_LEFT;
        int derecha = Element.ALIGN_RIGHT;
        if (op == 1) {
            for (int a = 0; a < tabla.getNumberOfColumns(); a++) {
                tabla.addCell(reporte.celda(t_datos.getColumnName(a), font, cabecera, centro, 0, 1,
                        Rectangle.RECTANGLE));
            }
        }
        if (op == 2) {
            for (int a = 0; a < tabla.getNumberOfColumns(); a++) {
                tabla.addCell(reporte.celda(t_datos1.getColumnName(a), font, cabecera, centro, 0, 1,
                        Rectangle.RECTANGLE));
            }
        }
    } catch (Exception e) {
        System.out.println(e);
    }
    if (session != null)
        if (session.isOpen())
            session.close();
}

From source file:Almacen.Reporte2.java

public void cabecera1(PDF reporte, BaseFont bf, PdfPTable tabla, String titulo1, int op) {
    Session session = HibernateUtil.getSessionFactory().openSession();
    try {//  w w w  .  ja  v a  2s  .c  o m
        reporte.contenido.setLineWidth(0.5f);
        reporte.contenido.setColorStroke(new GrayColor(0.2f));
        reporte.contenido.setColorFill(new GrayColor(0.9f));

        Configuracion con = (Configuracion) session.get(Configuracion.class, 1);
        reporte.inicioTexto();
        reporte.contenido.setFontAndSize(bf, 14);
        reporte.contenido.setColorFill(BaseColor.BLACK);
        reporte.contenido.showTextAligned(PdfContentByte.ALIGN_LEFT, con.getEmpresa(), 35, 755, 0);
        reporte.contenido.setFontAndSize(bf, 8);
        reporte.contenido.setColorFill(BaseColor.BLACK);
        String titulo = titulo1;

        reporte.contenido.showTextAligned(PdfContentByte.ALIGN_LEFT, titulo, 35, 745, 0);
        reporte.contenido.showTextAligned(PdfContentByte.ALIGN_RIGHT,
                "Fecha:" + new SimpleDateFormat("dd-MM-yyyy HH:mm:ss").format(new Date()), 570, 745, 0);

        reporte.finTexto();
        //agregamos renglones vacios para dejar un espacio
        reporte.agregaObjeto(new Paragraph(" "));

        Font font = new Font(Font.FontFamily.HELVETICA, 6, Font.BOLD);

        BaseColor cabecera = BaseColor.GRAY;
        BaseColor contenido = BaseColor.WHITE;
        int centro = Element.ALIGN_CENTER;

        for (int a = 0; a < tabla.getNumberOfColumns(); a++) {
            tabla.addCell(reporte.celda(t_datos2.getColumnName(a), font, cabecera, centro, 0, 1,
                    Rectangle.RECTANGLE));
        }
    } catch (Exception e) {
        System.out.println(e);
    }
    if (session != null)
        if (session.isOpen())
            session.close();
}

From source file:Almacen.Responsiva.java

private void b_imprimirActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_b_imprimirActionPerformed
    // TODO add your handling code here:
    Session session = HibernateUtil.getSessionFactory().openSession();
    try {/*from  w  ww . j  a  v  a 2  s.co  m*/
        String empleado = "";
        String puesto = "";
        if (t_datos.getRowCount() > 0) {
            //consulta
            Query q = session.createSQLQuery(
                    "select empleado.nombre as empleado, puestos.nombre as puesto from empleado inner join puestos on puestos.id_puestos=empleado.id_puesto where empleado.id_empleado="
                            + t_id_empleado.getText() + ";");
            q.setResultTransformer(Criteria.ALIAS_TO_ENTITY_MAP);
            List lista = q.list();

            for (int i = 0; i < lista.size(); i++) {
                java.util.HashMap map = (java.util.HashMap) lista.get(i);
                empleado = (String) map.get("empleado");
                puesto = (String) map.get("puesto");
            }

            Date fecha = new Date();
            DateFormat dateFormat = new SimpleDateFormat("dd-MM-yyyyHH-mm-ss");//YYYY-MM-DD HH:MM:SS
            String Mes[] = { "Enero", "Febrero", "Marzo", "Abril", "Mayo", "Junio", "Julio", "Agosto",
                    "Septiembre", "Octubre", "Noviembre", "Diciembre" };
            Calendar fecha1 = new GregorianCalendar();
            int anio = fecha1.get(Calendar.YEAR);
            int mes = fecha1.get(Calendar.MONTH);
            int dia = fecha1.get(Calendar.DAY_OF_MONTH);
            //DateFormat dateFormat1 = new SimpleDateFormat("dd-MM-yyyy");//YYYY-MM-DD HH:MM:SS
            String valor = dateFormat.format(fecha);
            File folder = new File("reportes/Responsivas");
            folder.mkdirs();
            PdfReader reader = new PdfReader("imagenes/CartaResponsiva.pdf");
            PdfStamper stamp = new PdfStamper(reader,
                    new FileOutputStream("reportes/Responsivas/" + valor + "CartaResponsiva.pdf"));
            PdfContentByte cb = stamp.getUnderContent(1);
            PdfContentByte cb2 = stamp.getUnderContent(2);
            AcroFields fdfDoc = stamp.getAcroFields();
            // Creo una fuente
            BaseFont bf = BaseFont.createFont(BaseFont.HELVETICA, BaseFont.CP1252, BaseFont.EMBEDDED);

            cb.beginText();
            //dia
            try {
                if (dia < 9)
                    fdfDoc.setField("Dia", "0" + String.valueOf(dia));
                else
                    fdfDoc.setField("Dia", String.valueOf(dia));
            } catch (Exception e) {
                fdfDoc.setField("Dia", "error");
            }
            //mes
            try {
                fdfDoc.setField("Mes", Mes[mes]);
            } catch (Exception e) {
                fdfDoc.setField("Mes", "");
            }
            //ao
            try {
                fdfDoc.setField("Anio", String.valueOf(anio));
            } catch (Exception e) {
                fdfDoc.setField("Anio", "");
            }
            //nombre
            try {
                fdfDoc.setField("Nombre", empleado);
            } catch (Exception e) {
                fdfDoc.setField("Nombre", "");
            }
            //puesto
            try {
                fdfDoc.setField("Puesto", puesto);
            } catch (Exception e) {
                fdfDoc.setField("Puesto", "");
            }

            //tabla de herramientas
            float tam[] = new float[] { 250, 50, 180 };
            Font font = new Font(Font.FontFamily.HELVETICA, 7, Font.BOLD);
            PDF reporte = new PDF();
            PdfPTable tabla = reporte.crearTabla(3, tam, 100, Element.ALIGN_LEFT);
            tabla.setTotalWidth(tam);
            BaseColor cabecera = BaseColor.GRAY;
            BaseColor contenido = BaseColor.WHITE;
            int centro = Element.ALIGN_CENTER;
            int izquierda = Element.ALIGN_LEFT;
            int derecha = Element.ALIGN_RIGHT;

            tabla.addCell(reporte.celda("HERRAMIENTA", font, cabecera, centro, 0, 1, Rectangle.RECTANGLE));
            tabla.addCell(reporte.celda("CANTIDAD", font, cabecera, centro, 0, 1, Rectangle.RECTANGLE));
            tabla.addCell(reporte.celda("NOTAS", font, cabecera, centro, 0, 1, Rectangle.RECTANGLE));

            for (int i = 0; i < t_datos.getRowCount(); i++) {
                tabla.addCell(reporte.celda(t_datos.getValueAt(i, 1).toString(), font, contenido, izquierda, 0,
                        1, Rectangle.RECTANGLE));

                tabla.addCell(reporte.celda(String.valueOf((double) t_datos.getValueAt(i, 2)), font, contenido,
                        centro, 0, 1, Rectangle.RECTANGLE));
                if (t_datos.getValueAt(i, 3) != null)
                    tabla.addCell(reporte.celda(t_datos.getValueAt(i, 3).toString(), font, contenido, izquierda,
                            0, 1, Rectangle.RECTANGLE));
                else
                    tabla.addCell(reporte.celda("", font, contenido, izquierda, 0, 1, Rectangle.RECTANGLE));
            }

            tabla.completeRow();
            tabla.writeSelectedRows(0, -1, 70, 720, cb2);
            cb.endText();
            stamp.close();
            reporte.cerrar();
            reporte.visualizar("reportes/Responsivas/" + valor + "CartaResponsiva.pdf");
        } else {
            JOptionPane.showMessageDialog(this, "No Existe Ninguna Responsiva");
        }
    } catch (Exception e) {
        System.out.println(e);
        JOptionPane.showMessageDialog(this, "No se pudo realizar el reporte si el archivo esta abierto");
    }
    if (session != null) {
        if (session.isOpen()) {
            session.close();
        }
    }
}

From source file:Compras.altaCompras.java

   private void jButton11ActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_jButton11ActionPerformed
    // TODO add your handling code here:
    if(t_datos.getRowCount()>0)
    {//from  ww  w. j a v a  2s .c om
        javax.swing.JFileChooser jF1= new javax.swing.JFileChooser();
        jF1.setFileFilter(new ExtensionFileFilter("Excel document (*.pdf)", new String[] { "pdf" }));
        String ruta = null;
        if(jF1.showSaveDialog(null)==jF1.APPROVE_OPTION)
        {
            ruta = jF1.getSelectedFile().getAbsolutePath();
            if(ruta!=null)
            {
                Session session = HibernateUtil.getSessionFactory().openSession();
                try
                {
                    DecimalFormat formatoPorcentaje = new DecimalFormat("#,##0.00");
                    formatoPorcentaje.setMinimumFractionDigits(2);
                    session.beginTransaction().begin();
                    BaseFont bf = BaseFont.createFont(BaseFont.HELVETICA, BaseFont.WINANSI, BaseFont.NOT_EMBEDDED);
                    //Orden ord=buscaApertura();
                    PDF reporte = new PDF();
                    Date fecha = new Date();
                    DateFormat dateFormat = new SimpleDateFormat("dd-MM-yyyyHH-mm-ss");//YYYY-MM-DD HH:MM:SS
                    String valor=dateFormat.format(fecha);

                    reporte.Abrir2(PageSize.LETTER.rotate(), "Valuacin", ruta+".pdf");
                    Font font = new Font(Font.FontFamily.HELVETICA, 5, Font.BOLD);
                    BaseColor contenido=BaseColor.WHITE;
                    int centro=Element.ALIGN_CENTER;
                    int izquierda=Element.ALIGN_LEFT;
                    int derecha=Element.ALIGN_RIGHT;
                    float tam[]=new float[]{10,10,80,5,5,5,5,5,14,10,25,23,8,8,8,10,10,10};
                        

                    PdfPTable tabla=reporte.crearTabla(tam.length, tam, 100, Element.ALIGN_LEFT);

                    cabecera(reporte, bf, tabla);
                    int ren=0;
                        
                    //double dm=0d, cam=0d, min=0d, med=0d, max=0d, pin=0d, tot=0d;

                    for(int i=0; i<t_datos.getRowCount(); i++)
                    {
                        tabla.addCell(reporte.celda(t_titulos.getValueAt(i, 0).toString(), font, contenido, derecha, 0,1,Rectangle.RECTANGLE));
                        tabla.addCell(reporte.celda(t_titulos.getValueAt(i, 1).toString(), font, contenido, derecha, 0,1,Rectangle.RECTANGLE));
                        tabla.addCell(reporte.celda(t_titulos.getValueAt(i, 2).toString(), font, contenido, izquierda, 0,1,Rectangle.RECTANGLE));
                        if( ((boolean)t_datos.getValueAt(i, 1)) ==true)
                            tabla.addCell(reporte.celda("x", font, contenido, derecha, 0,1,Rectangle.RECTANGLE));
                        else
                            tabla.addCell(reporte.celda(" ", font, contenido, derecha, 0,1,Rectangle.RECTANGLE));
                            
                        if( ((boolean)t_datos.getValueAt(i, 2)) ==true)
                            tabla.addCell(reporte.celda("x", font, contenido, derecha, 0,1,Rectangle.RECTANGLE));
                        else
                            tabla.addCell(reporte.celda(" ", font, contenido, derecha, 0,1,Rectangle.RECTANGLE));
                            
                        if( ((boolean)t_datos.getValueAt(i, 3)) ==true)
                            tabla.addCell(reporte.celda("x", font, contenido, derecha, 0,1,Rectangle.RECTANGLE));
                        else
                            tabla.addCell(reporte.celda(" ", font, contenido, derecha, 0,1,Rectangle.RECTANGLE));
                            
                        if( ((boolean)t_datos.getValueAt(i, 4)) ==true)
                            tabla.addCell(reporte.celda("x", font, contenido, derecha, 0,1,Rectangle.RECTANGLE));
                        else
                            tabla.addCell(reporte.celda(" ", font, contenido, derecha, 0,1,Rectangle.RECTANGLE));
                            
                        if( (t_datos.getValueAt(i, 6)) != null)
                            tabla.addCell(reporte.celda("x", font, contenido, derecha, 0,1,Rectangle.RECTANGLE));
                        else
                            tabla.addCell(reporte.celda(" ", font, contenido, derecha, 0,1,Rectangle.RECTANGLE));
                            
                        tabla.addCell(reporte.celda(formatoPorcentaje.format(t_datos.getValueAt(i, 14)), font, contenido, derecha, 0,1,Rectangle.RECTANGLE));
                            
                        tabla.addCell(reporte.celda(t_datos.getValueAt(i, 8).toString(), font, contenido, derecha, 0,1,Rectangle.RECTANGLE));
                            
                        tabla.addCell(reporte.celda(t_datos.getValueAt(i, 10).toString(), font, contenido, derecha, 0,1,Rectangle.RECTANGLE));
                            
                        tabla.addCell(reporte.celda(formatoPorcentaje.format(t_datos.getValueAt(i, 15)), font, contenido, derecha, 0,1,Rectangle.RECTANGLE));
                            
                        if( ((boolean)t_datos.getValueAt(i, 17)) ==true)
                            tabla.addCell(reporte.celda("x", font, contenido, derecha, 0,1,Rectangle.RECTANGLE));
                        else
                            tabla.addCell(reporte.celda(" ", font, contenido, derecha, 0,1,Rectangle.RECTANGLE));
                            
                        if( ((boolean)t_datos.getValueAt(i, 18)) ==true)
                            tabla.addCell(reporte.celda("x", font, contenido, derecha, 0,1,Rectangle.RECTANGLE));
                        else
                            tabla.addCell(reporte.celda(" ", font, contenido, derecha, 0,1,Rectangle.RECTANGLE));
                            
                        if( ((boolean)t_datos.getValueAt(i, 19)) ==true)
                            tabla.addCell(reporte.celda("x", font, contenido, derecha, 0,1,Rectangle.RECTANGLE));
                        else
                            tabla.addCell(reporte.celda(" ", font, contenido, derecha, 0,1,Rectangle.RECTANGLE));
                            
                        if(t_datos.getValueAt(i, 20)!=null)
                            tabla.addCell(reporte.celda(t_datos.getValueAt(i, 20).toString(), font, contenido, derecha, 0,1,Rectangle.RECTANGLE));
                        else
                            tabla.addCell(reporte.celda(" ", font, contenido, derecha, 0,1,Rectangle.RECTANGLE));
                            
                        if(t_datos.getValueAt(i, 26)!=null)
                            tabla.addCell(reporte.celda(t_datos.getValueAt(i, 26).toString(), font, contenido, derecha, 0,1,Rectangle.RECTANGLE));
                        else
                            tabla.addCell(reporte.celda(" ", font, contenido, derecha, 0,1,Rectangle.RECTANGLE));
                            
                        if( ((boolean)t_datos.getValueAt(i, 27)) ==true)
                            tabla.addCell(reporte.celda("x", font, contenido, derecha, 0,1,Rectangle.RECTANGLE));
                        else
                            tabla.addCell(reporte.celda(" ", font, contenido, derecha, 0,1,Rectangle.RECTANGLE));
                            
                    }
                        
                    tabla.setHeaderRows(1);
                    reporte.agregaObjeto(tabla);
                    reporte.cerrar();
                    reporte.visualizar2(ruta+".pdf");
                }catch(Exception e)
                {
                    System.out.println(e);
                    e.printStackTrace();
                    JOptionPane.showMessageDialog(this, "No se pudo realizar el reporte si el archivo esta abierto.");
                }
                if(session!=null)
                if(session.isOpen())
                session.close();
            }
        }
    }
}

From source file:Compras.altaCompras.java

public void cabecera(PDF reporte, BaseFont bf, PdfPTable tabla) {
     Session session = HibernateUtil.getSessionFactory().openSession();
     try {//  w w w . j a v a2  s .com
         reporte.contenido.setLineWidth(0.5f);
         reporte.contenido.setColorStroke(new GrayColor(0.2f));
         reporte.contenido.setColorFill(new GrayColor(0.9f));

         Configuracion con = (Configuracion) session.get(Configuracion.class, 1);
         reporte.inicioTexto();
         reporte.contenido.setFontAndSize(bf, 14);
         reporte.contenido.setColorFill(BaseColor.BLACK);
         reporte.contenido.showTextAligned(PdfContentByte.ALIGN_LEFT, con.getEmpresa(), 35, 575, 0);
         reporte.contenido.setFontAndSize(bf, 8);
         reporte.contenido.setColorFill(BaseColor.BLACK);
         String titulo = "Reporte";
         reporte.contenido.showTextAligned(PdfContentByte.ALIGN_LEFT, titulo, 35, 565, 0);
         reporte.contenido.showTextAligned(PdfContentByte.ALIGN_RIGHT,
                 "Fecha:" + new SimpleDateFormat("dd-MM-yyyy HH:mm:ss").format(new Date()), 750, 575, 0);

         reporte.finTexto();
         //agregamos renglones vacios para dejar un espacio
         reporte.agregaObjeto(new Paragraph(" "));
         /*reporte.agregaObjeto(new Paragraph(" "));
         reporte.agregaObjeto(new Paragraph(" "));
         reporte.agregaObjeto(new Paragraph(" "));*/
         //reporte.agregaObjeto(new Paragraph(" "));

         Font font = new Font(Font.FontFamily.HELVETICA, 6, Font.BOLD);

         BaseColor cabecera = BaseColor.GRAY;
         BaseColor contenido = BaseColor.WHITE;
         int centro = Element.ALIGN_CENTER;
         int izquierda = Element.ALIGN_LEFT;
         int derecha = Element.ALIGN_RIGHT;

         tabla.addCell(reporte.celda("NO", font, cabecera, centro, 0, 1, Rectangle.RECTANGLE));
         tabla.addCell(reporte.celda("#", font, cabecera, centro, 0, 1, Rectangle.RECTANGLE));
         tabla.addCell(reporte.celda("DESCRIPCION", font, cabecera, centro, 0, 1, Rectangle.RECTANGLE));
         tabla.addCell(reporte.celda("H", font, cabecera, centro, 0, 1, Rectangle.RECTANGLE));
         tabla.addCell(reporte.celda("M", font, cabecera, centro, 0, 1, Rectangle.RECTANGLE));
         tabla.addCell(reporte.celda("S", font, cabecera, centro, 0, 1, Rectangle.RECTANGLE));
         tabla.addCell(reporte.celda("E", font, cabecera, centro, 0, 1, Rectangle.RECTANGLE));
         tabla.addCell(reporte.celda("P", font, cabecera, centro, 0, 1, Rectangle.RECTANGLE));
         tabla.addCell(reporte.celda("C. AUT", font, cabecera, centro, 0, 1, Rectangle.RECTANGLE));
         tabla.addCell(reporte.celda("MED", font, cabecera, centro, 0, 1, Rectangle.RECTANGLE));
         tabla.addCell(reporte.celda("NO PART", font, cabecera, centro, 0, 1, Rectangle.RECTANGLE));
         tabla.addCell(reporte.celda("$ AUT", font, cabecera, centro, 0, 1, Rectangle.RECTANGLE));
         tabla.addCell(reporte.celda("AUT", font, cabecera, centro, 0, 1, Rectangle.RECTANGLE));
         tabla.addCell(reporte.celda("COT", font, cabecera, centro, 0, 1, Rectangle.RECTANGLE));
         tabla.addCell(reporte.celda("COM", font, cabecera, centro, 0, 1, Rectangle.RECTANGLE));
         tabla.addCell(reporte.celda("ORI", font, cabecera, centro, 0, 1, Rectangle.RECTANGLE));
         tabla.addCell(reporte.celda("NO PED", font, cabecera, centro, 0, 1, Rectangle.RECTANGLE));
         tabla.addCell(reporte.celda("OK", font, cabecera, centro, 0, 1, Rectangle.RECTANGLE));
     } catch (Exception e) {
         System.out.println(e);
     }
     if (session != null)
         if (session.isOpen())
             session.close();
 }

From source file:Compras.avanceSurtido.java

private void jButton2ActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_jButton2ActionPerformed
     // TODO add your handling code here:
     try {/* ww w.  ja v  a  2  s.c  o m*/
         File archivoPDF = null;
         javax.swing.JFileChooser jF1 = new javax.swing.JFileChooser();
         jF1.setFileFilter(new ExtensionFileFilter("Adobe document (*.pdf)", new String[] { "pdf" }));
         String ruta = null;
         if (jF1.showSaveDialog(null) == jF1.APPROVE_OPTION) {
             ruta = jF1.getSelectedFile().getAbsolutePath();
             DecimalFormat formatoPorcentaje = new DecimalFormat("#,##0.00");
             formatoPorcentaje.setMinimumFractionDigits(2);
             if (ruta != null) {
                 if (ruta.substring(ruta.length() - 4, ruta.length()).compareTo(".pdf") == 0)
                     archivoPDF = new File(ruta);
                 else
                     archivoPDF = new File(ruta + ".pdf");
                 BaseFont bf = BaseFont.createFont(BaseFont.HELVETICA, BaseFont.WINANSI, BaseFont.NOT_EMBEDDED);
                 //Orden ord=buscaApertura();
                 PDF reporte = new PDF();
                 reporte.Abrir2(PageSize.LEGAL.rotate(), "Avance de Pedidos", archivoPDF.getAbsolutePath());

                 reporte.agregaObjeto(reporte.crearImagen("imagenes/empresa300115.jpg", 00, -32, 17));

                 reporte.contenido.setLineWidth(0.5f);
                 reporte.contenido.setColorStroke(new GrayColor(0.2f));
                 reporte.contenido.setColorFill(new GrayColor(0.9f));
                 reporte.contenido.roundRectangle(30, 535, 945, 60, 5);

                 Session session = HibernateUtil.getSessionFactory().openSession();
                 session.beginTransaction().begin();
                 Configuracion con = (Configuracion) session.get(Configuracion.class, 1);

                 reporte.inicioTexto();
                 reporte.contenido.setFontAndSize(bf, 14);
                 reporte.contenido.setColorFill(BaseColor.BLACK);
                 reporte.contenido.showTextAligned(PdfContentByte.ALIGN_CENTER, con.getEmpresa(), 505, 580, 0);
                 reporte.contenido.setFontAndSize(bf, 8);
                 reporte.contenido.setColorFill(BaseColor.BLACK);
                 reporte.contenido.showTextAligned(PdfContentByte.ALIGN_CENTER,
                         "HOLAJATERIA Y PINTURA EN GENERAL", 505, 567, 0);
                 reporte.contenido.showTextAligned(PdfContentByte.ALIGN_CENTER, "COMPRA Y VENTA DE REFACCIONES",
                         505, 557, 0);
                 reporte.contenido.showTextAligned(PdfContentByte.ALIGN_CENTER,
                         "Avance de Pedidos de la orden: " + ord.getIdOrden(), 505, 537, 0);
                 reporte.finTexto();
                 //agregamos renglones vacios para dejar un espacio
                 reporte.agregaObjeto(new Paragraph(" "));
                 reporte.agregaObjeto(new Paragraph(" "));
                 reporte.agregaObjeto(new Paragraph(" "));

                 float tam[] = new float[] { 25, 25, 190, 7, 7, 7, 7, 20, 30, 20, 100, 20, 30, 20, 60, 50, 30,
                         70, 35, 30, 30, 30, 7 };
                 com.itextpdf.text.Font font = new com.itextpdf.text.Font(
                         com.itextpdf.text.Font.FontFamily.HELVETICA, 6, com.itextpdf.text.Font.BOLD);
                 PdfPTable tabla = reporte.crearTabla(tam.length, tam, 100, Element.ALIGN_LEFT);
                 BaseColor cabecera = BaseColor.GRAY;
                 BaseColor contenido = BaseColor.WHITE;
                 int centro = Element.ALIGN_CENTER;
                 int izquierda = Element.ALIGN_LEFT;
                 int derecha = Element.ALIGN_RIGHT;

                 tabla.addCell(reporte.celda("No", font, cabecera, centro, 0, 1, Rectangle.RECTANGLE));
                 tabla.addCell(reporte.celda("#", font, cabecera, centro, 0, 1, Rectangle.RECTANGLE));
                 tabla.addCell(reporte.celda("Descripcin", font, cabecera, centro, 0, 1, Rectangle.RECTANGLE));
                 tabla.addCell(reporte.celda("Hoj", font, cabecera, centro, 0, 1, Rectangle.RECTANGLE));
                 tabla.addCell(reporte.celda("Mec", font, cabecera, centro, 0, 1, Rectangle.RECTANGLE));
                 tabla.addCell(reporte.celda("Sus", font, cabecera, centro, 0, 1, Rectangle.RECTANGLE));
                 tabla.addCell(reporte.celda("Ele", font, cabecera, centro, 0, 1, Rectangle.RECTANGLE));
                 tabla.addCell(reporte.celda("Can", font, cabecera, centro, 0, 1, Rectangle.RECTANGLE));
                 tabla.addCell(reporte.celda("Med", font, cabecera, centro, 0, 1, Rectangle.RECTANGLE));
                 tabla.addCell(reporte.celda("Fol", font, cabecera, centro, 0, 1, Rectangle.RECTANGLE));
                 tabla.addCell(reporte.celda("Codigo", font, cabecera, centro, 0, 1, Rectangle.RECTANGLE));
                 tabla.addCell(reporte.celda("Ori", font, cabecera, centro, 0, 1, Rectangle.RECTANGLE));
                 tabla.addCell(reporte.celda("Prov", font, cabecera, centro, 0, 1, Rectangle.RECTANGLE));
                 tabla.addCell(reporte.celda("Cant. c.", font, cabecera, centro, 0, 1, Rectangle.RECTANGLE));
                 tabla.addCell(reporte.celda("$C/U Comp", font, cabecera, centro, 0, 1, Rectangle.RECTANGLE));
                 tabla.addCell(reporte.celda("Plazo", font, cabecera, centro, 0, 1, Rectangle.RECTANGLE));
                 tabla.addCell(reporte.celda("Pedido", font, cabecera, centro, 0, 1, Rectangle.RECTANGLE));
                 tabla.addCell(reporte.celda("F. Pedido", font, cabecera, centro, 0, 1, Rectangle.RECTANGLE));
                 tabla.addCell(reporte.celda("Ent.", font, cabecera, centro, 0, 1, Rectangle.RECTANGLE));
                 tabla.addCell(reporte.celda("Dev.", font, cabecera, centro, 0, 1, Rectangle.RECTANGLE));
                 tabla.addCell(reporte.celda("Pend.", font, cabecera, centro, 0, 1, Rectangle.RECTANGLE));
                 tabla.addCell(reporte.celda("No Factura", font, cabecera, centro, 0, 1, Rectangle.RECTANGLE));
                 tabla.addCell(reporte.celda("OK", font, cabecera, centro, 0, 1, Rectangle.RECTANGLE));
                 session.close();
                 //for de renflones
                 double sum = 0.0d;
                 for (int ren = 0; ren < t_datos.getRowCount(); ren++) {
                     sum += (Double.parseDouble(t_datos.getValueAt(ren, 14).toString())
                             * Double.parseDouble(t_datos.getValueAt(ren, 15).toString()));

                     for (int col = 1; col < t_datos.getColumnCount(); col++) {
                         if (col > 3 && col < 8 || col == 23) {
                             if ((boolean) t_datos.getValueAt(ren, col) == true)
                                 tabla.addCell(reporte.celda("X", font, contenido, izquierda, 0, 1,
                                         Rectangle.RECTANGLE));
                             else
                                 tabla.addCell(reporte.celda("", font, contenido, izquierda, 0, 1,
                                         Rectangle.RECTANGLE));
                         } else {
                             if (t_datos.getValueAt(ren, col) != null) {
                                 if (col == 14 || col == 15 || col == 19 || col == 20 || col == 21) {
                                     if (col == 15) {
                                         tabla.addCell(reporte.celda(
                                                 formatoPorcentaje.format(Double
                                                         .parseDouble(t_datos.getValueAt(ren, col).toString())),
                                                 font, contenido, derecha, 0, 1, Rectangle.RECTANGLE));
                                     } else
                                         tabla.addCell(reporte.celda(t_datos.getValueAt(ren, col).toString(),
                                                 font, contenido, derecha, 0, 1, Rectangle.RECTANGLE));
                                 } else {
                                     tabla.addCell(reporte.celda(t_datos.getValueAt(ren, col).toString(), font,
                                             contenido, izquierda, 0, 1, Rectangle.RECTANGLE));
                                 }
                             } else
                                 tabla.addCell(reporte.celda("", font, contenido, izquierda, 0, 1,
                                         Rectangle.RECTANGLE));
                         }
                     }
                 }
                 tabla.addCell(
                         reporte.celda("Importe Total:", font, contenido, derecha, 14, 1, Rectangle.NO_BORDER));
                 tabla.addCell(reporte.celda(formatoPorcentaje.format(sum), font, contenido, derecha, 0, 1,
                         Rectangle.RECTANGLE));
                 tabla.addCell(reporte.celda("", font, contenido, izquierda, 14, 1, Rectangle.NO_BORDER));

                 reporte.agregaObjeto(tabla);
                 reporte.cerrar();
                 reporte.visualizar2(archivoPDF.getAbsolutePath());
             }
         }
     } catch (Exception e) {
         e.printStackTrace();
         JOptionPane.showMessageDialog(this, "No se pudo realizar el reporte si el archivo esta abierto.");
     }
 }