Metadata-Version: 2.4
Name: hwp2md
Version: 1.0.1
Summary: HWP to Markdown converter
Project-URL: Homepage, https://github.com/jc-kim/hwp2md
Project-URL: Repository, https://github.com/jc-kim/hwp2md
Project-URL: Issues, https://github.com/jc-kim/hwp2md/issues
Author-email: Kim JaeChan <kjc0210@gmail.com>
License-Expression: MIT
License-File: LICENSE.md
Keywords: converter,document,hwp,korean,markdown,parser
Classifier: Development Status :: 3 - Alpha
Classifier: Intended Audience :: Developers
Classifier: License :: OSI Approved :: MIT License
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.12
Classifier: Programming Language :: Python :: 3.13
Classifier: Programming Language :: Python :: 3.14
Classifier: Topic :: Text Processing :: Markup :: Markdown
Requires-Python: >=3.12
Requires-Dist: click>=8.3.0
Requires-Dist: olefile>=0.47
Description-Content-Type: text/markdown

# hwp2md

Python용 HWP/HWPX to Markdown 변환기.

한글(HWP 5.0 및 HWPX) 파일을 LLM에 최적화된 깔끔한 Markdown으로 변환합니다.

## 주요 기능

- ✅ HWP 5.0 및 HWPX 파일에서 텍스트 추출
- ✅ HWPX (ZIP+XML) 형식 지원 (확장자 자동 감지)
- ✅ 표를 Markdown 형식으로 변환
- ✅ 문서 구조 보존
- ✅ 셀 병합 처리 (LLM 최적화를 위한 내용 반복)
- ✅ CLI 도구로 빠른 변환

## 설치

```bash
# pip 사용
pip install hwp2md

# uv 사용
uv add hwp2md
```

## 사용법

### CLI

```bash
# Markdown으로 변환 (stdout 출력)
hwp2md document.hwp

# HWPX 파일 변환 (자동 감지)
hwp2md document.hwpx

# 파일로 저장
hwp2md document.hwp -o output.md
hwp2md document.hwpx -o output.md

# uvx로 설치 없이 실행
uvx hwp2md document.hwp
```

### Python API

```python
from hwp2md import convert

# HWP 또는 HWPX 변환 (확장자로 자동 감지)
markdown = convert("document.hwp")
markdown = convert("document.hwpx")
print(markdown)
```

## 제한사항

- **HWP 5.0 및 HWPX 지원** - 이전 HWP 형식(HWP 3.0, HWP 97, HWP 2002 등)은 지원하지 않음
  - 레거시 HWP 파일은 한컴오피스에서 HWP 5.0 또는 HWPX로 변환 가능
  - 레거시 형식 감지 시 오류 발생
- **텍스트 & 표** - 현재 텍스트와 표만 추출하며, 이미지 및 복잡한 개체는 건너뜀
- **한국어 중심** - 한국어 문서에 최적화 (UTF-16LE 인코딩)
- **기본 서식만** - 글꼴, 색상, 고급 스타일은 보존하지 않음

## 개발

```bash
# 의존성 설치
uv sync

# CLI 실행
uv run hwp2md document.hwp

# 테스트 실행
uv run pytest
```

## 라이선스

MIT
