Examples of PdfReader


Examples of com.itextpdf.text.pdf.PdfReader

      .getExternalContext()
      .getRealPath("/pdf/template.pdf");
     
     
      logger.info("Loading PDF-Template: "+pfad);
      PdfReader reader = new PdfReader(
          pfad  );

      PdfImportedPage page = writer.getImportedPage(reader, 1);

      PdfContentByte cb = writer.getDirectContent();
View Full Code Here

Examples of com.itextpdf.text.pdf.PdfReader

    // TODO: get date from signature
      signDate = cal.getTime();
    List<String> names = fields.getSignatureNames();
    if (names.size() > 1) {
      signatureName = names.get(names.size() - 2);
      reader = new PdfReader(fields.extractRevision(signatureName));
      this.fields = reader.getAcroFields();
      names = fields.getSignatureNames();
      signatureName = names.get(names.size() - 1);
      pkcs7 = coversWholeDocument();
      LOGGER.info(String.format("Checking %ssignature %s", pkcs7.isTsp() ? "document-level timestamp " : "", signatureName));
View Full Code Here

Examples of com.itextpdf.text.pdf.PdfReader

            if (StringUtils.isBlank(destvalue)) {
                throw new InstantiationException("You need to choose a destination file");
            }
            File dest = new File(destvalue);
            // we create a reader for a certain document
            PdfReader reader = new PdfReader(src.getAbsolutePath());
            // we retrieve the total number of pages and the page size
            int total = reader.getNumberOfPages();
            System.out.println("There are " + total + " pages in the original file.");
            Rectangle pageSize = reader.getPageSize(1);
            Rectangle newSize = new Rectangle(pageSize.getWidth()*2, pageSize.getHeight());
            // step 1: creation of a document-object
            Document document = new Document(newSize, 0, 0, 0, 0);
            // step 2: we create a writer that listens to the document
            ByteArrayOutputStream tmp = new ByteArrayOutputStream();
            PdfWriter writer = PdfWriter.getInstance(document, tmp);
            writer.setFullCompression();
            // step 3: we open the document
            document.open();
            // step 4: adding the content
            PdfContentByte cb = writer.getDirectContent();
            PdfImportedPage page;
            float offsetX;
            for (int p = 1; p <= total; p++) {
                offsetX = 0;
                if (p % 2 != 0) {
                    document.newPage();
                } else {
                    offsetX = pageSize.getWidth();
                }
                page = writer.getImportedPage(reader, p);
                cb.addTemplate(page, offsetX, 0);
            }
            // step 5: we close the document
            document.close();

            PdfReader reader2 = new PdfReader(new ByteArrayInputStream(tmp.toByteArray()));
            PdfStamper stamper = new PdfStamper(reader2, new FileOutputStream(dest));
            stamper.setMoreInfo(reader.getInfo());
            List<HashMap<String, Object>> outlines = SimpleBookmark.getBookmark(reader);
            for (int pageNum=1; pageNum<=total; pageNum++){
                int[] range = {pageNum,pageNum};
View Full Code Here

Examples of com.itextpdf.text.pdf.PdfReader

            }
            int rotation = Integer.parseInt(rotvalue);


            // we create a reader for a certain document
            PdfReader reader = new PdfReader(src.getAbsolutePath());
            // we retrieve the total number of pages and the page size
            int total = reader.getNumberOfPages();
            System.out.println("There are " + total + " pages in the original file.");

            PdfDictionary pageDict;
            int currentRotation;
            for (int p = 1; p <= total; p++) {
                currentRotation = reader.getPageRotation(p);
                pageDict = reader.getPageN(p);
                pageDict.put(PdfName.ROTATE, new PdfNumber(currentRotation + rotation));
            }
            PdfStamper stamper = new PdfStamper(reader, new FileOutputStream(dest));
            stamper.close();
        } catch (Exception e) {
View Full Code Here

Examples of com.lowagie.text.pdf.PdfReader

     * @throws IOException
     */
    static public void listContentStream(File pdfFile) throws IOException {
        int maxPage = -1;   
       
        PdfReader reader = new PdfReader(pdfFile.getCanonicalPath());

           
            // look through the page content of each page and ensure that it does
            // not have a BT command.
            int maxPageNum = reader.getNumberOfPages();
            if (maxPage != -1)
                maxPageNum = maxPage;
           
            for (int pageNum = 1; pageNum <= maxPageNum; pageNum++){
                System.out.println("==============Page " + pageNum + "====================");
                System.out.println("- - - - - Dictionary - - - - - -");
                PdfDictionary pageDictionary = reader.getPageN(pageNum);
                System.out.println(getDictionaryDetail(pageDictionary));
                System.out.println("- - - - - Content Stream - - - - - -");
                RandomAccessFileOrArray f = reader.getSafeFile();
               
                byte[] contentBytes = reader.getPageContent(pageNum, f);
                f.close();

               
               
                InputStream is = new ByteArrayInputStream(contentBytes);
View Full Code Here

Examples of com.lowagie.text.pdf.PdfReader

        }   
    }
   
    private void drawPDFAsImage(PDFAsImage image, int x, int y) {
        URL url = image.getURL();
        PdfReader reader = null;
       
        try {
            reader = getReader(url);
        } catch (IOException e) {
            throw new XRRuntimeException("Could not load " + url + ": " +
View Full Code Here

Examples of com.lowagie.text.pdf.PdfReader

                (float)mx[3], (float)mx[4], (float)mx[5]);
        _currentPage.saveState();
    }
   
    public PdfReader getReader(URL url) throws IOException {
        PdfReader result = (PdfReader) _readerCache.get(url);
        if (result ==  null) {
            result = new PdfReader(url);
            _readerCache.put(url, result);
        }
        return result;
    }
View Full Code Here

Examples of com.lowagie.text.pdf.PdfReader

  public void testSaveEncrypted() throws Exception
  {
    CountryReportSecurityXMLDemoHandler demoHandler = new CountryReportSecurityXMLDemoHandler();
    MasterReport report = demoHandler.createReport();
    byte[] b = createPDF(report);
    PdfReader reader = new PdfReader(b, DocWriter.getISOBytes("Duck"));
    assertTrue(reader.isEncrypted());
  }
View Full Code Here

Examples of com.lowagie.text.pdf.PdfReader

    }
   
    protected static final boolean comparePdf(String inputFileName1, String inputFileName2, String outputFileName) throws Exception{   
      // Comparison Routine
      boolean equal = true;
      PdfReader reader1 = new PdfReader(inputFileName1);
      PdfReader reader2 = new PdfReader(inputFileName2);
      FileOutputStream outputStream = new FileOutputStream(outputFileName);
      if(reader1.getFileLength() != reader2.getFileLength()) {
        equal = false;
        String dataToWrite = "Files are of different length. One is "  + reader1.getFileLength() + " and the other is  " + reader2.getFileLength() + "\n";   //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
        outputStream.write(dataToWrite.getBytes());
      } else if(reader1.getNumberOfPages() != reader2.getNumberOfPages()) {
        equal = false;
        String dataToWrite = "Number of pages are different in both files. One has "  + reader1.getNumberOfPages() + " and the other has  " + reader2.getNumberOfPages() + "\n";   //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
        outputStream.write(dataToWrite.getBytes());
      } else {
        for(int i=1;i<=reader1.getNumberOfPages();i++) {
          byte[] data1 = reader1.getPageContent(i);
          byte[] data2 = reader2.getPageContent(i);
          for(int j = 0; i < data1.length; i ++) {
            if(data1[j] != data2[j]) {
              equal = false;
              String dataToWrite = "Page #" + i + "has different data. File 1 has" + data1[j] + "Whereas File 2 has " + data2[j] + "\n";   //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$ //$NON-NLS-4$
              outputStream.write(dataToWrite.getBytes());
            }
          }
        }
      }
      if(equal) {
        String dataToWrite = "Files are identical";//$NON-NLS-1$
        outputStream.write(dataToWrite.getBytes());
      }
      outputStream.flush();
      outputStream.close();
      reader1.close();
      reader2.close();
      return equal;
    }
View Full Code Here

Examples of com.lowagie.text.pdf.PdfReader

  protected static boolean comparePdf(String inputFileName1, String inputFileName2, String outputFileName)
      throws Exception
  {
    // Comparison Routine
    boolean equal = true;
    PdfReader reader1 = new PdfReader(inputFileName1);
    PdfReader reader2 = new PdfReader(inputFileName2);
    FileOutputStream outputStream = new FileOutputStream(outputFileName);
/*    if (reader1.getFileLength() != reader2.getFileLength()) {
      equal = false;
      String dataToWrite = "Files are of different length. One is " + reader1.getFileLength() + " and the other is  " + reader2.getFileLength() + "\n"; //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
      outputStream.write(dataToWrite.getBytes());
    } else */
    if (reader1.getNumberOfPages() != reader2.getNumberOfPages())
    {
      equal = false;
      String dataToWrite = "Number of pages are different in both files. One has " + reader1.getNumberOfPages() + " and the other has  " + reader2.getNumberOfPages() + "\n"; //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
      outputStream.write(dataToWrite.getBytes());
    }
    else
    {
      for (int i = 1; i <= reader1.getNumberOfPages(); i++)
      {
        byte[] data1 = reader1.getPageContent(i);
        byte[] data2 = reader2.getPageContent(i);
        for (int j = 0; i < data1.length; i++)
        {
          if (data1[j] != data2[j])
          {
            equal = false;
            String dataToWrite = "Page #" + i + "has different data. File 1 has" + data1[j] + "Whereas File 2 has " + data2[j] + "\n"; //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$ //$NON-NLS-4$
            outputStream.write(dataToWrite.getBytes());
          }
        }
      }
    }
    if (equal)
    {
      String dataToWrite = "Files are identical";//$NON-NLS-1$
      outputStream.write(dataToWrite.getBytes());
    }
    outputStream.flush();
    outputStream.close();
    reader1.close();
    reader2.close();
    return equal;
  }
View Full Code Here
TOP
Copyright © 2018 www.massapi.com. 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.