Package com.itextpdf.text.pdf

Examples of com.itextpdf.text.pdf.PdfReader


      if (source == null) {
        throw new DocumentException("Parameter 'source' + must be set");
      }

      PdfReader reader = IText.read(source);
      PdfReaderContentParser parser = new PdfReaderContentParser(reader);
      TextExtractionStrategy strategy = new SimpleTextExtractionStrategy();
      int pageCount = reader.getNumberOfPages();
      ByteArrayOutputStream outputStream = new ByteArrayOutputStream();
      PrintWriter writer = new PrintWriter(outputStream);

      for (int i = 1; i <= pageCount; i++) {
        TextExtractionStrategy result = parser.processContent(i, strategy);
        String pageText = result.getResultantText();
        writer.println(pageText);
      }

      reader.close();
      writer.close();

      String text = new String(outputStream.toByteArray());
      return new DocumentOutput(text);
    } catch (IOException e) {
View Full Code Here


    testObj.formatA4( newPdfOutputStream, new InputStream[] { folgebrev, dokument } );
    assertTrue( result.exists() );
    assertTrue( result.length() > 0 );
    assertTrue( testObj.isValidPdf( result ) );
    PdfReader readerResult = new PdfReader( new FileInputStream( result ) );
    assertEquals( "antallSider folgebrev", 1, new PdfReader( Thread.currentThread().getContextClassLoader().getResourceAsStream("test.pdf" ) ).getNumberOfPages() );
    assertEquals( "antallSider dokument", 14, new PdfReader( Thread.currentThread().getContextClassLoader().getResourceAsStream("1000_210000_000000002187.pdf" ) ).getNumberOfPages() );
    assertEquals( "antall sider resultat", 16, readerResult.getNumberOfPages() );
    //view( result );
  }
View Full Code Here

    testObj.concat( newPdfOutputStream, new InputStream[] { docA, docB, docC, docD } );
    assertTrue( result.exists() );
    assertTrue( result.length() > 0 );
    assertTrue( testObj.isValidPdf( result ) );
    //view( result );
    PdfReader readerResult = new PdfReader( new FileInputStream( result ) );
    assertEquals( "antallSider docA", 1, new PdfReader( Thread.currentThread().getContextClassLoader().getResourceAsStream("test.pdf" ) ).getNumberOfPages() );
    assertEquals( "antallSider docB", 1, new PdfReader( Thread.currentThread().getContextClassLoader().getResourceAsStream("test.pdf" ) ).getNumberOfPages() );
    assertEquals( "antallSider docC", 14, new PdfReader( Thread.currentThread().getContextClassLoader().getResourceAsStream("1000_210000_000000002187.pdf" ) ).getNumberOfPages() );
    assertEquals( "antallSider docD", 4, new PdfReader( Thread.currentThread().getContextClassLoader().getResourceAsStream("000000000061.pdf" ) ).getNumberOfPages() );
    assertEquals( "antall sider resultat", 22, readerResult.getNumberOfPages() );
  }
View Full Code Here

    testObj.formatA4(newPdfOutputStream, new InputStream[]{ikkesnu});
    assertTrue(result.exists());
    assertTrue(result.length() > 0);
    assertTrue(testObj.isValidPdf(result));

    PdfReader reader = new PdfReader(new FileInputStream(result));
    int numberOfPages = reader.getNumberOfPages();
    for (int i = 1; i <= numberOfPages; i++) {
      Rectangle size = reader.getPageSize(i);
      assertEquals(842, size.getHeight(), 0.1);
      assertEquals(595, size.getWidth(), 0.1);
      assertEquals(0, size.getRotation());
    }
  }
View Full Code Here

  public InputStream cut(final InputStream source, final int start, final int end) {
    try {
      Assert.notNull(source, "source");
      Assert.greaterOrEqual(start, 1, "start");

      PdfReader reader = new PdfReader(source);
      Document document = new Document(reader.getPageSizeWithRotation(1));
      InputOutputStream outputStream = new InputOutputStream();
      PdfCopy writer = new PdfCopy(document, outputStream);
      int pageCount = reader.getNumberOfPages();

      Assert.lessOrEqual(start, pageCount, "start");

      int endPage = end;
      if (endPage > pageCount) {
        endPage = pageCount;
      }

      document.open();

      for (int i = start; i <= endPage; i++) {
        PdfImportedPage page = writer.getImportedPage(reader, i);
        writer.addPage(page);
      }

      document.close();
      writer.close();
      reader.close();

      return outputStream.getInputStream();
    } catch (IOException e) {
      throw new PDFException(e);
    } catch (DocumentException e) {
View Full Code Here

      PdfCopy writer = new PdfCopy(document, outputStream);

      document.open();

      for (InputStream source : sources) {
        PdfReader reader = new PdfReader(source);
        int pageCount = reader.getNumberOfPages();
        for (int i = 1; i <= pageCount; i++) {
          PdfImportedPage page = writer.getImportedPage(reader, i);
          writer.addPage(page);
        }
        reader.close();
      }

      document.close();
      writer.close();
View Full Code Here

  public InputStream[] split(final InputStream source, final int size) {
    try {
      Assert.notNull(source, "source");
      Assert.greaterThan(size, 0, "size");

      PdfReader reader = new PdfReader(source);
      int pageCount = reader.getNumberOfPages();
      List<InputStream> list = new LinkedList<InputStream>();

      Document document = null;
      InputOutputStream outputStream = null;
      PdfCopy writer = null;
      for (int i = 1; i <= pageCount; i++) {
        if ((document == null) || ((i % size) == 0)) {
          if (document != null) {
            document.close();
            writer.close();
            list.add(outputStream.getInputStream());
          }
          document = new Document(reader.getPageSizeWithRotation(1));
          outputStream = new InputOutputStream();
          writer = new PdfCopy(document, outputStream);
        }
        PdfImportedPage page = writer.getImportedPage(reader, i);
        writer.addPage(page);
      }

      if (document != null) {
        document.close();
        writer.close();
        list.add(outputStream.getInputStream());
      }

      reader.close();

      return CollectionUtils.toArray(list, InputStream.class);
    } catch (IOException e) {
      throw new PDFException(e);
    } catch (DocumentException e) {
View Full Code Here

  @Override
  public String getText(final InputStream source) {
    try {
      Assert.notNull(source, "source");

      PdfReader reader = new PdfReader(source);
      PdfReaderContentParser parser = new PdfReaderContentParser(reader);
      TextExtractionStrategy strategy = new SimpleTextExtractionStrategy();
      int pageCount = reader.getNumberOfPages();
      ByteArrayOutputStream outputStream = new ByteArrayOutputStream();
      PrintWriter writer = new PrintWriter(outputStream);

      for (int i = 1; i <= pageCount; i++) {
        TextExtractionStrategy result = parser.processContent(i, strategy);
        String pageText = result.getResultantText();
        writer.println(pageText);
      }

      reader.close();
      writer.close();

      String text = new String(outputStream.toByteArray());
      return text;
    } catch (IOException e) {
View Full Code Here

      Certificate[] chain = privateEntry.getChain();

      DigestType digestType = this.getDigestTypeFromSignature(certificate.getSigAlgName());
      Calendar calendar = Calendar.getInstance();

      PdfReader reader = new PdfReader(data);
      PdfStamper stamper = PdfStamper.createSignature(reader, outputStream, PDFSigner.PDF_SIGNATURE_VERSION, null, true);

      PdfSignatureAppearance appearance = stamper.getSignatureAppearance();
      appearance.setCrypto(privateKey, chain, null, PdfSignatureAppearance.SELF_SIGNED);
      appearance.setContact(this.parameters.getContactInfo());
View Full Code Here

  }

  @Override
  public Signature[] getSignatures(final byte[] data) {
    try {
      PdfReader reader = new PdfReader(data);
      AcroFields fields = reader.getAcroFields();
      Collection<Signature> signatures = new ArrayList<Signature>();
      if (fields != null) {
        List<String> list = fields.getSignatureNames();
        if ((list != null) && (!list.isEmpty())) {
          for (String str : list) {
View Full Code Here

TOP

Related Classes of com.itextpdf.text.pdf.PdfReader

Copyright © 2018 www.massapicom. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.