最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

java實現(xiàn)pdf文件截圖的方法【附PDFRenderer.jar下載】

 更新時間:2018年01月11日 14:43:34   作者:yangnianbing110  
這篇文章主要介紹了java實現(xiàn)pdf文件截圖的方法,結(jié)合實例形式分析了java基于PDFRenderer.jar進(jìn)行pdf文件截圖的相關(guān)操作技巧,并附帶PDFRenderer.jar文件供讀者下載使用,需要的朋友可以參考下

本文實例講述了java實現(xiàn)pdf文件截圖的方法。分享給大家供大家參考,具體如下:

最近做的一個網(wǎng)站中,有個需求是上傳pdf文件,顯示pdf的封頁,點擊封頁之后進(jìn)行在線閱讀,這里使用的是PDFRender對pdf進(jìn)行截圖。

public static boolean createScreenShoot(String source, String target) {
    File file = new File(source);
    if (!file.exists()) {
      System.err.println("路徑[" + source + "]對應(yīng)的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的話,需要設(shè)置響應(yīng)頭

response.setContentType("application/pdf");

附:pdfRender.jar點擊此處本站下載

更多java相關(guān)內(nèi)容感興趣的讀者可查看本站專題:《Java圖片操作技巧匯總》、《java日期與時間操作技巧匯總》、《Java操作DOM節(jié)點技巧總結(jié)》、《Java文件與目錄操作技巧匯總》及《Java數(shù)據(jù)結(jié)構(gòu)與算法教程》。

希望本文所述對大家java程序設(shè)計有所幫助。

相關(guān)文章

  • 解決feignClient調(diào)用時獲取返回對象類型匹配的問題

    解決feignClient調(diào)用時獲取返回對象類型匹配的問題

    這篇文章主要介紹了解決feignClient調(diào)用時獲取返回對象類型匹配的問題,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2021-06-06
  • java-流的使用完結(jié)與異常處理機制(詳解)

    java-流的使用完結(jié)與異常處理機制(詳解)

    下面小編就為大家?guī)硪黄猨ava-流的使用完結(jié)與異常處理機制(詳解)。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2017-09-09
  • Spring Data JPA踩坑記錄(@id @GeneratedValue)

    Spring Data JPA踩坑記錄(@id @GeneratedValue)

    這篇文章主要介紹了Spring Data JPA踩坑記錄(@id @GeneratedValue),具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2022-07-07
  • IDEA配置Maven教程的超詳細(xì)講解版

    IDEA配置Maven教程的超詳細(xì)講解版

    IntelliJ IDEA是當(dāng)前最流行的Java IDE(集成開發(fā)環(huán)境)之一,也是業(yè)界公認(rèn)最好用的Java開發(fā)工具之一,這篇文章主要給大家介紹了關(guān)于IDEA配置Maven教程的超詳細(xì)講解版,需要的朋友可以參考下
    2023-11-11
  • Java設(shè)計模式七大原則之依賴倒置原則詳解

    Java設(shè)計模式七大原則之依賴倒置原則詳解

    依賴倒轉(zhuǎn)原則,即:上層模塊不應(yīng)該依賴底層模塊,它們都應(yīng)該依賴于抽象,抽象不應(yīng)該依賴于細(xì)節(jié),細(xì)節(jié)應(yīng)該依賴于抽象。本文將詳細(xì)介紹Java設(shè)計模式七大原則之一的依賴倒置原則,需要的可以參考一下
    2022-02-02
  • SpringBoot調(diào)用service層的三種方法

    SpringBoot調(diào)用service層的三種方法

    在Spring?Boot中,我們可以通過注入Service層對象來調(diào)用Service層的方法,Service層是業(yè)務(wù)邏輯的處理層,它通常包含了對數(shù)據(jù)的增刪改查操作,本文給大家介紹了SpringBoot調(diào)用service層的三種方法,需要的朋友可以參考下
    2024-05-05
  • spring boot整合quartz實現(xiàn)多個定時任務(wù)的方法

    spring boot整合quartz實現(xiàn)多個定時任務(wù)的方法

    這篇文章主要介紹了spring boot整合quartz實現(xiàn)多個定時任務(wù)的方法,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2018-01-01
  • Spring Boot快速搭建Spring框架教程

    Spring Boot快速搭建Spring框架教程

    這篇文章主要為大家詳細(xì)介紹了Spring Boot快速搭建Spring框架教程,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2017-10-10
  • 解決CentOS7中運行jar包報錯:xxx(Permission?denied)

    解決CentOS7中運行jar包報錯:xxx(Permission?denied)

    在實際工作我們經(jīng)常會在linux上運行Spring boot編寫的微服務(wù)程序,下面這篇文章主要給大家介紹了關(guān)于如何解決CentOS7中運行jar包報錯:xxx(Permission?denied)的相關(guān)資料,需要的朋友可以參考下
    2024-02-02
  • 利用Java反射機制實現(xiàn)對象相同字段的復(fù)制操作

    利用Java反射機制實現(xiàn)對象相同字段的復(fù)制操作

    這篇文章主要介紹了利用Java反射機制實現(xiàn)對象相同字段的復(fù)制操作,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2020-08-08

最新評論

凤城市| 田阳县| 富蕴县| 鹿邑县| 云南省| 临洮县| 仁怀市| 沅陵县| 平远县| 商城县| 大悟县| 丰城市| 民县| 胶州市| 霍邱县| 穆棱市| 晋中市| 呼图壁县| 湟源县| 越西县| 曲靖市| 闽清县| 宽甸| 大港区| 砚山县| 即墨市| 南开区| 永川市| 闵行区| 灵石县| 建始县| 外汇| 肇庆市| 怀柔区| 鱼台县| 张家口市| 新疆| 九寨沟县| 章丘市| 施甸县| 阿克苏市|