배경
Task #164 (PR #170)에서 HWPX serializer의 텍스트/문단 직렬화는 완료했으나, Contents/header.xml은 한컴2020 레퍼런스 템플릿을 그대로 임베딩한 상태입니다.
목표
Document.doc_info의 IR을 OWPML(<hh:*> 네임스페이스) 속성으로 매핑하여 동적 생성:
의존성
section.rs의 <hp:p paraPrIDRef="0" styleIDRef="0"> 및 <hp:run charPrIDRef="0"> 고정값을 IR과 동적 연동해야 함
검증
- 단위 테스트: 각 매핑별 ZIP 추출 후 XML 구조 검증
- 한컴 오픈 검증:
tools/verify_hwpx.py
- 실문서 라운드트립:
cargo run --example hwpx_roundtrip 후 글꼴/스타일 보존 확인
참고
배경
Task #164 (PR #170)에서 HWPX serializer의 텍스트/문단 직렬화는 완료했으나,
Contents/header.xml은 한컴2020 레퍼런스 템플릿을 그대로 임베딩한 상태입니다.목표
Document.doc_info의 IR을 OWPML(<hh:*>네임스페이스) 속성으로 매핑하여 동적 생성:font_faces→<hh:fontfaces>/<hh:fontface>/<hh:font>(언어별 7개)border_fills→<hh:borderFills>char_shapes→<hh:charProperties>/<hh:charPr>tab_defs→<hh:tabProperties>numberings/bullets→<hh:numberings>등para_shapes→<hh:paraProperties>/<hh:paraPr>styles→<hh:styles>/<hh:style>의존성
section.rs의<hp:p paraPrIDRef="0" styleIDRef="0">및<hp:run charPrIDRef="0">고정값을 IR과 동적 연동해야 함검증
tools/verify_hwpx.pycargo run --example hwpx_roundtrip후 글꼴/스타일 보존 확인참고
samples/hwpx/ref/ref_text.hwpx(charPr/paraPr 다수 포함)