[java] Apache POI를 이용한 Word 텍스트 스타일링

Apache POI는 자바를 사용하여 Microsoft Office 파일을 조작하는 라이브러리입니다. 이 라이브러리를 사용하면 Word, Excel 및 PowerPoint 파일의 내용을 생성, 수정 및 조작할 수 있습니다.

이번에는 Apache POI를 사용하여 Word 문서의 텍스트 스타일을 적용하는 방법에 대해 알아보겠습니다.

1. Apache POI 의존성 추가

먼저, Maven 또는 Gradle을 사용하여 Apache POI를 프로젝트에 추가해야 합니다. 아래는 Maven을 사용하는 경우의 의존성 설정 예시입니다.

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

2. Word 문서 생성 및 스타일 적용

먼저, Word 문서를 생성하고 텍스트 스타일을 적용해 보겠습니다.

import org.apache.poi.xwpf.usermodel.*;

import java.io.FileOutputStream;
import java.io.IOException;

public class WordStylingExample {
    public static void main(String[] args) {
        XWPFDocument document = new XWPFDocument();

        // 텍스트 스타일을 적용할 단락 생성
        XWPFParagraph paragraph = document.createParagraph();

        // 단락에 적용할 스타일 설정
        XWPFRun run = paragraph.createRun();
        run.setText("Hello World!");
        run.setBold(true);
        run.setItalic(true);
        run.setFontSize(20);

        try (FileOutputStream out = new FileOutputStream("output.docx")) {
            document.write(out);
        } catch (IOException e) {
            e.printStackTrace();
        }
    }
}

위의 예제에서는 XWPFDocument를 사용하여 Word 문서를 생성하고, XWPFParagraph와 XWPFRun을 사용하여 스타일을 적용합니다. run.setBold(true)는 텍스트를 굵게, run.setItalic(true)는 텍스트를 이탤릭으로 설정합니다. 또한, run.setFontSize(20)은 텍스트의 크기를 20으로 설정합니다.

3. 실행 결과 확인

위의 코드를 실행하면, 현재 디렉토리에 “output.docx”라는 이름의 Word 문서가 생성됩니다. 생성된 문서를 열어보면 “Hello World!”라는 텍스트가 굵고 이탤릭체로 적용되었음을 확인할 수 있습니다.

4. 추가적인 스타일 적용

Apache POI를 사용하면 텍스트 스타일링뿐만 아니라 여러 가지 다른 스타일링 옵션도 적용할 수 있습니다. 예를 들어, 폰트 색상, 배경 색상, 양식 맞춤 등을 적용할 수 있습니다. 이에 대한 자세한 내용은 Apache POI의 공식 문서를 참조하시기 바랍니다.

참고 자료