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

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

Introduction

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

Prototype

public PdfReader(final PdfReader reader) 

Source Link

Document

Creates an independent duplicate.

Usage

From source file:tools.ImprimirautorizacionrxFinal.java

public PdfReader ImprimirautorxFinal() {
    try {//from   w w w.  j  a v  a2s  .co m
        Map parametro = new HashMap();
        parametro.put("idevu", "" + getIdevu());
        parametro.put("codigo", "" + getCodigo());
        parametro.put("NombreReport", "" + getNombrereport());
        parametro.put("version", "" + getVersion());
        parametro.put("servicio", "" + getServicio());
        JasperPrint informe = JasperFillManager.fillReport(
                System.getProperty("user.dir") + "/Reportes/solicitudprocedimientorxpost.jasper", parametro,
                getConnection());
        JRExporter exporter = new JRPdfExporter();
        exporter.setParameter(JRExporterParameter.JASPER_PRINT, informe);
        tempFile = File.createTempFile("solicitudprocedimientosrx", ".pdf");
        exporter.setParameter(JRExporterParameter.OUTPUT_FILE, tempFile);
        exporter.exportReport();
        return new PdfReader(tempFile.getAbsolutePath());
        //            Desktop.getDesktop().open(tempFile);
        //            tempFile.deleteOnExit();
    } catch (IOException e) {
        JOptionPane.showMessageDialog(null,
                "Error General Lanzando Reporte Descripcion: Ex00026" + e.getMessage());
        return null;
    } catch (JRException e) {
        JOptionPane.showMessageDialog(null,
                "Error General Lanzando Reporte Descripcion: Ex00026" + e.getMessage());
        return null;
    }
}

From source file:tutorial.PDFtoText.java

public void convertPDFtoText() throws IOException {
    /*variabel "pdf" digunakan untuk menampung alamat direktori tempat file pdf disimpan.*/
    String pdf = txtDirektori.getText();
    StringBuilder text = new StringBuilder();
    String resultText;/*from  w  w w  . j  a v  a  2  s  . com*/

    /*Buat file Text ".txt"*/
    File namaFile = new File(txtDirektori.getText().replace("pdf", "txt"));
    if (namaFile.createNewFile()) {
        System.out.println("File .txt berhasil dibuat.");
    }

    try {
        /*Panggil class yang ada pada library iText untuk membaca file PDF*/
        PdfReader reader = new PdfReader(pdf);
        PdfReaderContentParser parser = new PdfReaderContentParser(reader);
        TextExtractionStrategy strategy;
        for (int i = 1; i <= reader.getNumberOfPages(); i++) {
            strategy = parser.processContent(i, new SimpleTextExtractionStrategy());
            text.append(strategy.getResultantText());
        }
        resultText = text.toString();

        /*Code untuk menuliskan hasil pembacaan file PDF ke file Text*/
        StringTokenizer stringTokenizer = new StringTokenizer(resultText, "\n");
        PrintWriter lineWriter = new PrintWriter(new FileOutputStream(namaFile));
        while (stringTokenizer.hasMoreTokens()) {
            String curToken = stringTokenizer.nextToken();
            lineWriter.println(curToken);
        }
        lineWriter.flush();
        lineWriter.close();
    } catch (IOException e) {
        e.printStackTrace();
    }
}

From source file:tutorials.encryptpdf.encryptpdf.java

public static void main(String[] args) {
    try {//from ww w  .  j a v  a2 s  .c  om
        PdfReader reader = new PdfReader("test.pdf");
        PdfStamper stamper = new PdfStamper(reader, new FileOutputStream("encrypted.pdf"));
        stamper.setEncryption(null, null, PdfWriter.ALLOW_PRINTING,
                PdfWriter.ENCRYPTION_AES_256 | PdfWriter.DO_NOT_ENCRYPT_METADATA);
        stamper.close();
        reader.close();
    } catch (IOException | DocumentException ex) {
        ex.printStackTrace();
    }
}

From source file:tutorials.readpdf.readpdf.java

public static void main(String[] args) {

    try {//from  w  w w  . j a  v a 2 s.c o m

        PdfReader reader = new PdfReader("test.pdf");
        System.out.println("This PDF has " + reader.getNumberOfPages() + " pages.");
        System.out.println("Is this document tampered: " + reader.isTampered());
        System.out.println("Is this document encrypted: " + reader.isEncrypted());
        for (int i = 1; i <= reader.getNumberOfPages(); i++) {
            String page = PdfTextExtractor.getTextFromPage(reader, i);
            System.out.println("Page Content:\n\n" + page + "\n\n");
        }
        reader.close();

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

From source file:uk.ac.tgac.conan.core.service.impl.PdfOperationsServiceImpl.java

License:Open Source License

@Override
public void extractPage(File in, File out, int page) throws IOException, DocumentException {

    log.debug("Starting PDF page extraction");

    Document document = new Document();

    // Create a reader for the input file
    PdfReader reader = new PdfReader(new FileInputStream(in));

    if (page > reader.getNumberOfPages())
        throw new IndexOutOfBoundsException("Page number " + page + " does not exist in " + in.getPath());

    // Create a copier for the output file
    PdfCopy copy = new PdfCopy(document, new FileOutputStream(out));

    log.debug("PDF extraction resources created");

    document.open();/*ww  w  .  j  ava  2s. c  om*/

    copy.addPage(copy.getImportedPage(reader, page));

    document.close();

    log.debug("Starting PDF page extracted successfully");
}

From source file:uk.bl.dpt.qa.flint.wrappers.iTextWrapper.java

License:Apache License

/**
 * Extracts text from a PDF.//from   w  w  w .  j  av a  2  s  . c  om
 * @param pFile input file
 * @param pOutput output file
 * @param pOverwrite whether or not to overwrite an existing output file
 * @return true if converted ok, otherwise false
 */
public boolean extractTextFromPDF(File pFile, File pOutput, boolean pOverwrite) {
    if (pOutput.exists() & (!pOverwrite))
        return false;

    boolean ret = true;

    PrintWriter pw = null;
    PdfReader reader = null;

    try {
        pw = new PrintWriter(new FileWriter(pOutput));
        reader = new PdfReader(pFile.getAbsolutePath());
        PdfReaderContentParser parser = new PdfReaderContentParser(reader);
        TextExtractionStrategy strategy;
        for (int i = 0; i < reader.getNumberOfPages(); i++) {
            try {
                //page numbers start at 1
                strategy = parser.processContent((i + 1), new SimpleTextExtractionStrategy());
                //write text out to file
                pw.println(strategy.getResultantText());
            } catch (ExceptionConverter e) {
                e.printStackTrace();
                ret = false;
                pw.println("iText Exception: Page " + (i + 1) + ": " + e.getClass().getName() + ": "
                        + e.getMessage());
            }
        }
    } catch (IOException e) {
        ret = false;
        // TODO Auto-generated catch block
        e.printStackTrace();
    } finally {
        if (pw != null)
            pw.close();
        if (reader != null)
            reader.close();
    }

    return ret;
}

From source file:uk.bl.dpt.qa.flint.wrappers.iTextWrapper.java

License:Apache License

/**
 * Check if a PDF file is valid or not/*from w  ww . j a  v a2s.com*/
 * @param pFile file to check
 * @return whether the file is valid or not
 */
public boolean isValid(File pFile) {

    boolean ret = false;

    PdfReader reader = null;
    try {
        reader = new PdfReader(pFile.getAbsolutePath());
        LOGGER.debug("validating through {} pages of {}", reader.getNumberOfPages(), pFile.getName());
        for (int i = 0; i < reader.getNumberOfPages(); i++) {
            //page numbers start at 1
            PdfTextExtractor.getTextFromPage(reader, (i + 1));
        }
        ret = true;
    } catch (BadPasswordException e) {
        //actually an error???
    } catch (InvalidPdfException e) {
        LOGGER.warn("InvalidPdfException leads to invalidity: {}", e);
    } catch (IOException e) {
        LOGGER.warn("IOException leads to invalidity: {}", e);
    } catch (Exception e) {
        LOGGER.warn("Exception leads to invalidity: {}", e);
    } finally {
        if (reader != null)
            reader.close();
    }

    return ret;
}

From source file:uk.bl.dpt.qa.flint.wrappers.iTextWrapper.java

License:Apache License

/**
 * Check if a PDF file has DRM or not//from   w ww .  j a  va  2 s.  c o  m
 * @param pFile file to check
 * @return whether the file is had DRM or not
 */
public boolean hasDRM(File pFile) {

    boolean drm = false;

    PdfReader reader = null;
    try {
        reader = new PdfReader(pFile.getAbsolutePath());
        drm = reader.isEncrypted();
    } catch (BadPasswordException e) {
        //assume drm
        drm = true;
    } catch (IOException e) {
        // TODO Auto-generated catch block
        //e.printStackTrace();
    } catch (Exception e) {
        e.printStackTrace();
    } finally {
        if (reader != null)
            reader.close();
    }

    return drm;
}

From source file:uk.bl.wa.tika.parser.pdf.itext.PDFParser.java

License:Apache License

public static void main(String[] args) {
    try {//from ww  w.  jav  a2 s .  c  o m
        FileInputStream input = new FileInputStream(new File("src/test/resources/simple-PDFA-1a.pdf"));
        OutputStream output = System.out; //new FileOutputStream( new File( "Z:/part-00001.xml" ) );
        PdfReader reader = new PdfReader(input);
        StringBuilder builder = new StringBuilder();

        Metadata metadata = new Metadata();
        PDFParser.extractMetadata(reader, metadata);
        builder.append("<?xml version=\"1.0\" encoding=\"UTF-8\"?><wctdocs><![CDATA[");
        builder.append(PDFParser.extractText(reader));
        builder.append("]]></wctdocs>\n");
        input.close();

        output.write(builder.toString().getBytes("UTF-8"));

        for (String key : metadata.names()) {
            output.write((key + " : " + metadata.get(key) + "\n").getBytes("UTF-8"));
        }
        output.close();
    } catch (Exception e) {
        e.printStackTrace();
    }
}

From source file:uk.bl.wa.tika.parser.pdf.itext.PDFParser.java

License:Apache License

public void parse(InputStream stream, ContentHandler handler, Metadata metadata, ParseContext context)
        throws IOException, SAXException, TikaException {
    PdfReader reader = new PdfReader(stream);
    PDFParser.extractMetadata(reader, metadata);

    XHTMLContentHandler xhtml = new XHTMLContentHandler(handler, metadata);
    xhtml.startDocument();//from  w w  w  .ja  va2 s . c  o m
    xhtml.startElement("p");
    xhtml.characters(new String(PDFParser.extractText(reader).getBytes("UTF-8"), "UTF-8"));
    xhtml.endElement("p");
    xhtml.endDocument();
}