將pdf文檔轉換成高清圖片

將pdf文檔轉換成高清圖片


關於pdf轉換成高清圖片,網上有不少資料,但測試過後發現多數不可用,甚至出現pdf圖片格式錯亂等問題。
以下pdf轉高清圖片核心代碼是經過本人驗證並應用與實踐項目的。請惠存!

  File file = new File(pdfPath);
        PDDocument pdDocument;
        try {
            pdDocument = PDDocument.load(file);
            List<PDPage> pdPages = pdDocument.getDocumentCatalog().getAllPages();
            /* dpi越大轉換後越清晰,相對轉換速度越慢 */
            List<File> files = new ArrayList<>();
            for (int i = 0; i < pdDocument.getNumberOfPages(); i++) {
                PDPage page = pdPages.get(i);
                String imagePath = pdfPath.replace(".pdf", "") + "_" + i + ".png";
                File dstFile = new File(imagePath);
                //300 是縮放比例,可調整,數值越高轉換越慢
                BufferedImage image = page.convertToImage(BufferedImage.TYPE_INT_RGB, 300);
                ImageIO.write(image, "png", dstFile);
                files.add(dstFile);
            }

            //TODO 	到此我們已經將pdf文檔按頁拆分成高清的pdf文件,如果業務有需要可以將所有的圖片整合成一張圖片
            System.out.println("PDF文檔轉PNG圖片成功!");
        } catch (IOException e) {
            e.printStackTrace();
        }
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章