java实现pdf文件截图的方法【附PDFRenderer.jar下载】
程序员文章站
2023-12-14 12:54:04
本文实例讲述了java实现pdf文件截图的方法。分享给大家供大家参考,具体如下:
最近做的一个网站中,有个需求是上传pdf文件,显示pdf的封页,点击封页之后进行在线阅读...
本文实例讲述了java实现pdf文件截图的方法。分享给大家供大家参考,具体如下:
最近做的一个网站中,有个需求是上传pdf文件,显示pdf的封页,点击封页之后进行在线阅读,这里使用的是pdfrender对pdf进行截图。
public static boolean createscreenshoot(string source, string target) { file file = new file(source); if (!file.exists()) { system.err.println("路径[" + source + "]对应的pdf文件不存在!"); return false; } try{ randomaccessfile raf = new randomaccessfile(file, "r"); filechannel channel = raf.getchannel(); bytebuffer buf = channel.map(filechannel.mapmode.read_only, 0, channel.size()); pdffile pdffile = new pdffile(buf); int num = pdffile.getnumpages(); for(int i = 1; i < num; i++){ pdfpage page = pdffile.getpage(1); // get the width and height for the doc at the default zoom rectangle rect = new rectangle(0, 0, (int) page.getbbox() .getwidth(), (int) page.getbbox().getheight()); // generate the image image img = page.getimage(rect.width, rect.height, // width & rect, // clip rect null, // null for the imageobserver true, // fill background with white true // block until drawing is done ); bufferedimage tag = new bufferedimage(rect.width, rect.height, bufferedimage.type_int_rgb); tag.getgraphics().drawimage(img, 0, 0, rect.width, rect.height,null); fileoutputstream out = new fileoutputstream(target+i+"jpg"); jpegimageencoder encoder = jpegcodec.createjpegencoder(out); encoder.encode(tag); // jpeg编码 out.close(); } return true; }catch(exception e){ e.printstacktrace(); return true; }
另外如果需要在线显示pdf的话,需要设置响应头
response.setcontenttype("application/pdf");
附:pdfrender.jar点击此处本站下载。
更多java相关内容感兴趣的读者可查看本站专题:《java图片操作技巧汇总》、《java日期与时间操作技巧汇总》、《java操作dom节点技巧总结》、《java文件与目录操作技巧汇总》及《java数据结构与算法教程》。
希望本文所述对大家java程序设计有所帮助。
推荐阅读
-
java实现pdf文件截图的方法【附PDFRenderer.jar下载】
-
java实现切割wav音频文件的方法详解【附外部jar包下载】
-
C#实现导出List数据到xml文件的方法【附demo源码下载】
-
php使用pclzip类实现文件压缩的方法(附pclzip类下载地址),_PHP教程
-
php使用pclzip类实现文件压缩的方法(附pclzip类下载地址)_PHP
-
php使用pclzip类实现文件压缩的方法(附pclzip类下载地址)_PHP
-
原生PHP实现导出csv格式Excel文件的方法示例【附源码下载】
-
php使用pclzip类实现文件压缩的方法附pclzip类下载地址
-
php使用pclzip类实现文件压缩的方法附pclzip类下载地址
-
Java实现ftp上传下载、删除文件及在ftp服务器上传文件夹的方法