[java] Apache PDFBox를 이용한 공백 제거
Java로 PDF 작업을 수행하는 경우, Apache PDFBox 라이브러리는 자주 사용됩니다. 이 라이브러리를 활용하여 PDF 파일 내의 공백을 제거하는 방법에 대해 알아보겠습니다.
Apache PDFBox 라이브러리 추가
먼저, Maven을 사용 중이라면 pom.xml
파일에 다음 의존성을 추가합니다.
<dependency>
<groupId>org.apache.pdfbox</groupId>
<artifactId>pdfbox</artifactId>
<version>2.0.24</version> <!-- 최신 버전으로 대체해도 무방 -->
</dependency>
Gradle을 사용 중이라면 build.gradle
파일에 다음 의존성을 추가합니다.
implementation group: 'org.apache.pdfbox', name: 'pdfbox', version: '2.0.24' // 최신 버전으로 대체해도 무방
라이브러리 추가 후 프로젝트를 업데이트 하거나 빌드합니다.
PDF 파일 내 공백 제거
다음은 Apache PDFBox를 사용하여 PDF 파일 내의 공백을 제거하는 간단한 예제입니다.
import org.apache.pdfbox.pdmodel.PDDocument;
import org.apache.pdfbox.pdmodel.PDPage;
import org.apache.pdfbox.text.PDFTextStripper;
import java.io.File;
import java.io.IOException;
public class PDFWhitespaceRemover {
public static void main(String[] args) throws IOException {
PDDocument document = PDDocument.load(new File("input.pdf"));
for (PDPage page : document.getPages()) {
PDFTextStripper stripper = new PDFTextStripper();
String content = stripper.getText(document, page);
// 공백 제거
content = content.replaceAll("\\s+", "");
// 결과 출력 (선택 사항)
System.out.println(content);
}
// 수정된 내용을 파일에 저장
document.save("output.pdf");
document.close();
}
}
위의 예제는 PDFWhitespaceRemover
클래스를 통해 PDF 파일을 로드하고 각 페이지의 텍스트 내의 공백을 제거한 후 수정된 내용을 다시 저장합니다.
이제 Apache PDFBox를 사용하여 PDF 파일 내의 공백을 제거하는 방법에 대해 알게 되었습니다.
위의 예제 코드를 참고하여 자신의 프로젝트에 적합하게 수정하여 사용할 수 있습니다.