2016-11-10 6 views
0

良い一日の仲間のプログラマー。私はJavaの初心者です.PDFの特定の部分からImageを作成する必要があります。Javaを使用して画像にPDFを

現在、私はpdfboxを使用しています。ここで

は、PDFから画像を作成するための私のコードである(それが働いているが、それは全体のPDFページの画像を作成します):

PDDocument document = PDDocument.load(new File(PDFFILE)); 

      PDFRenderer pdfRenderer = new PDFRenderer(document); 
      for (int page = 0; page < document.getNumberOfPages(); ++page) 
      { 

       BufferedImage bim = pdfRenderer.renderImageWithDPI(page, 300, ImageType.RGB); 

       ImageIOUtil.writeImage(bim, path + "-" + (page+1) + ".png", 300); 
      } 
      document.close(); 

問題:私はベースのイメージを作成する必要があり

特定の位置(矩形のような)のpdf上で

これを行うには、pdfboxを使用する方法がありますか、これを行う別のライブラリがありますか?私は検索しようとしましたが、解決策を見つけることができません。
ありがとうございます。ここ

+1

のためにあなたは、結果として得られる画像を削減するか、またはあなたは、レンダリングの前に、PDFのページのクロップボックスおよび/またはメディアボックスを変更することができます。 – mkl

+0

@mkl私はpdfboxでそれをすることができますか?あなたはサンプルコードを持っていますか? –

+0

現在作業中です。 \ –

答えて

1

はソリューションです。おかげで、MKLアイデア

private void PdfToImage(String PDFFILE){ 
      try{ 

       PDDocument document = PDDocument.load(new File(PDFFILE)); 
       PDPage pd; 

       PDFRenderer pdfRenderer = new PDFRenderer(document); 
       for (int page = 0; page < document.getNumberOfPages(); ++page) 
       { 


        pd = document.getPage(page); 
        pd.setCropBox(new PDRectangle(100, 100,100,100)); 
        BufferedImage bim = pdfRenderer.renderImageWithDPI(page, 300, ImageType.RGB); 
        ImageIOUtil.writeImage(bim, outputpath + (page+1) + ".png", 300); 

       } 
       document.close(); 
      }catch (Exception ex){ 
       JOptionPane.showMessageDialog(null, ex.getStackTrace()); 
      } 
     } 
関連する問題