목록으로 돌아가기

[기술 분석] HWP 파일, 왜 표가 깨져서 나올까?

기술 분석2026-08-11· 읽기 시간 3분

HWP 파일을 다루어 본 개발자라면, 문서 내의 표(Table) 구조를 추출하는 것이 얼마나 까다로운지 잘 알고 계실 것입니다.

기존 변환기의 한계

일반적으로 널리 쓰이는 HWP 오픈소스 추출 도구인 hwp5txt를 사용해 보면, 텍스트는 어느 정도 추출되지만 표 데이터는 완전히 증발해버리는 치명적인 문제가 있습니다.

실제로 조달청 신구조문대비표 HWP 문서를 hwp5txt로 변환한 결과는 다음과 같습니다.

$ hwp5txt 조달청고시제2026-39호_신구조문대비표.hwp [출력 결과] 수행에 참여할 창업기업을 다음과 같이 모집합니다. 2026년 7월 20일 창업진흥원장 <표> <표> □ 사업개요 : 민간에서 운영하는 우수 오픈이노베이션 프로그램을 발굴하고... <표> <표>

위와 같이, 표 내부에 있던 중요한 데이터(비용, 정책 내용 등)가 모두 통째로 증발하고 <표>라는 텍스트만 덩그러니 남게 됩니다.

왜 이런 일이 발생할까?

HWP 파일 포맷(CFB 파일 구조)에서 표는 단순한 텍스트 스트림이 아니라 고유한 컨트롤(Control) 객체로 다뤄집니다. hwp5txt와 같은 단순 텍스트 추출 도구는 이 컨트롤 객체의 내부 셀(Cell) 데이터 계층을 순회하지 않고, 단순히 텍스트 스트림만 파싱하기 때문에 표를 만났을 때 그저 "여기에 표가 있다"는 의미로 <표>라는 텍스트만 남기고 건너뛰게 됩니다.

MDChange의 해결책

MDChange는 자체 개발한 정밀 파서를 통해 HWP 내부의 컨트롤 객체 계층을 모두 재귀적으로 순회합니다. 병합된 셀(Rowspan/Colspan)은 HTML/Markdown의 표준 문법으로 완벽히 치환되며, 표 내부의 텍스트 줄바꿈과 스타일까지 최대한 보존하여 완벽한 마크다운 문서로 재탄생시킵니다.

완벽한 표 파싱 및 대량 문서 자동화가 필요하신가요?

MDChange의 B2B 엔터프라이즈 전용 API를 도입하여 사내 HWP/HWPX 문서의 RAG 데이터 생성을 자동화하세요.