Example usage for com.itextpdf.text.pdf PdfStamper PdfStamper

List of usage examples for com.itextpdf.text.pdf PdfStamper PdfStamper

Introduction

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

Prototype

public PdfStamper(final PdfReader reader, final OutputStream os) throws DocumentException, IOException 

Source Link

Document

Starts the process of adding extra content to an existing PDF document.

Usage

From source file:pdfupdate.PdfUpdate.java

public void manipulatePdf2(String src, String dest) throws IOException, DocumentException {
    PdfReader reader = new PdfReader(src);
    PdfStamper stamper = new PdfStamper(reader, new FileOutputStream(dest));
    AcroFields form = stamper.getAcroFields();
    XfaForm xfa = form.getXfa();//from   w  w w  .j a  v  a2  s .  co  m
    xfa.fillXfaForm(new FileInputStream(XML));
    stamper.close();
    reader.close();
}

From source file:printom.PDFCreator.java

public static void createLabel(int aLabelType, int aJobNum, char aJobIdentifier, String aCustName,
        String aItemName, String aItemCode, String aDate, String aPOrderNum, int aInputPcs) {

    String myJobNum = String.valueOf(aJobNum);
    char myJobIdentifier = aJobIdentifier;
    String myCustName = aCustName;
    String myItemName = aItemName;
    String myItemCode = aItemCode;
    String myDate = aDate;/*  ww w.  jav a2  s  . com*/
    String myPOrderNum = aPOrderNum;
    String myInputPcs = String.valueOf(aInputPcs);

    try {
        String src = "";
        if (aLabelType == 1) {
            src = CTNLABEL;
        }
        String dest = RESULTLABEL;

        Font timesJob = new Font(Font.FontFamily.TIMES_ROMAN, 16, Font.BOLD, BaseColor.WHITE);
        Font timesDef = new Font(Font.FontFamily.TIMES_ROMAN, 16, Font.NORMAL, BaseColor.BLACK);

        PdfReader reader = new PdfReader(src);
        PdfStamper stamper = new PdfStamper(reader, new FileOutputStream(dest));
        PdfContentByte canvas = stamper.getOverContent(1);

        for (int k = 0; k < 3; k++) {

            //Positions
            int[] x = { 298, 350, 125, 80, 80, 80, 80, 120 };
            int[] y = { 562, 562, 518, 498, 479, 459, 440, 420 };

            if (k == 1) {
                for (int j = 0; j < 8; j++) {
                    y[j] = y[j] - 186;
                }
            }

            if (k == 2) {
                for (int j = 0; j < 8; j++) {
                    y[j] = y[j] - 372;
                }
            }

            for (int i = 0; i < 2; i++) {

                if (i == 1) {
                    for (int j = 0; j < 8; j++) {
                        x[j] = x[j] + 372;
                    }
                }

                ColumnText.showTextAligned(canvas, Element.ALIGN_LEFT, new Phrase(myJobNum, timesJob), x[0],
                        y[0], 0);
                ColumnText.showTextAligned(canvas, Element.ALIGN_LEFT,
                        new Phrase(String.valueOf(myJobIdentifier), timesDef), x[1], y[1], 0);
                ColumnText.showTextAligned(canvas, Element.ALIGN_LEFT, new Phrase(myCustName, timesDef), x[2],
                        y[2], 0);
                ColumnText.showTextAligned(canvas, Element.ALIGN_LEFT, new Phrase(myItemName, timesDef), x[3],
                        y[3], 0);
                ColumnText.showTextAligned(canvas, Element.ALIGN_LEFT, new Phrase(myItemCode, timesDef), x[4],
                        y[4], 0);
                ColumnText.showTextAligned(canvas, Element.ALIGN_LEFT, new Phrase(myDate, timesDef), x[5], y[5],
                        0);
                ColumnText.showTextAligned(canvas, Element.ALIGN_LEFT, new Phrase(myPOrderNum, timesDef), x[6],
                        y[6], 0);
                ColumnText.showTextAligned(canvas, Element.ALIGN_LEFT, new Phrase(myInputPcs, timesDef), x[7],
                        y[7], 0);
            }
        }
        stamper.close();
        reader.close();

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

}

From source file:printom.PDFCreator.java

public static void createReport(int aJobNum, char aJobIdentifier, String aCustName, String aItemName,
        String aItemCode, String aDate, String aPOrderNum, int aInputPcs, int aQtyWithOvers, int aNumContainers,
        String aInputContainer) {

    String myJobNum = String.valueOf(aJobNum);
    char myJobIdentifier = aJobIdentifier;
    String myCustName = aCustName;
    String myItemName = aItemName;
    String myItemCode = aItemCode;
    String myDate = aDate;/*from  ww w .j ava2 s.  c  o  m*/
    String myPOrderNum = aPOrderNum;
    String myInputPcs = String.valueOf(aInputPcs);
    int myQtyWithOvers = aQtyWithOvers;
    int myNumContainers = aNumContainers;
    String myInputContainer = aInputContainer;

    double amount = myQtyWithOvers;
    DecimalFormat formatter = new DecimalFormat("#,###");

    String myStrQtyWithOvers = formatter.format(amount);

    try {
        String src = REPORT;
        String dest = RESULTREPORT;

        Font timesJob = new Font(Font.FontFamily.TIMES_ROMAN, 18, Font.BOLD, BaseColor.WHITE);
        Font timesDef = new Font(Font.FontFamily.TIMES_ROMAN, 16, Font.NORMAL, BaseColor.BLACK);

        PdfReader reader = new PdfReader(src);
        PdfStamper stamper = new PdfStamper(reader, new FileOutputStream(dest));
        PdfContentByte canvas = stamper.getOverContent(1);

        int[] x = { 441, 510, 426, 87, 87, 87, 426, 307, 218, 325, 426 };
        int[] y = { 547, 547, 473, 450, 428, 473, 450, 325, 385, 385, 428 };

        ColumnText.showTextAligned(canvas, Element.ALIGN_LEFT, new Phrase(myJobNum, timesJob), x[0], y[0], 0);
        ColumnText.showTextAligned(canvas, Element.ALIGN_LEFT,
                new Phrase(String.valueOf(myJobIdentifier), timesDef), x[1], y[1], 0);
        ColumnText.showTextAligned(canvas, Element.ALIGN_LEFT, new Phrase(myCustName, timesDef), x[2], y[2], 0);
        ColumnText.showTextAligned(canvas, Element.ALIGN_LEFT, new Phrase(myItemName, timesDef), x[3], y[3], 0);
        ColumnText.showTextAligned(canvas, Element.ALIGN_LEFT, new Phrase(myItemCode, timesDef), x[4], y[4], 0);
        ColumnText.showTextAligned(canvas, Element.ALIGN_LEFT, new Phrase(myDate, timesDef), x[5], y[5], 0);
        ColumnText.showTextAligned(canvas, Element.ALIGN_LEFT, new Phrase(myPOrderNum, timesDef), x[6], y[6],
                0);
        ColumnText.showTextAligned(canvas, Element.ALIGN_LEFT, new Phrase(myInputPcs, timesDef), x[7], y[7], 0);
        ColumnText.showTextAligned(canvas, Element.ALIGN_LEFT, new Phrase(myStrQtyWithOvers, timesDef), x[8],
                y[8], 0);
        ColumnText.showTextAligned(canvas, Element.ALIGN_LEFT,
                new Phrase("(" + String.valueOf(myNumContainers) + " cases with overs)", timesDef), x[9], y[9],
                0);
        ColumnText.showTextAligned(canvas, Element.ALIGN_LEFT, new Phrase(myInputContainer, timesDef), x[10],
                y[10], 0);
        stamper.close();
        reader.close();

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

From source file:se.inera.intyg.intygstyper.fk7263.pdf.PdfDefaultGenerator.java

License:Open Source License

protected PdfDefaultGenerator(Utlatande intyg, List<Status> statuses, ApplicationOrigin applicationOrigin,
        boolean flatten) throws PdfGeneratorException {
    try {//from ww  w. j  a  va2  s  .c o  m
        this.intyg = intyg;

        outputStream = new ByteArrayOutputStream();

        PdfReader pdfReader = new PdfReader(PDF_TEMPLATE);
        PdfStamper pdfStamper = new PdfStamper(pdfReader, this.outputStream);
        fields = pdfStamper.getAcroFields();
        generatePdf();

        switch (applicationOrigin) {
        case MINA_INTYG:
            // perform additional decoration for MI originated pdf
            maskSendToFkInformation(pdfStamper);
            markAsElectronicCopy(pdfStamper);
            createRightMarginText(pdfStamper, pdfReader.getNumberOfPages(), intyg.getId(),
                    MINA_INTYG_MARGIN_TEXT);
            break;
        case WEBCERT:
            // perform additional decoration for WC originated pdf
            if (isCertificateSentToFK(statuses)) {
                maskSendToFkInformation(pdfStamper);
                markAsElectronicCopy(pdfStamper);
            }
            createRightMarginText(pdfStamper, pdfReader.getNumberOfPages(), intyg.getId(), WEBCERT_MARGIN_TEXT);
            createSignatureNotRequiredField(pdfStamper, pdfReader.getNumberOfPages());
            break;
        default:
            break;
        }

        pdfStamper.setFormFlattening(flatten);
        pdfStamper.close();

    } catch (Exception e) {
        throw new PdfGeneratorException(e);
    }
}

From source file:se.inera.intyg.intygstyper.fk7263.pdf.PdfEmployeeGenerator.java

License:Open Source License

protected PdfEmployeeGenerator(Utlatande intyg, List<Status> statuses, ApplicationOrigin applicationOrigin,
        List<String> selectedOptionalFields, boolean flatten) throws PdfGeneratorException {
    try {/* w w  w  .j  a  v  a2  s.  c  o  m*/
        this.intyg = intyg;

        outputStream = new ByteArrayOutputStream();

        PdfReader pdfReader = new PdfReader(PDF_TEMPLATE);
        PdfStamper pdfStamper = new PdfStamper(pdfReader, this.outputStream);
        fields = pdfStamper.getAcroFields();

        switch (applicationOrigin) {
        case MINA_INTYG:
            generateMIPdfWithOptionalFields(selectedOptionalFields);
            // perform additional decoration for MI originated pdf
            maskSendToFkInformation(pdfStamper);
            if (!EmployeeOptionalFields.containsAllValues(selectedOptionalFields)) {
                mark(pdfStamper, WATERMARK_TEXT_CONTENT_IS_CUSTOMIZED, MARK_AS_EMPLOYER_START_X,
                        MARK_AS_EMPLOYER_START_Y, MARK_AS_EMPLOYER_MI_HEIGHT, MARK_AS_EMPLOYER_MI_WIDTH);
            } else {
                markAsElectronicCopy(pdfStamper);
            }

            createRightMarginText(pdfStamper, pdfReader.getNumberOfPages(), intyg.getId(),
                    MINA_INTYG_MARGIN_TEXT);
            break;
        case WEBCERT:
            generateMinimalPdf();

            // perform additional decoration for WC originated pdf
            maskSendToFkInformation(pdfStamper);
            mark(pdfStamper, WATERMARK_TEXT_WC_EMPLOYER_MINIMAL_COPY, MARK_AS_EMPLOYER_START_X,
                    MARK_AS_EMPLOYER_START_Y, MARK_AS_EMPLOYER_WC_HEIGTH, MARK_AS_EMPLOYER_WC_WIDTH);

            createRightMarginText(pdfStamper, pdfReader.getNumberOfPages(), intyg.getId(), WEBCERT_MARGIN_TEXT);
            break;
        default:
            break;
        }

        createSignatureNotRequiredField(pdfStamper, pdfReader.getNumberOfPages());
        pdfStamper.setFormFlattening(flatten);
        pdfStamper.close();

    } catch (Exception e) {
        throw new PdfGeneratorException(e);
    }
}

From source file:se.inera.intyg.intygstyper.ts_bas.pdf.PdfGeneratorImpl.java

License:Open Source License

@Override
public byte[] generatePDF(Utlatande utlatande, ApplicationOrigin applicationOrigin)
        throws PdfGeneratorException {
    try {//from ww w.  j av  a  2  s  .  com
        ByteArrayOutputStream outputStream = new ByteArrayOutputStream();

        PdfReader pdfReader = new PdfReader(getPdfPath(utlatande));
        PdfStamper pdfStamper = new PdfStamper(pdfReader, outputStream);
        pdfStamper.setFormFlattening(formFlattening);
        AcroFields fields = pdfStamper.getAcroFields();
        populatePdfFields(utlatande, fields, applicationOrigin);

        // Decorate PDF depending on the origin of the pdf-call
        switch (applicationOrigin) {
        case MINA_INTYG:
            createLeftMarginText(pdfStamper, pdfReader.getNumberOfPages(), utlatande.getId(),
                    MINA_INTYG_MARGIN_TEXT);
            break;
        case WEBCERT:
            createLeftMarginText(pdfStamper, pdfReader.getNumberOfPages(), utlatande.getId(),
                    WEBCERT_MARGIN_TEXT);
            break;
        default:
            break;
        }

        pdfStamper.close();

        return outputStream.toByteArray();

    } catch (Exception e) {
        throw new PdfGeneratorException(e);
    }
}

From source file:se.inera.intyg.intygstyper.ts_diabetes.pdf.PdfGeneratorImpl.java

License:Open Source License

@Override
public byte[] generatePDF(Utlatande utlatande, ApplicationOrigin applicationOrigin)
        throws PdfGeneratorException {
    try {/*w ww  .j av  a2  s.  c om*/
        ByteArrayOutputStream outputStream = new ByteArrayOutputStream();

        PdfReader pdfReader = new PdfReader(getPdfPath(utlatande));
        PdfStamper pdfStamper = new PdfStamper(pdfReader, outputStream);
        pdfStamper.setFormFlattening(formFlattening);
        AcroFields fields = pdfStamper.getAcroFields();
        populatePdfFields(utlatande, fields);

        // Decorate PDF depending on the origin of the pdf-call
        switch (applicationOrigin) {
        case MINA_INTYG:
            createLeftMarginText(pdfStamper, pdfReader.getNumberOfPages(), utlatande.getId(),
                    MINA_INTYG_MARGIN_TEXT);
            break;
        case WEBCERT:
            createLeftMarginText(pdfStamper, pdfReader.getNumberOfPages(), utlatande.getId(),
                    WEBCERT_MARGIN_TEXT);
            break;
        default:
            break;
        }

        pdfStamper.close();

        return outputStream.toByteArray();

    } catch (Exception e) {
        throw new PdfGeneratorException(e);
    }
}

From source file:Servicios.formatos.java

private void b_hoja_unidadActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_b_hoja_unidadActionPerformed
    // TODO add your handling code here:
    h = new Herramientas(usr, 0);
    h.session(sessionPrograma);/*w w w  .j  ava2s .  c o  m*/

    Session session = HibernateUtil.getSessionFactory().openSession();
    try {
        Orden ord = (Orden) session.get(Orden.class, Integer.parseInt(orden));
        Date fecha = new Date();
        DateFormat dateFormat = new SimpleDateFormat("dd-MM-yyyyHH-mm-ss");//YYYY-MM-DD HH:MM:SS
        String valor = dateFormat.format(fecha);
        File folder = new File("reportes/" + ord.getIdOrden());
        folder.mkdirs();
        PdfReader reader = new PdfReader("imagenes/Plantillaunidad.pdf");
        PdfStamper stamp = new PdfStamper(reader,
                new FileOutputStream("reportes/" + ord.getIdOrden() + "/" + valor + "-unidad.pdf"));
        PdfContentByte cb = stamp.getUnderContent(1);
        AcroFields fdfDoc = stamp.getAcroFields();
        BaseFont bf = BaseFont.createFont(BaseFont.HELVETICA, BaseFont.CP1252, BaseFont.EMBEDDED);
        Image img;
        //IMAGEN
        cb.beginText();
        try {
            img = Image.getInstance(ord.getCompania().getFoto());
            img.setAbsolutePosition(35, 648);
            img.scaleAbsoluteWidth(265);
            img.scaleAbsoluteHeight(100);
            cb.addImage(img, true);
        } catch (Exception e) {
            e.printStackTrace();
        }

        //ORDEN 
        try {
            fdfDoc.setField("Orden", String.valueOf(ord.getIdOrden()));
        } catch (Exception e) {
            fdfDoc.setField("Orden", " ");
        }
        //ASEGURADO
        try {
            fdfDoc.setField("Asegurado", ord.getClientes().getNombre());
        } catch (Exception e) {
            fdfDoc.setField("Asegurado", " ");
        }
        //PLACAS
        try {
            fdfDoc.setField("Placas", ord.getNoPlacas());
        } catch (Exception e) {
            fdfDoc.setField("Placas", " ");
        }
        //MARCA
        try {
            fdfDoc.setField("Marca", ord.getMarca().getMarcaNombre());
        } catch (Exception e) {
            fdfDoc.setField("Marca", " ");
        }
        //TIPO
        try {
            fdfDoc.setField("Tipo", ord.getTipo().getTipoNombre());
        } catch (Exception e) {
            fdfDoc.setField("Tipo", " ");
        }
        //HOJALATERIA
        try {
            fdfDoc.setField("Hojalateria", ord.getEmpleadoByRHojalateria().getNombre());
        } catch (Exception e) {
            fdfDoc.setField("Hojalateria", " ");
        }
        //MECANICA
        try {
            fdfDoc.setField("Mecanica", ord.getEmpleadoByRMecanica().getNombre());
        } catch (Exception e) {
            fdfDoc.setField("Mecanica", " ");
        }
        //SUSPENCION
        try {
            fdfDoc.setField("Suspencion", ord.getEmpleadoByRSuspension().getNombre());
        } catch (Exception e) {
            fdfDoc.setField("Suspencion", " ");
        }
        //ELECTRICO
        try {
            fdfDoc.setField("Electrico", ord.getEmpleadoByRElectrico().getNombre());
        } catch (Exception e) {
            fdfDoc.setField("Electrico", " ");
        }
        //INGRESO
        try {
            fdfDoc.setField("Ingreso", ord.getFecha().toString());
        } catch (Exception e) {
            fdfDoc.setField("Ingreso", " ");
        }
        //ENTREGA
        try {
            fdfDoc.setField("Entrega", ord.getFechaTaller().toString());
        } catch (Exception e) {
            fdfDoc.setField("Entrega", " ");
        }
        cb.endText();

        stamp.close();
        PDF reporte = new PDF();
        reporte.cerrar();
        reporte.visualizar("reportes/" + ord.getIdOrden() + "/" + valor + "-unidad.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:Servicios.formatos.java

private void b_autorizacionActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_b_autorizacionActionPerformed
    // TODO add your handling code here:
    h = new Herramientas(usr, 0);
    h.session(sessionPrograma);/*from   w  w w.  j a v a 2 s  .c o m*/
    Session session = HibernateUtil.getSessionFactory().openSession();
    try {

        Orden ord = (Orden) session.get(Orden.class, Integer.parseInt(orden));

        Date fecha = new Date();
        DateFormat dateFormat = new SimpleDateFormat("dd-MM-yyyyHH-mm-ss");//YYYY-MM-DD HH:MM:SS
        String valor = dateFormat.format(fecha);
        File folder = new File("reportes/" + ord.getIdOrden());
        folder.mkdirs();
        PdfReader reader = new PdfReader("imagenes/PlantillaAceptacion.pdf");
        PdfStamper stamp = new PdfStamper(reader,
                new FileOutputStream("reportes/" + ord.getIdOrden() + "/" + valor + "-ACEPTACION.pdf"));
        PdfContentByte cb = stamp.getUnderContent(1);
        AcroFields fdfDoc = stamp.getAcroFields();
        BaseFont bf = BaseFont.createFont(BaseFont.HELVETICA, BaseFont.CP1252, BaseFont.EMBEDDED);
        Image img;
        cb.beginText();
        //IMAGEN CABECERA
        try {
            img = Image.getInstance(ord.getCompania().getFoto());
            img.setAbsolutePosition(32, 712);
            img.scaleAbsoluteWidth(130);
            img.scaleAbsoluteHeight(50);
            cb.addImage(img, true);
        } catch (Exception e) {
            e.printStackTrace();
        }

        //ASEGURADO
        try {
            fdfDoc.setField("NOMBRE", ord.getClientes().getNombre());
        } catch (Exception e) {
            fdfDoc.setField("NOMBRE", "");
        }
        //CELULAR
        try {
            fdfDoc.setField("CELULAR", ord.getClientes().getTelefono());
        } catch (Exception e) {
            fdfDoc.setField("CELULAR", "");
        }
        //IMAGEN
        Foto[] fotos = (Foto[]) ord.getFotos().toArray(new Foto[0]);
        for (int k = 0; k < fotos.length - 1; k++) {
            for (int f = 0; f < (fotos.length - 1) - k; f++) {
                if (fotos[f].getFecha().after(fotos[f + 1].getFecha()) == true) {
                    Foto aux;
                    aux = fotos[f];
                    fotos[f] = fotos[f + 1];
                    fotos[f + 1] = aux;
                }
            }
        }
        if (fotos.length > 0) {
            Image img1;
            try {
                img1 = Image
                        .getInstance("ordenes/" + ord.getIdOrden() + "/miniatura/" + fotos[0].getDescripcion());
                img1.setAbsolutePosition(50, 473);
                img1.scaleToFit(110, 100);
                cb.addImage(img1, true);
            } catch (Exception e) {
                e.printStackTrace();
            }
        }
        //MARCA
        try {
            fdfDoc.setField("MARCA", ord.getMarca().getMarcaNombre());
        } catch (Exception e) {
            fdfDoc.setField("MARCA", "");
        }
        //MODELO
        try {
            fdfDoc.setField("MODELO", ord.getModelo().toString());
        } catch (Exception e) {
            fdfDoc.setField("MODELO", "");
        }
        //TIPO
        try {
            fdfDoc.setField("TIPO", ord.getTipo().getTipoNombre());
        } catch (Exception e) {
            fdfDoc.setField("TIPO", "");
        }
        //PLACAS
        try {
            fdfDoc.setField("PLACAS", ord.getNoPlacas());
        } catch (Exception e) {
            fdfDoc.setField("PLACAS", "");
        }
        //SINIESTRO
        try {
            fdfDoc.setField("SINIESTRO", ord.getSiniestro());
        } catch (Exception e) {
            fdfDoc.setField("SINIESTRO", "");
        }
        //REPORTE
        try {
            fdfDoc.setField("REPORTE", ord.getNoReporte());
        } catch (Exception e) {
            fdfDoc.setField("REPORTE", "");
        }
        //NO ECONOMICO
        try {
            fdfDoc.setField("NO ECONOMICO", ord.getNoEconomico());
        } catch (Exception e) {
            fdfDoc.setField("NO ECONOMICO", "");
        }
        //NO MOTOR
        try {
            fdfDoc.setField("NO MOTOR", ord.getNoMotor());
        } catch (Exception e) {
            fdfDoc.setField("NO MOTOR", "");
        }
        cb.endText();
        stamp.close();
        PDF reporte = new PDF();
        reporte.visualizar("reportes/" + ord.getIdOrden() + "/" + valor + "-ACEPTACION.pdf");
        reporte.cerrar();
    } catch (Exception e) {
        System.out.println(e);
        JOptionPane.showMessageDialog(this, "No se pudo realizar el reporte si el archivo esta abierto");
    } finally {
        if (session != null)
            if (session.isOpen())
                session.close();
    }
}

From source file:Servicios.formatos.java

private void b_fecha_promesaActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_b_fecha_promesaActionPerformed
    // TODO add your handling code here:
    h = new Herramientas(usr, 0);
    h.session(sessionPrograma);/*from  ww w.  j ava 2s . co m*/

    Session session = HibernateUtil.getSessionFactory().openSession();
    try {
        Orden ord = (Orden) session.get(Orden.class, Integer.parseInt(orden));
        Configuracion con = (Configuracion) session.get(Configuracion.class, 1);
        Date fecha = new Date();
        DateFormat dateFormat = new SimpleDateFormat("dd-MM-yyyyHH-mm-ss");//YYYY-MM-DD HH:MM:SS
        String valor = dateFormat.format(fecha);
        File folder = new File("reportes/" + ord.getIdOrden());
        folder.mkdirs();
        PdfReader reader = new PdfReader("imagenes/Plantillapromesa.pdf");
        PdfStamper stamp = new PdfStamper(reader,
                new FileOutputStream("reportes/" + ord.getIdOrden() + "/" + valor + "-promesa.pdf"));
        PdfContentByte cb = stamp.getUnderContent(1);
        AcroFields fdfDoc = stamp.getAcroFields();
        BaseFont bf = BaseFont.createFont(BaseFont.HELVETICA, BaseFont.CP1252, BaseFont.EMBEDDED);

        cb.beginText();
        //FECHA DE INGRESO
        fdfDoc.setField("Fecha de ingreso", ord.getFecha().toString());
        //SINIESTRO
        if (ord.getSiniestro() != null)
            fdfDoc.setField("Siniestro", ord.getSiniestro());
        else
            fdfDoc.setField("Siniestro", "");
        //ASEGURADORA
        if (ord.getCompania().getNombre() != null)
            fdfDoc.setField("Aseguradora", ord.getCompania().getNombre());
        else
            fdfDoc.setField("Aseguradora", "");
        //ASEGURADO TERCERO
        if (ord.getClientes().getNombre() != null)
            fdfDoc.setField("Nombre", ord.getClientes().getNombre());
        else
            fdfDoc.setField("Nombre", "");
        //REPARO
        if (con.getEmpresa() != null)
            fdfDoc.setField("Reparo", con.getEmpresa());
        else
            fdfDoc.setField("Reparo", "");
        //MARCA
        if (ord.getMarca().getMarcaNombre() != null)
            fdfDoc.setField("Marca", ord.getMarca().getMarcaNombre());
        else
            fdfDoc.setField("Marca", "");
        //TIPO
        if (ord.getTipo().getTipoNombre() != null)
            fdfDoc.setField("Tipo", ord.getTipo().getTipoNombre());
        else
            fdfDoc.setField("Tipo", "");
        //MODELO
        if (ord.getModelo() != null)
            fdfDoc.setField("Modelo", ord.getModelo().toString());
        else
            fdfDoc.setField("Modelo", "");
        //PLACAS
        if (ord.getNoPlacas() != null)
            fdfDoc.setField("Placas", ord.getNoPlacas());
        else
            fdfDoc.setField("Placas", "");
        //fehca
        if (ord.getModelo() != null)
            fdfDoc.setField("Fecha1", ord.getModelo().toString());
        else
            fdfDoc.setField("Fecha1", "");
        //FECHA PROMESA
        if (ord.getFechaCliente() != null)
            fdfDoc.setField("FECHA PROMESA", ord.getFechaCliente().toString());
        else
            fdfDoc.setField("FECHA PROMESA", "");
        cb.endText();
        stamp.close();
        PDF reporte = new PDF();
        reporte.cerrar();
        reporte.visualizar("reportes/" + ord.getIdOrden() + "/" + valor + "-promesa.pdf");

    } 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();
}