Mark Stephens Mark has been working with Java and PDF since 1999 and is a big NetBeans fan. He enjoys speaking at conferences. He has an MA in Medieval History and a passion for reading.

How to extract clipped images from PDF file in Java

45 sec read

jpedal

PDF files are not directly supported by Java. This tutorial shows you how to extract clipped images from a PDF file in 5 simple steps using the JPedal PDF library.

Why use a third-party library to handle PDF files?

PDF files are a very complex binary/text hybrid data structure. The image data, color information, clipping and scaling details are all stored separately in a compressed format and need to be extracted and combined together.

A third-party library handles all the for you automatically. In this example, we will use our JPedal PDF library. This provides an easy to use Java PDF APi so you can work with PDF files easily in Java.

How to Extract clipped images from PDF files with JPedal?

  1. Create a File handle, InputStream, or URL pointing to the PDF file
    ExtractClippedImages extract = new ExtractClippedImages(path);
  2. Include a password if file password protected
    extract.setPassword("password");
  3. Open the PDF file
    if (extract.openPDFFile()) {
  4. Iterate over the images on each page
      int pageCount = extract.getPageCount();
      for (int page = 1; page <= pageCount; page++) {
    
        int imagesOnPageCount = extract.getImageCount(page);
          for (int image = 0; image < imagesOnPageCount; image++) {
            BufferedImage img = extract.getClippedImage(page, 
            image, true);
          }
       }
     }
  5. Close the PDF file
     extract.closePDFfile();
    

 


JPedal makes it easy to extract clipped images from PDF files


Java PDF SDK for working with PDF filesFind out more



Are you a Java Developer working with PDF files?

Find out why you should be using JPedal
Mark Stephens Mark has been working with Java and PDF since 1999 and is a big NetBeans fan. He enjoys speaking at conferences. He has an MA in Medieval History and a passion for reading.