[java] Apache PDFBox로 이미지에서 텍스트 추출하기

PDF 파일에서 텍스트를 추출하는 것은 일반적으로 간단하지만, 이미지 형식으로 저장된 텍스트를 추출하는 것은 조금 더 복잡할 수 있습니다. Apache PDFBox는 Java 프레임워크로서 문자 인식 기능을 제공하여 이미지에서 텍스트를 추출하는 과정을 간단하게 도와줍니다.

Apache PDFBox 라이브러리 추가하기

먼저, Apache PDFBox 라이브러리를 프로젝트에 추가해야 합니다. Gradle 또는 Maven과 같은 의존성 관리 도구를 사용하는 경우, build 파일에 다음 의존성을 추가하세요.

// Gradle
implementation 'org.apache.pdfbox:pdfbox:2.0.24'

// Maven
<dependency>
    <groupId>org.apache.pdfbox</groupId>
    <artifactId>pdfbox</artifactId>
    <version>2.0.24</version>
</dependency>

직접 JAR 파일을 다운로드하여 사용하는 경우, Apache PDFBox 공식 웹사이트에서 최신 버전을 다운로드하세요.

이미지에서 텍스트 추출하기

이제 Apache PDFBox를 사용하여 이미지에서 텍스트를 추출하는 코드를 작성해 보겠습니다. 다음은 간단한 예제입니다.

import org.apache.pdfbox.pdmodel.PDDocument;
import org.apache.pdfbox.text.PDFTextStripper;

import java.io.File;
import java.io.IOException;

public class ImageTextExtractor {
    public static void main(String[] args) {
        try {
            File file = new File("path/to/pdf/file.pdf");
            PDDocument document = PDDocument.load(file);

            PDFTextStripper textStripper = new PDFTextStripper();
            String text = textStripper.getText(document);

            System.out.println("Extracted Text:\n" + text);

            document.close();
        } catch (IOException e) {
            e.printStackTrace();
        }
    }
}

이 코드에서는 PDDocument 클래스를 사용하여 PDF 파일을 로드하고, PDFTextStripper 클래스를 사용하여 이미지에서 텍스트를 추출합니다. 추출된 텍스트는 getText() 메서드를 통해 문자열 형태로 얻을 수 있습니다.

예를 들어, “path/to/pdf/file.pdf”에 이미지로 저장된 텍스트를 가진 PDF 파일이 있는 경우, 위의 코드를 실행하면 텍스트가 콘솔에 출력됩니다.

추가 정보

위에서 제공한 예제 코드는 Apache PDFBox를 사용하여 이미지에서 텍스트를 추출하는 데 도움이 되었을 것입니다. 자세한 내용은 공식 문서와 예제 코드를 참조하시기 바랍니다.