Programming/JAVA

[pdfbox] PDF 파일을 Image파일로 변환하는 방법

빈쿵바라기 2023. 5. 10. 17:27

1. Dependency 추가

<!-- https://mvnrepository.com/artifact/org.apache.pdfbox/pdfbox -->
<dependency>
    <groupId>org.apache.pdfbox</groupId>
    <artifactId>pdfbox</artifactId>
    <version>2.0.28</version>
</dependency>

 

2. Sample Code

import java.awt.image.BufferedImage;
import java.io.File;
import java.io.IOException;
import javax.imageio.ImageIO;
import org.apache.pdfbox.pdmodel.PDDocument;
import org.apache.pdfbox.rendering.ImageType;
import org.apache.pdfbox.rendering.PDFRenderer;

public class PdfToImage {
	
	public static void main(String[] args) {
		
		// PDF 문서 객체(PDDocument) 준비
		File file = new File("PDF 파일 경로");
		PDDocument document = PDDocument.load(file);
		
		// PDF 파일의 페이지 수 가져오기
		int pageCount = document.getNumberOfPages();
		
		// 페이지별로 이미지 변환
		PDFRenderer pdfRenderer = new PDFRenderer(document);
		
		for(int i = 0; i < pageCount; i++) {
			BufferedImage imageObj = pdfRenderer.renderImageWithDPI(i, 100, ImageType.RGB);
			File outputfile = new File("저장 폴더 경로" + i + ".jpg");
			ImageIO.write(imageObj, "jpg", outputfile);
		}
		
	}

}