java - extract images from pdf using pdfbox -


i m trying extract images pdf using pdfbox. example pdf here

but m getting blank images only.

the code m trying:-

public static void main(string[] args) {    pdfimageextract obj = new pdfimageextract();     try {         obj.read_pdf();     } catch (ioexception ex) {         system.out.println("" + ex);     }  }   void read_pdf() throws ioexception {     pddocument document = null;      try {         document = pddocument.load("c:\\users\\pradyut\\documents\\mcs-034.pdf");     } catch (ioexception ex) {         system.out.println("" + ex);     }     list pages = document.getdocumentcatalog().getallpages();     iterator iter = pages.iterator();      int =1;     string name = null;      while (iter.hasnext()) {         pdpage page = (pdpage) iter.next();         pdresources resources = page.getresources();         map pageimages = resources.getimages();         if (pageimages != null) {              iterator imageiter = pageimages.keyset().iterator();             while (imageiter.hasnext()) {                 string key = (string) imageiter.next();                 pdxobjectimage image = (pdxobjectimage) pageimages.get(key);                 image.write2file("c:\\users\\pradyut\\documents\\image" + i);                 ++;             }         }     }  } 

thanks

the below getimagesfrompdf java class images in 04-request-headers.pdf file , save files destination folder pdfcopy.

import java.io.file; import java.util.iterator; import java.util.list; import java.util.map;  import org.apache.pdfbox.pdmodel.pddocument; import org.apache.pdfbox.pdmodel.pdpage; import org.apache.pdfbox.pdmodel.pdresources; import org.apache.pdfbox.pdmodel.graphics.xobject.pdxobjectimage;  @suppresswarnings({ "unchecked", "rawtypes", "deprecation" }) public class getimagesfrompdf {     public static void main(string[] args) {         try {             string sourcedir = "c:/pdfcopy/04-request-headers.pdf";// paste pdf files in pdfcopy folder read             string destinationdir = "c:/pdfcopy/";             file oldfile = new file(sourcedir);             if (oldfile.exists()) {             pddocument document = pddocument.load(sourcedir);              list<pdpage> list = document.getdocumentcatalog().getallpages();              string filename = oldfile.getname().replace(".pdf", "_cover");             int totalimages = 1;             (pdpage page : list) {                 pdresources pdresources = page.getresources();                  map pageimages = pdresources.getimages();                 if (pageimages != null) {                      iterator imageiter = pageimages.keyset().iterator();                     while (imageiter.hasnext()) {                         string key = (string) imageiter.next();                         pdxobjectimage pdxobjectimage = (pdxobjectimage) pageimages.get(key);                         pdxobjectimage.write2file(destinationdir + filename+ "_" + totalimages);                         totalimages++;                     }                 }             }         } else {             system.err.println("file not exists");         }     } catch (exception e) {         e.printstacktrace();     } } 

}


Comments