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

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

Introduction

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

Prototype

public void close() throws DocumentException, IOException 

Source Link

Document

Closes the document.

Usage

From source file:PdfFormFiller.WrongParamsExeption.java

License:GNU General Public License

public static void fillPDFFile(String pdf_filename_in, String pdf_filename_out, String fields_filename,
        String font_file, String op, Boolean flatten, Boolean verbose) {
    OutputStream os;//from  www  .j a va2  s  .c o m
    PdfStamper stamp;
    try {
        PdfReader reader = new PdfReader(pdf_filename_in);

        if (pdf_filename_out != null) {
            os = new FileOutputStream(pdf_filename_out);
        } else {
            os = System.out;
        }

        stamp = new PdfStamper(reader, os, '\0');

        AcroFields form = stamp.getAcroFields();

        if (op.equals("list")) {
            formList(form);
        } else {
            if (font_file != null) {
                BaseFont bf = BaseFont.createFont(font_file, BaseFont.IDENTITY_H, true);
                form.addSubstitutionFont(bf);
            }
            Map<String, String> fields = readFile(fields_filename);
            for (Map.Entry<String, String> entry : fields.entrySet()) {
                if (verbose)
                    System.out.println("Field name = '" + entry.getKey() + "', New field value: '"
                            + entry.getValue() + "'");
                form.setField(entry.getKey(), entry.getValue());
            }

            stamp.setFormFlattening(flatten);
            stamp.close();
        }
    } catch (FileNotFoundException e) {
        System.err.println("FileNotFoundException: " + e.getMessage());
        System.exit(2);
    } catch (IOException e) {
        System.err.println("Input output error: " + e.getMessage());
        System.exit(3);
    } catch (DocumentException e) {
        System.err.println("Error while processing document: " + e.getMessage());
        System.exit(4);
    }
}

From source file:pdfupdate.PdfUpdate.java

public void manipulatePdf(String src, String dest) throws IOException, DocumentException {
    PdfReader.unethicalreading = false;/* w  w w .j  av a 2s  .c  o m*/
    PdfReader reader = new PdfReader(src);
    PdfStamper stamper = new PdfStamper(reader, new FileOutputStream(dest));
    AcroFields form = stamper.getAcroFields();
    XfaForm xfa = form.getXfa();
    xfa.fillXfaForm(new FileInputStream(XML));
    stamper.close();
    reader.close();
}

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();/*  w  ww  . j av a2s .  c  om*/
    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;/*w  w  w.  j  ava  2 s.  c o  m*/
    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   w w w.  j  av  a 2 s . co  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 {/*  ww  w  .  ja  v a  2s . 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 va 2  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  w ww.ja  v a  2 s. c  o m
        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 {/*from w w w  .j a  v  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);//from ww  w.  j av a 2s.  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();
}