2014-03-25 204 views
0

我已經創建了一個Web服務,它有一個方法,它接受DataHandler的參數。此方法的目的是讀取通過DataHandler發送的內容並將其寫入文件(.tiff)。當我傳入一個.tiff文件時,我可以很容易地進行轉換,但我應該如何使用Java將PDF文件轉換爲.tiff文件。pdf到.tiff轉換使用java

因此,如果用戶通過使用DataHandler的PDF文件,我該如何將其轉換爲.tiff文件?

回答

0
PDDocument doc = PDDocument.loadNonSeq(new File(filename), null); 
    boolean b; 
    List<PDPage> pages = doc.getDocumentCatalog().getAllPages(); 
    for (int p = 0; p < pages.size(); ++p) 
    { 
     // RGB image with 300 dpi 
     BufferedImage bim = pages.get(p).convertToImage(BufferedImage.TYPE_INT_RGB, 300); 

     // alternatively: B/W image with 300 dpi 
     bim = pages.get(p).convertToImage(BufferedImage.TYPE_BYTE_BINARY, 300); 

     // save as TIF with dpi in the metadata 
     // PDFBox will choose the best compression for you 
     // you need to add jai_imageio to your classpath for this to work 
     b = ImageIOUtil.writeImage(bim, "page-" + (p+1) + ".tif", 300); 
     if (!b) 
     { 
      // error handling 
     } 
    } 

如果你的問題是關於轉換爲多頁TIFF,請告訴我,我有一個解決方案了。