본질
samples/basic/shortcut.hwp 페이지 27 의 헤더 zone (1x1 TAC 표 + 후속 PartialParagraph) 이 PDF 권위(한글 2022) 대비 1333 px 짧음. 본문이 위쪽으로 압축되어 PDF 정합 미달.
재현
cargo run --release --bin rhwp -- export-svg samples/basic/shortcut.hwp -o /tmp/shortcut-svg
cargo run --release --bin rhwp -- dump-pages samples/basic/shortcut.hwp
진단 (정적 분석)
dump-pages 단 0 (헤더 zone) used vs hwp_used diff
| 페이지 |
items |
rhwp used |
hwp_used |
diff |
| 1 |
1 (FullParagraph pi=0) |
69.1 px |
53.1 px |
+16.0 (헤더 paragraph 자체) |
| 2 |
2 (Table pi=36 + PartialParagraph) |
27.3 px |
47.1 px |
-19.8 |
| 3 |
2 (Table pi=81 + PartialParagraph) |
30.5 px |
53.5 px |
-23.0 |
| 4 |
1 (FullParagraph pi=94) |
20.0 px |
53.3 px |
-33.3 |
| 5 |
3 |
40.0 px |
53.3 px |
-13.3 |
| 7 |
1 |
20.0 px |
53.3 px |
-33.3 |
페이지 27 의 헤더 zone 모두 hwp_used 보다 **1333 px 부족**.
PDF 권위 자료 비교
PDF 페이지 2 (pdf/basic/shortcut-2022.pdf) 헤더 ('파일') ~ 본문 ('새 문서') 거리 ≈ 60 px.
rhwp 페이지 2 의 동일 거리 ≈ 21 px.
→ rhwp 가 PDF 보다 약 40 px 압축.
시각 비교
- PDF: 헤더 표 아래 여백 충분, 본문 항목들 충분히 spaced
- rhwp: 헤더 표 바로 아래 본문 시작, 압축된 모습
IR 검증
영향 paragraph (예: pi=36) 의 IR:
- TAC 1x1 표 (보기/파일/입력 등 헤더 표)
- ParaShape: 동일 ps_id 사용
- LINE_SEG: vpos / lh / ls 정상
→ IR 자체 문제 아님. layout 단계의 TAC 표 후속 spacing 산출 결함.
Root cause 가설 (정적 분석)
src/renderer/layout.rs 또는 src/renderer/layout/paragraph_layout.rs 의 TAC 1x1 표 host paragraph 처리에서:
- 표 높이 + 표 아래 여백 (outer_margin_bottom + spacing_after) 산출 누락
- 또는 PartialParagraph (line 1..2) 이 표 본체와 결합되어 표 아래 여백 차감
- 또는
pending_body_wide_top_reserve 등의 계산이 헤더 zone 에서 부족
영향 범위
samples/basic/shortcut.hwp 페이지 2~7 (Distribute 다단 헤더 표)
- 다른 샘플 중 동일 패턴 (TAC 1x1 헤더 표 + 후속 다단 본문) 가능성
우선순위
Task #768 (column-break wrap-around) PR merge 후 별도 task 로 진행. 본 결함은 페이지 분배 영역과 무관한 paragraph height/spacing 영역.
관련 자료
본질
samples/basic/shortcut.hwp페이지 27 의 헤더 zone (1x1 TAC 표 + 후속 PartialParagraph) 이 PDF 권위(한글 2022) 대비 1333 px 짧음. 본문이 위쪽으로 압축되어 PDF 정합 미달.재현
진단 (정적 분석)
dump-pages 단 0 (헤더 zone) used vs hwp_used diff
페이지 2
7 의 헤더 zone 모두 hwp_used 보다 **1333 px 부족**.PDF 권위 자료 비교
PDF 페이지 2 (
pdf/basic/shortcut-2022.pdf) 헤더 ('파일') ~ 본문 ('새 문서') 거리 ≈ 60 px.rhwp 페이지 2 의 동일 거리 ≈ 21 px.
→ rhwp 가 PDF 보다 약 40 px 압축.
시각 비교
IR 검증
영향 paragraph (예: pi=36) 의 IR:
→ IR 자체 문제 아님. layout 단계의 TAC 표 후속 spacing 산출 결함.
Root cause 가설 (정적 분석)
src/renderer/layout.rs또는src/renderer/layout/paragraph_layout.rs의 TAC 1x1 표 host paragraph 처리에서:pending_body_wide_top_reserve등의 계산이 헤더 zone 에서 부족영향 범위
samples/basic/shortcut.hwp페이지 2~7 (Distribute 다단 헤더 표)우선순위
Task #768 (column-break wrap-around) PR merge 후 별도 task 로 진행. 본 결함은 페이지 분배 영역과 무관한 paragraph height/spacing 영역.
관련 자료
samples/basic/shortcut.hwp(가로 paper, 다단 영역 다수, 헤더 표 다수)pdf/basic/shortcut-2022.pdf(한글 2022)src/renderer/layout.rs(TAC 표 처리),src/renderer/layout/paragraph_layout.rs(paragraph spacing)