亚洲激情专区-91九色丨porny丨老师-久久久久久久女国产乱让韩-国产精品午夜小视频观看

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

JAVA怎么將PDF轉為圖片

發布時間:2021-09-15 15:15:21 來源:億速云 閱讀:141 作者:chen 欄目:編程語言

本篇內容主要講解“JAVA怎么將PDF轉為圖片”,感興趣的朋友不妨來看看。本文介紹的方法操作簡單快捷,實用性強。下面就讓小編來帶大家學習“JAVA怎么將PDF轉為圖片”吧!

1.引用:fontbox-2.0.16.jar、pdfbox-app-2.0.16.jar 版本一定要正確,否則代碼會有問題。

main函數:

package kevin.cn;import java.awt.image.BufferedImage;import java.io.ByteArrayOutputStream;import java.io.File;import java.io.FileOutputStream;import java.io.IOException;import java.util.ArrayList;import java.util.List;import javax.imageio.ImageIO;import org.apache.pdfbox.pdmodel.PDDocument;import org.apache.pdfbox.pdmodel.PDPage;import org.apache.pdfbox.pdmodel.encryption.InvalidPasswordException;import org.apache.pdfbox.rendering.ImageType;import org.apache.pdfbox.rendering.PDFRenderer;import org.apache.pdfbox.tools.PDFBox;import kevin.cn.PdfUtil;@SuppressWarnings("unused")public class Test {  //經過測試,dpi為96,100,105,120,150,200中,105顯示效果較為清晰,體積穩定,dpi越高圖片體積越大,一般電腦顯示分辨率為96  public static final float DEFAULT_DPI = 105;  //默認轉換的圖片格式為jpg  public static final String DEFAULT_FORMAT = "jpg";  public static void main(String[] args) throws Exception {    pdfToImage("/media/kevin/FileData/JavaCode/pdfboxTest/企業信息化建設論文.pdf","/media/kevin/FileData/JavaCode/pdfboxTest/img/7.jpg",5);  }

  實現函數:

/**   * pdf轉圖片   *   * @param pdfPath PDF路徑    * @imgPath img路徑   * @page_end 要轉換的頁碼,也可以定義開始頁碼和結束頁碼,我這里只需要一頁,根據需求自行添加   */  public static void pdfToImage(String pdfPath, String imgPath,int page_end) {    try {      //圖像合并使用參數      // 總寬度      int width = 0;      // 保存一張圖片中的RGB數據      int[] singleImgRGB;      int shiftHeight = 0;      //保存每張圖片的像素值      BufferedImage imageResult = null;      //利用PdfBox生成圖像      PDDocument pdDocument = PDDocument.load(new File(pdfPath));      PDFRenderer renderer = new PDFRenderer(pdDocument);      //循環每個頁碼      for (int i = 0, len = pdDocument.getNumberOfPages(); i < len; i++) {        if (i==page_end) {          BufferedImage image = renderer.renderImageWithDPI(i, DEFAULT_DPI, ImageType.RGB);          int imageHeight = image.getHeight();          int imageWidth = image.getWidth();          //計算高度和偏移量          //使用第一張圖片寬度;          width = imageWidth;          //保存每頁圖片的像素值          imageResult = new BufferedImage(width, imageHeight, BufferedImage.TYPE_INT_RGB);          //這里有高度,可以將imageHeight*len,我這里值提取一頁所以不需要           singleImgRGB = image.getRGB(0, 0, width, imageHeight, null, 0, width);           // 寫入流中           imageResult.setRGB(0, shiftHeight, width, imageHeight, singleImgRGB, 0, width);        }else if(i>page_end) {          continue;        }      }      pdDocument.close();      // 寫圖片      ImageIO.write(imageResult, DEFAULT_FORMAT, new File(imgPath));    } catch (Exception e) {      e.printStackTrace();    }    //OVER  }

到此,相信大家對“JAVA怎么將PDF轉為圖片”有了更深的了解,不妨來實際操作一番吧!這里是億速云網站,更多相關內容可以進入相關頻道進行查詢,關注我們,繼續學習!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

稻城县| 高阳县| 漾濞| 枣庄市| 绥江县| 江孜县| 时尚| 宜川县| 萍乡市| 通化县| 佛坪县| 武夷山市| 湾仔区| 黎川县| 三原县| 桐柏县| 庆阳市| 哈尔滨市| 都匀市| 滦平县| 驻马店市| 祥云县| 开远市| 大竹县| 宁强县| 顺平县| 台南市| 嘉峪关市| 府谷县| 马龙县| 武山县| 旺苍县| 胶州市| 寿宁县| 读书| 忻州市| 安平县| 平陆县| 蓝田县| 蓬莱市| 甘泉县|