首页 > 代码库 > java代码获取pdf文件第一页作为封面缩略图
java代码获取pdf文件第一页作为封面缩略图
package gcjsxh.util; import java.awt.image.BufferedImage; import java.io.File; import java.io.FileOutputStream; import java.util.Iterator; import javax.imageio.IIOImage; import javax.imageio.ImageIO; import javax.imageio.ImageWriter; import javax.imageio.stream.ImageOutputStream; import org.icepdf.core.pobjects.Document; import org.icepdf.core.pobjects.Page; import org.icepdf.core.util.GraphicsRenderingHints; public class CapturePdfFirstPageUtil { /** * 生成一本书的缩略图 * @param inputFile 需要生成缩略图的书籍的完整路径 * @param outputFile 生成缩略图的放置路径 */ public static void generateBookIamge(String inputFile, String outputFile) { Document document = null; try { float rotation = 0f; //缩略图显示倍数,1表示不缩放,0.5表示缩小到50% float zoom = 0.8f; document = new Document(); document.setFile(inputFile); // maxPages = document.getPageTree().getNumberOfPages(); BufferedImage image = (BufferedImage)document.getPageImage(0, GraphicsRenderingHints.SCREEN, Page.BOUNDARY_CROPBOX, rotation, zoom); Iterator iter = ImageIO.getImageWritersBySuffix("jpg"); ImageWriter writer = (ImageWriter)iter.next(); FileOutputStream out = new FileOutputStream(new File(outputFile)); ImageOutputStream outImage = ImageIO.createImageOutputStream(out); writer.setOutput(outImage); writer.write(new IIOImage(image, null, null)); } catch(Exception e) { System.out.println( "to generate thumbnail of a book fail : " + inputFile ); System.out.println( e ); } } public static void main(String[]args){ CapturePdfFirstPageUtil.generateBookIamge("C:\\Users\\work\\Desktop\\spring2.pdf","C:\\Users\\work\\Desktop\\captureImage.jpg") ; } }
icepdf jar包地址:http://down.51cto.com/data/2302789
注意上面引入jar包时不要引错了哦
本文出自 “linux菜鸟” 博客,请务必保留此出处http://asura1992.blog.51cto.com/8159058/1919275
java代码获取pdf文件第一页作为封面缩略图
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。