2013-10-30 202 views
2

將所有PDF頁面轉換爲java中的單個圖像
我有一個700KB的pdf文件,我想將它轉換爲縮小大小的單個圖像。我使用PDFBox的將所有PDF頁面轉換爲java中的單個圖像

PDDocument document = PDDocument.loadNonSeq(file,null); 

List<PDPage> pages = document.getDocumentCatalog().getAllPages(); 
int i =0; 
for (PDPage page : pages)  { 
     BufferedImage image = page.convertToImage(); 
     BufferedImage imageBW = new BufferedImage(image.getWidth(),          
image.getHeight(), BufferedImage.TYPE_3BYTE_BGR); 
     Graphics g = imageBW.getGraphics(); 
     g.drawImage(image, 0, 0, null); 
     g.dispose(); 
     java.io.File file1 = new  
java.io.File(("D:\\FTPUploads\\GuestSupply_"+i+".jpg")); 

     ImageIO.write(imageBW, "jpg", file1); 
     i++; 
    } 

But there difference found is only 10 KB and here it created into 2 images (pdf having 2 pages) i need it in single image. Could you please help me out on this. 
+0

能否請您給我提供了一些解決方案 –

回答

2

ImageMagick是一個軟件套件來創建,編輯,撰寫,或轉換位圖images.It必須參加的ImageMagick的.The功能,通常使用的圖像選項試過下面way.I'm從命令行或​​3210是ImageMagick命令行的純java接口。它是在Apache 2.0許可下分發的。

因此,首先使用PDFBox將每個PDF頁面轉換爲單獨圖像,然後使用ImageMagick合併所有圖像。

參考: http://www.imagemagick.org/Usage/layers/