This tutorial shows you how to extract clipped images from a PDF file in 5 simple steps using the JPedal PDF library. Clipped images are raw images that have had their formats edited, this includes cropping, flipping, resizing and more.
How to Extract clipped images from PDF files?
- Add JPedal to your class or module path. (download the trial jar).
- Create a File handle, InputStream, or URL pointing to the PDF file
- Include a password if file password protected
- Open the PDF file
- Iterate over the images on each page
- Close the PDF file
and the Java code to extract clipped images…
File file = new File("/path/to/document.pdf"));
ExtractClippedImages extract = new ExtractClippedImages(file);
//extract.setPassword("password");
if (extract.openPDFFile()) {
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);
}
}
}
extract.closePDFfile();
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.
Extract clipped images from a PDF file with JPedal
If you are looking to use JPedal to extract clipped images from PDF files, we recommend you start with these tutorials:-