Moait
홈인기 피드모든 블로그모든 태그
홈인기 피드모든 블로그모든 태그
한/글 문서 파일 형식: Python을 통한 HWP 포맷 파싱하기 (2) 섬네일

한/글 문서 파일 형식: Python을 통한 HWP 포맷 파싱하기 (2)

한글과컴퓨터 favicon한글과컴퓨터·Data·
PythonHWPzlibolefile
2025년 09월 29일2

AI 요약

이 글은 AI가 요약했어요. 정확한 내용은 꼭 원문을 확인해 주세요!

핵심 요약

한글과컴퓨터가 Python으로 HWP 포맷의 본문 파싱 구현을 제시하고, Section 스트림 해제와 문단 레코드 구성을 따라 본문 데이터를 추출하는 절차를 설명했습니다.

구현 방법

  • Python 기반 구현으로 olefile로 파일을 열고 BodyText/Section{i} 스트림을 zlib으로 해제하여 파싱합니다.
  • 데이터 모델로 Section, Para, CharShape, ParaLineSeg, ParaRangeTag 등 다층 구조를 정의합니다.
  • HWPTAG_PARA_HEADER, HWPTAG_PARA_TEXT, HWPTAG_PARA_CHAR_SHAPE, HWPTAG_PARA_LINE_SEG, HWPTAG_PARA_RANGE_TAG, HWPTAG_CTRL_HEADER 등의 레코드를 순차적으로 읽고 텍스트를 추출합니다.
  • 문단 내 컨트롤 문자 처리와 컨트롤 데이터 위치 파악 로직을 포함합니다.
  • 샘플 파일 분석으로 글꼴·색상·정렬 등 서식이 실제 렌더링과 일치하는지 확인했습니다.

주요 결과

  • 본문 파싱 및 텍스트 추출 파이프라인 구현이 완료되었습니다.
  • 섹션 단위로 파싱하고 서식 정보를 매핑하는 구조를 도입했습니다.
  • 샘플 파일에서 서식(글꼴/색상/정렬)과 렌더링 간의 일치 여부를 확인했습니다.
  • 표/그림 등 복잡한 컨트롤 객체 파싱은 다음 글에서 다룰 예정임을 명시했습니다.

연관 피드

%가 높을수록 이 글과 비슷할 가능성이 높아요!
한/글 문서 파일 형식: Python을 통한 HWPX 포맷 파싱하기 (2) 섬네일
81%

한/글 문서 파일 형식: Python을 통한 HWPX 포맷 파싱하기 (2)

한글과컴퓨터 favicon한글과컴퓨터·2025년 09월 29일
워드 문서 파일 형식: DOC 포맷의 구조와 이해 (1) 섬네일
66%

워드 문서 파일 형식: DOC 포맷의 구조와 이해 (1)

한글과컴퓨터 favicon한글과컴퓨터·2026년 02월 09일
워드 문서 파일 형식: DOCX 포맷의 구조와 이해 (1) 섬네일
61%

워드 문서 파일 형식: DOCX 포맷의 구조와 이해 (1)

한글과컴퓨터 favicon한글과컴퓨터·2026년 02월 09일