日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

java获取pdf的页数、内容和缩略图

發布時間:2025/3/20 编程问答 18 豆豆
生活随笔 收集整理的這篇文章主要介紹了 java获取pdf的页数、内容和缩略图 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

1.導入maven依賴

? ? ? ?<dependency><groupId>org.apache.pdfbox</groupId><artifactId>pdfbox</artifactId><version>2.0.8</version></dependency><dependency><groupId>com.github.jai-imageio</groupId><artifactId>jai-imageio-jpeg2000</artifactId><version>1.3.0</version></dependency>

2.工具類

public class PdfUtil {private static Logger logger = LoggerFactory.getLogger(PdfUtil.class); ?/*** 通過PDFbox獲取文章總頁數** @param filePath:文件路徑* @return* @throws IOException*/public static int getNumberOfPages(String filePath) throws IOException {PDDocument pdDocument = PDDocument.load(new File(filePath));int pages = pdDocument.getNumberOfPages();pdDocument.close();return pages;} ? ?/*** 通過PDFbox獲取文章內容** @param filePath* @return*/public static String getContent(String filePath) throws IOException {PDFParser pdfParser = new PDFParser(new org.apache.pdfbox.io.RandomAccessFile(new File(filePath), "rw"));pdfParser.parse();PDDocument pdDocument = pdfParser.getPDDocument();String text = new PDFTextStripper().getText(pdDocument);pdDocument.close(); ?return text;} ?/*** 通過PDFbox生成文件的縮略圖** @param filePath:文件路徑* @param outPath:輸出圖片路徑* @throws IOException*/public static void getThumbnails(String filePath, String outPath) throws IOException {// 利用PdfBox生成圖像PDDocument pdDocument = PDDocument.load(new File(filePath));PDFRenderer renderer = new PDFRenderer(pdDocument); ?// 構造圖片BufferedImage imgTemp = renderer.renderImageWithDPI(0, 30, ImageType.RGB);// 設置圖片格式Iterator<ImageWriter> it = ImageIO.getImageWritersBySuffix("png");// 將文件寫出ImageWriter writer = it.next();ImageOutputStream imageout = ImageIO.createImageOutputStream(new FileOutputStream(outPath));writer.setOutput(imageout);writer.write(new IIOImage(imgTemp, null, null));imgTemp.flush();imageout.flush();imageout.close();pdDocument.close();} ?/*** PDF轉圖片 根據頁碼一頁一頁轉** @throws IOException imgType:轉換后的圖片類型 jpg,png*/public static void PDFToImg(OutputStream sos, String fileUrl, int page, String imgType) throws IOException {PDDocument pdDocument = null;/* dpi越大轉換后越清晰,相對轉換速度越慢 */int dpi = 100;try {pdDocument = getPDDocument(fileUrl);PDFRenderer renderer = new PDFRenderer(pdDocument);int pages = pdDocument.getNumberOfPages();if (page <= pages && page >= 0) {BufferedImage image = renderer.renderImageWithDPI(page, dpi);ImageIO.write(image, imgType, sos);}} catch (Exception e) {logger.error(e.getMessage());} finally {if (pdDocument != null) {pdDocument.close();}}} ?private static PDDocument getPDDocument(String fileUrl) throws IOException {File file = new File(fileUrl);FileInputStream inputStream = new FileInputStream(file);return PDDocument.load(inputStream);} }

3.測試

? ?@Testpublic void testPdf() throws IOException{String filePath = "/Users/apple/Desktop/學習書籍/Docker從入門到實踐.pdf";int numberOfPages = PdfUtil.getNumberOfPages(filePath);System.out.println("該pdf總頁數為:" + numberOfPages);//獲取pdf的前三頁圖片(若不足三頁,有幾頁獲取幾頁)for (int i = 0; i < 3 && i < numberOfPages ; i++) {PdfUtil.PDFToImg(new FileOutputStream(new File("/Users/apple/Desktop/學習書籍/Docker從入門到實踐" + i + ".png")), filePath, i, "PNG");}}

控制臺打印:

該pdf總頁數為:370

對應的文件夾下生成以下圖片:

?

總結

以上是生活随笔為你收集整理的java获取pdf的页数、内容和缩略图的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。

主站蜘蛛池模板: 欧美色图在线观看 | 91成人免费看片 | 第一区免费在线观看 | 亚洲天堂免费在线 | 中文字幕在线观看91 | 男女操网站 | 成人国产欧美 | 二区视频在线观看 | 精品在线视频一区二区三区 | 国产精品99久久久久久动医院 | 毛片毛片毛片毛片毛片 | av福利影院 | 国产极品视频在线观看 | 成年人视频免费在线观看 | 天堂va蜜桃一区二区三区漫画版 | 国产精品九九九九 | 国产三区在线观看 | 草色网| 国产精品99久久久久 | 亚洲婷婷在线 | 亚洲一久久 | 一起操在线观看 | 日韩欧美在线观看 | 免费在线视频一区二区 | 午夜激情成人 | 免费观看一区二区三区视频 | 国产www在线观看 | 成人伊人| 天天噜日日噜 | 日韩精品人妻无码一本 | 少妇献身老头系列 | 日本japanese乳偷乱熟 | 重囗味sm一区二区三区 | 久久久免费毛片 | h片在线 | 亚洲av无码久久精品狠狠爱浪潮 | 欧美嫩草 | 女人18毛片毛片毛片毛片区二 | 激情爱爱网站 | 韩国三级视频在线 | 久久久成人精品 | 色www国产亚洲阿娇 自拍一区在线 | 99在线视频播放 | 成人国产欧美 | 日韩中文字幕一区 | 那个网站可以看毛片 | 午夜不卡福利 | 亚洲爱 | 青青草华人在线视频 | 中文字幕免费在线看线人动作大片 | 一区二区三区美女视频 | 亚洲精品日产精品乱码不卡 | 久久亚洲美女 | 一区二区三区久久久久 | 疯狂揉花蒂控制高潮h | 日本爱爱网址 | 内射一区二区三区 | 久久久精彩视频 | 国产精品久久久久久久久久久久久 | 国产亚洲第一页 | 丰满少妇熟乱xxxxx视频 | 91av官网| 亚洲人成无码www久久久 | 日韩中文欧美 | 久久久久久久久久一区二区 | 国产成人免费在线观看 | 国产一区二区三区视频 | 91视频专区| 教练含着她的乳奶揉搓揉捏动态图 | 国产成人精品一区二区在线小狼 | 日韩在线播放一区 | √8天堂资源地址中文在线 欧美精品在线一区二区 | 日本高潮视频 | 操操插插 | 久久e热 | 爱爱免费视频网站 | 国产一区二区三区在线免费观看 | 大牛影视剧免费播放在线 | 综合亚洲色图 | 一本色道久久88亚洲精品综合 | 人妻夜夜爽天天爽三区麻豆av网站 | 欧美黑人粗大 | 特级西西人体444www高清大胆 | 日韩久久久 | 亚洲乱轮视频 | 黄色性视频 | 国产片91| 欧美成人h版在线观看 | 制服丝袜av一区二区三区下载 | 污片网站在线观看 | 亚洲国产av一区二区 | www.国产成人 | 欧美黑丝少妇 | 性无码专区无码 | 18禁免费无码无遮挡不卡网站 | 铠甲勇士猎铠 | 黄色国产视频网站 | 三级av在线播放 | 欧日韩视频 |