달력

9

« 2019/9 »

  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27
  • 28
  • 29
  • 30
  •  
  •  
  •  
  •  
  •  


import java.awt.image.BufferedImage;

import java.io.IOException;

import org.apache.pdfbox.pdmodel.PDDocument;

import org.apache.pdfbox.util.PDFImageWriter;

public class Pdftoimg {

public static void main(String[] args) {

extractPagesAsImage("redpdf.pdf", 300, "");

}


/**

* PDF파일 이미지 출력

* @param sourceFile 대상 PDF파일 경로 및 파일

* @param resolution 출력 해상도

* @param password 문서 비밀번호

* @return

*/

public static boolean extractPagesAsImage(String sourceFile, int resolution, String password) {

boolean result = false;

//출력이미지 확장자

String imageFormat = "gif";

int pdfPageCn = 0;

PDDocument pdfDoc = null;

try {

//PDF파일 정보 취득

pdfDoc = PDDocument.load(sourceFile);

//PDF파일 총페이지 수 취득

pdfPageCn = pdfDoc.getNumberOfPages();

System.out.println("PDF파일 총페이지 수 : " + pdfPageCn);

} catch (IOException ioe) {

System.out.println("PDF 정보취득 실패 : " + ioe.getMessage());

}

PDFImageWriter imageWriter = new PDFImageWriter();

try {

result = imageWriter.writeImage(pdfDoc, 

imageFormat, 

password,

1, //이미지 출력 시작페이지

5, //이미지 출력 종료페이지

//저장파일위치 및 파일명 지정 TEST+페이지 "TEST1.gif" 파일저장

"TEST"

 BufferedImage.TYPE_INT_RGB,

resolution //이미지 품질  300 추천

);

} catch (IOException ioe) {

System.out.println("PDF 이미지저장 실패 : " + ioe.getMessage());

}

return result;

}

}


 & 실행화면


Posted by 레이칸트