[java] Apache POI를 이용한 Word 문서 포맷 설정

Apache POI는 Java에서 Microsoft Office 파일 형식을 다룰 수 있는 라이브러리입니다. 이를 사용하여 Word 문서의 포맷을 설정하는 방법에 대해 알아보겠습니다.

1. Apache POI 라이브러리 추가하기

먼저, 프로젝트에 Apache POI 라이브러리를 추가해야 합니다. Maven을 사용한다면 pom.xml 파일에 다음 의존성을 추가합니다.

<dependency>
  <groupId>org.apache.poi</groupId>
  <artifactId>poi</artifactId>
  <version>5.0.0</version>
</dependency>

Gradle을 사용한다면 build.gradle 파일에 다음 의존성을 추가합니다.

implementation 'org.apache.poi:poi:5.0.0'

2. Word 문서 생성 및 포맷 설정하기

import org.apache.poi.xwpf.usermodel.*;
import java.io.FileOutputStream;

public class FormatWordDocument {
    public static void main(String[] args) {
        // 빈 Word 문서 생성
        XWPFDocument document = new XWPFDocument();
        
        // 문단 생성
        XWPFParagraph paragraph = document.createParagraph();
        
        // 문단에 텍스트 추가
        XWPFRun run = paragraph.createRun();
        run.setText("Hello, Apache POI!");
        
        // 글꼴 설정
        run.setFontFamily("Arial");
        run.setFontSize(12);
        run.setBold(true);
        run.setItalic(true);
        run.setUnderline(UnderlinePatterns.DOT_DOT_DASH);
        
        // 파일로 저장
        try {
            FileOutputStream out = new FileOutputStream("example.docx");
            document.write(out);
            out.close();
            System.out.println("Word 문서가 생성되었습니다.");
        } catch (Exception e) {
            e.printStackTrace();
        }
    }
}

위의 예시 코드는 빈 Word 문서를 생성하고 텍스트를 추가하여 저장하는 방법을 보여줍니다. createParagraph 메소드로 문단을 생성하고, createRun 메소드로 텍스트를 추가합니다. 이후 setFontFamily, setFontSize, setBold, setItalic, setUnderline 등의 메소드를 사용하여 포맷을 설정할 수 있습니다.

3. 실행 및 결과 확인하기

위의 예시 코드를 실행하면 현재 디렉토리에 example.docx 파일이 생성됩니다. 이 파일을 Microsoft Word 또는 다른 워드 프로세서 애플리케이션에서 열어보면 텍스트가 추가되고 설정한 포맷이 적용된 것을 확인할 수 있습니다.

참고 자료