在先文档浏览器,像豆丁那样的,每篇文章都会有个缩略图,我就很好奇它那个缩略图是怎么弄出来的,难道是人工直接剪切出来(这肯定是荒谬的)。所以就借助百度和谷歌。搜索到了截取图片的插件,就是PDFBOX,目前版本是1.6
下面是实现代码:
1 try { 2 PDDocument doc = PDDocument.load("D:\\1.pdf");// 待获取图片的pdf文件 3 int pageCount = doc.getNumberOfPages(); 4 System.out.println(pageCount); 5 6 System.out.println("开始获取图片。。。。"); 7 List<PDPage> pages = doc.getDocumentCatalog().getAllPages(); 8 for (int i = 0; i < pages.size(); i++) { 9 PDPage page = pages.get(i); 10 BufferedImage image = page.convertToImage(); 11 Iterator<ImageWriter> iter = ImageIO.getImageWritersBySuffix("JPG"); 12 ImageWriter writer = iter.next(); 13 File outFile = new File("D:\\pdfImage\\" + i + ".jpg");// 保存图片的路径 14 FileOutputStream out = new FileOutputStream(outFile); 15 ImageOutputStream outImage = ImageIO.createImageOutputStream(out); 16 writer.setOutput(outImage); 17 writer.write(new IIOImage(image, null, null)); 18 } 19 doc.close(); 20 System.out.println("获取图片结束!"); 21 } catch (IOException e) { 22 e.printStackTrace(); 23 }