我有一段代码从PDF中收集图像并使用pdfBox将它们保存在一个文件夹中。图像没用,因为我对它们一无所知。 PDF包含章节标题,后跟1-3张图片。反正有没有改变程序,以便告诉我他们来自哪个部分?
以下是代码:
public static void main(String[] args) throws IOException {
PDDocument document = null;
try {
document = PDDocument.load("C:\\Users\\564864\\Downloads\\wsh2012.pdf");
} catch (IOException ex) {
System.out.println("" + ex);
}
List pages = document.getDocumentCatalog().getAllPages();
Iterator iter = pages.iterator();
int i =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\\564864\\Desktop\\Java\\helloworld\\images\\" + i+"");
i ++;
}
}
}
}
答案 0 :(得分:1)
除非PDF包含其他元数据,否则PDF中没有任何部分。我在http://www.jpedal.org/PDFblog/2012/06/extracting-structured-text-from-pdf-files/
写了一篇关于结构化文本(同样适用于图像)的文章