Extracting images from pdf using java

711 Views Asked by At

I have been trying to extract images from a pdf using pdfbox, converting them into buffered image and saving them.

 document = PDDocument.load("path");
        List pages = document.getDocumentCatalog().getAllPages();
        Iterator iter = pages.iterator();
        while( iter.hasNext() )
        {
            PDPage page = (PDPage)iter.next();
            PDResources resources = page.getResources();
            Map images = resources.getImages();
            if( images != null )
            {
                Iterator imageIter = images.keySet().iterator();
                int i = 0;
                while( imageIter.hasNext() )
                {
                    i++;
                    String key = (String)imageIter.next();
                    PDXObjectImage image = (PDXObjectImage)images.get( key );
                    BufferedImage b = image.getRGBImage();
                    File outputfile = new File("D:\\Image\\A"+i+".png");
                    ImageIO.write(b, "png", outputfile);
                }
            }
        }

but while converting into buffered image getRGBImage function is returning null. i need buffered image because i need to compare it with another image. how to solve this?

0

There are 0 best solutions below