Search and Get Images from PDF Document
Contents
[
Hide
]
The ImagePlacementAbsorber allows you to search among images on all pages in a PDF document.
To search a whole document for images:
- Call the Pages collection’s Accept method. The Accept method takes an ImagePlacementAbsorber object as a parameter. This returns a collection of ImagePlacement objects.
- Loop through the ImagePlacements objects and get their properties (Image, dimensions, resolution and so on).
The following code snippet shows how to search a document for all its images.
package com.aspose.pdf.examples;
import java.io.IOException;
import com.aspose.pdf.*;
public class ExampleSearchAndGet {
private static String _dataDir = "/home/admin1/pdf-examples/Samples/";
public static void SearchImages() throws IOException {
// Open document
Document doc = new Document(_dataDir + "SearchAndGetImages.pdf");
// Create ImagePlacementAbsorber object to perform image placement search
ImagePlacementAbsorber abs = new ImagePlacementAbsorber();
// Accept the absorber for all the pages
doc.getPages().accept(abs);
// Loop through all ImagePlacements, get image and ImagePlacement Properties
for (ImagePlacement imagePlacement : abs.getImagePlacements()) {
// Get the image using ImagePlacement object
// XImage image = imagePlacement.getImage();
// Display image placement properties for all placements
System.out.println("image width:" + imagePlacement.getRectangle().getWidth());
System.out.println("image height:" + imagePlacement.getRectangle().getHeight());
System.out.println("image LLX:" + imagePlacement.getRectangle().getLLX());
System.out.println("image LLY:" + imagePlacement.getRectangle().getLLY());
System.out.println("image horizontal resolution:" + imagePlacement.getResolution().getX());
System.out.println("image vertical resolution:" + imagePlacement.getResolution().getY());
}
}
}
To get an image from an individual page, use the following code:
doc.getPages().get_Item(1).accept(abs)