<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    溫馨提示:您的每一次轉載,體現了我寫此文的意義!!!煩請您在轉載時注明出處http://www.tkk7.com/sxyx2008/謝謝合作!!!

    雪山飛鵠

    溫馨提示:您的每一次轉載,體現了我寫此文的意義!!!煩請您在轉載時注明出處http://www.tkk7.com/sxyx2008/謝謝合作!!!

    BlogJava 首頁 新隨筆 聯系 聚合 管理
      215 Posts :: 1 Stories :: 674 Comments :: 0 Trackbacks
            近期在項目中使用到了大量的報表開發,需要將html頁面中的表格內容導出到pdf word excel和圖片,前三者都比較好實現。唯獨后者生成圖片使用ImageIo操作時生成的圖片有點慘不忍睹。經過大量google后發現,pdfbox這個組件不錯,可以將pdf文件輕松生成圖片。這不問題解決了,但在使用過程中不然,受到了很多致命性的打擊。pdfbox在處理中文pdf的時候就會表現的比較脆弱點。但對英文版的pdf導出圖片,那是杠杠的。盡管這樣,還是記錄一下,畢竟這方面的資料很少。我幾乎搜遍了整個google,baidu才搜集到那么一點點資料。這里跟大家分享下。
            所依賴的JAR:
            commons-logging-1.1.1.jar
            fontbox-1.2.1.jar
            pdfbox-1.2.1.jar
            示例代碼:
    /*
     * Licensed to the Apache Software Foundation (ASF) under one or more
     * contributor license agreements.  See the NOTICE file distributed with
     * this work for additional information regarding copyright ownership.
     * The ASF licenses this file to You under the Apache License, Version 2.0
     * (the "License"); you may not use this file except in compliance with
     * the License.  You may obtain a copy of the License at
     *
     *      
    http://www.apache.org/licenses/LICENSE-2.0
     *
     * Unless required by applicable law or agreed to in writing, software
     * distributed under the License is distributed on an "AS IS" BASIS,
     * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
     * See the License for the specific language governing permissions and
     * limitations under the License.
     
    */

    package com.future.pdfbox.image;

    import java.awt.image.BufferedImage;
    import java.io.File;
    import java.io.FileOutputStream;
    import java.io.IOException;
    import java.util.Iterator;
    import java.util.List;

    import javax.imageio.IIOImage;
    import javax.imageio.ImageIO;
    import javax.imageio.ImageWriter;
    import javax.imageio.stream.ImageOutputStream;

    import org.apache.pdfbox.pdmodel.PDDocument;
    import org.apache.pdfbox.pdmodel.PDPage;

    public class ExtractImages 
    {
        
    public static void main(String[] args) throws IOException 
            PDDocument doc 
    = PDDocument.load("F:\\1.pdf");
            
    int pageCount = doc.getPageCount(); 
            System.out.println(pageCount); 
            List pages 
    = doc.getDocumentCatalog().getAllPages(); 
            
    for(int i=0;i<pages.size();i++){
                PDPage page 
    = (PDPage)pages.get(i); 
                BufferedImage image 
    = page.convertToImage(); 
                Iterator iter 
    = ImageIO.getImageWritersBySuffix("jpg"); 
                ImageWriter writer 
    = (ImageWriter)iter.next(); 
                File outFile 
    = new File("C:/"+i+".jpg"); 
                FileOutputStream out 
    = new FileOutputStream(outFile); 
                ImageOutputStream outImage 
    = ImageIO.createImageOutputStream(out); 
                writer.setOutput(outImage); 
                writer.write(
    new IIOImage(image,null,null)); 
            }

            doc.close(); 
            System.out.println(
    "over"); 
        }


    }


            
    posted on 2010-07-23 08:46 雪山飛鵠 閱讀(11369) 評論(7)  編輯  收藏 所屬分類: javase

    Feedback

    # re: 輕松使用apache pdfbox將pdf文件生成圖片 2010-07-23 09:25 fengzl
    html轉pdf word excel和圖片不是那么容易的吧  回復  更多評論
      

    # re: 輕松使用apache pdfbox將pdf文件生成圖片 2010-07-23 13:19 cxh8318
    對于中文的pdf支持是脆弱點嗎?我看壓根就不支持嘛  回復  更多評論
      

    # re: 輕松使用apache pdfbox將pdf文件生成圖片 2010-07-23 13:31 雪山飛鵠
    @cxh8318
    我說過了,對于中文pdf目前那是相當的脆弱,網上搜了,說是這是源代碼的bug,期待下一個版本能夠改進過來,但對英文版的pdf支持絕對完美,我在測試的時候將英文版的spring參考手冊全部順利生成了jpg圖片,雖然控制臺有警告但不礙事的。比一般的工具軟件強悍多了。  回復  更多評論
      

    # re: 輕松使用apache pdfbox將pdf文件生成圖片 2010-07-23 20:19 cxh8318
    恩,對英文pdf轉換確實很強  回復  更多評論
      

    # re: 輕松使用apache pdfbox將pdf文件生成圖片[未登錄] 2010-07-26 09:21 conjs
    我可以轉,HTML DOC,XLS,PPT,PDF,JPG 都可以轉  回復  更多評論
      

    # re: 輕松使用apache pdfbox將pdf文件生成圖片 2013-05-27 18:28 acmersch
    內存溢出是什么問題  回復  更多評論
      

    # re: 輕松使用apache pdfbox將pdf文件生成圖片[未登錄] 2014-07-24 17:21 h
    姓名,,轉出來變成 姓姓,其他也是這樣。。重復第一個字  回復  更多評論
      

    主站蜘蛛池模板: 亚洲一级在线观看| WWW免费视频在线观看播放| 日韩精品在线免费观看| 日韩一级免费视频| 亚洲精品高清国产麻豆专区| 一级午夜免费视频| 天天操夜夜操免费视频| 亚洲综合精品香蕉久久网97| 四虎国产精品成人免费久久| 最近2019中文字幕免费看最新| 久久亚洲国产精品一区二区| 爱情岛论坛免费视频| www.免费在线观看| 亚洲日韩精品无码专区网址| 婷婷亚洲综合五月天小说在线| 最近中文字幕免费完整| 亚洲色自偷自拍另类小说| 国产成人亚洲精品电影| 成在人线AV无码免费| 亚洲精品视频专区| 永久免费AV无码网站国产| 亚洲欧洲精品成人久久曰影片| 亚洲av永久无码精品秋霞电影秋 | 久久精品网站免费观看| 亚洲AV无码久久精品狠狠爱浪潮| 免费精品国自产拍在线播放| 最近中文字幕mv免费高清电影| 亚洲国产精品人久久电影| 可以免费观看的国产视频| 青青草原亚洲视频| 全黄A免费一级毛片| 国产麻豆免费观看91| 国产精品亚洲一区二区麻豆| 国产乱子精品免费视观看片| 亚洲国产女人aaa毛片在线| 久久99精品免费一区二区| 亚洲一区二区三区免费| 成人嫩草影院免费观看| 免费人妻无码不卡中文字幕18禁| 亚洲欧美国产精品专区久久| A级毛片内射免费视频|