발견 영역
PR #601 검토 영역에서 작업지시자가 발견하신 본 환경 표 조판 결함 영역.
원본 영역: PR #601 (Task #594 복수 제목행 정정) 의 시각 발현 영역 점검 중 samples/aift.hwp 47 페이지 (page_num=41) 의 표 조판 붕괴 현상 발견.
정량 증거
1. 페이지 수 차이 (한컴 vs 본 환경)
| 영역 |
페이지 수 |
| 한컴 정합 (작업지시자 측정) |
47 |
본 환경 samples/aift.hwp (HWP5) |
77 (+30) |
본 환경 samples/hwpx/aift.hwpx (한컴 2020 변환본) |
74 (+27) |
→ 본 환경 페이지네이션이 한컴 정합 대비 +30 페이지 부풀음. HWPX 변환본도 동일 영역.
2. 47 페이지 (page_num=41) vpos 영역 분석 (dump-pages -p 46 samples/aift.hwp)
=== 페이지 47 (global_idx=46, section=2, page_num=41) ===
body_area: x=75.6 y=75.6 w=642.5 h=971.4
단 0 (items=10, used=893.1px)
FullParagraph pi=576 h=17.3 (sb=0.0 lines=17.3 sa=0.0) vpos=0 \"(빈)\"
FullParagraph pi=577 h=17.3 (sb=0.0 lines=17.3 sa=0.0) vpos=2080 \" [주관기관 : 기업명1] ※ 주관/공동기관 중 기업만 작성\"
FullParagraph pi=578 h=14.7 (sb=0.0 lines=14.7 sa=0.0) vpos=4160 \"(빈)\"
PartialParagraph pi=579 lines=0..1 vpos=33421
Table pi=579 ci=0 5x2 638.4x362.1px wrap=TopAndBottom tac=false vpos=33421
FullParagraph pi=580 h=17.3 (sb=0.0 lines=17.3 sa=0.0) vpos=35501
Table pi=581 ci=0 5x2 642.2x320.4px wrap=TopAndBottom tac=false vpos=37581
FullParagraph pi=582 h=17.3 (sb=0.0 lines=17.3 sa=0.0) vpos=63517
FullParagraph pi=583 h=17.3 (sb=0.0 lines=17.3 sa=0.0) vpos=65597
PartialTable pi=584 ci=0 rows=0..2 cont=false 5x2 vpos=67677
vpos 차이 분석:
- pi=578 끝 (vpos=4160 + h=14.7px ≈ 4160 + 4160 HU) → pi=579 시작 (vpos=33421) 차이: 약 +29,261 HU (≈ +103mm ≈ +389px) ⚠️
- pi=581 끝 (vpos=37581 + 표 영역) → pi=582 시작 (vpos=63517) 차이: 약 +25,936 HU (≈ +91mm) ⚠️
→ 표 위 빈 공간 vpos 영역이 비정상적으로 큼.
3. 시각적 결함 영역 (작업지시자 발견)
s2:pi=578 y=131.0 다음에 와야 하는 s2:pi=579 가 그 사이에 빈 공간이 너무 큰 이유와 s2:pi=579 다음 표 2개가 또 오버랩까지 되는 조판 붕괴현상
→ pi=579 표와 pi=581 표가 시각적 오버랩 발생 (작업지시자 디버그 오버레이 시각 검증).
4. aift.hwpx 첫 페이지 영역 분석
=== 페이지 1 (global_idx=0, section=0, page_num=1) ===
단 0 (items=2, used=455.4px, hwp_used≈236.4px, diff=+219.0px)
Table pi=0 ci=1 1x1 635.0x205.8px wrap=TopAndBottom tac=true vpos=0..16630
PartialParagraph pi=0 lines=0..2 vpos=0..16630
→ hwp_used (HWP 의 사용 영역) 236.4px vs 본 환경 측정 455.4px → +219px (약 92% 부풀음).
5. 단위 해석 자체는 정합 — 결함은 vpos 영역
pi=579 표 size 점검:
- IR: 47879 × 27155 HU
- mm 변환: 168.9mm × 95.8mm (HU/283.46)
- px 변환 (DPI 96): 638.4 × 362.1 (mm × 3.78)
- 본 환경 측정: 638.4 × 362.1 ✅ 정합
→ HU → mm → px 단위 변환은 정합. 결함은 vpos / paragraph 누적 y / 표 영역 위 빈 공간 처리 영역.
가설 영역
- 표 wrap=TopAndBottom 의 위쪽 여백 영역 부풀음 — 표 위에 vpos=33421 처럼 큰 영역이 누적되는 본질 미파악
- pi=579 의 PartialParagraph (lines=0..1) + Table 동일 vpos=33421 — partial paragraph 의 추가 line 영역이 vpos 부풀림 가능성
hwp_used 측정 영역 (HWP 의 권위 영역) 과 본 환경 measure_paragraph 차이 영역 — paragraph 높이 측정 결함
재현 방법
# 1. dump-pages 로 vpos 차이 확인
./target/release/rhwp dump-pages samples/aift.hwp -p 46
# 2. 디버그 오버레이로 시각 확인
./target/release/rhwp export-svg samples/aift.hwp -p 46 --debug-overlay --show-control-codes -o /tmp/p47/
# 3. aift.hwpx 첫 페이지 hwp_used 차이
./target/release/rhwp dump-pages samples/hwpx/aift.hwpx -p 0
영향 범위
- 페이지네이션 결함 — 한컴 정합 대비 +30 페이지 부풀음
- 시각적 표 오버랩 (47 페이지의 pi=579 / pi=581 영역)
- 사용자 사용성 영역 (실제 페이지 번호 vs 본 환경 표시 페이지 차이)
- HWP5 + HWPX 양쪽 동일 발현 영역 (parser 영역 아닌 layout 영역 결함)
환경
마일스톤
M100 (v1.0.0) — 본질 페이지네이션 영역 결함으로 v1.0.0 진입 전 우선 처리 권고.
컨트리뷰터 안내
본 이슈는 외부 컨트리뷰터의 PR 을 환영합니다. 진행 전 댓글로 의향 알려주시면 메인테이너가 assignee 지정 + 추가 자료 (한컴 정합 시각 자료 등) 안내드립니다.
진행 시 참고
- 한컴 (한컴오피스 2010 / 2020 / 2022) 의 페이지네이션 + 표 조판 동작이 권위 기준 (
reference_authoritative_hancom)
- 본 결함은 표 wrap=TopAndBottom 영역의
pi/vpos 누적 처리 추정 — src/renderer/layout/ 영역 검토 권장
- HWP5/HWPX 양쪽 동일 발현 → renderer 영역 결함 (parser 영역 아님)
dump-pages + --debug-overlay 결합으로 시각 검증 권장
발견 영역
PR #601 검토 영역에서 작업지시자가 발견하신 본 환경 표 조판 결함 영역.
원본 영역: PR #601 (Task #594 복수 제목행 정정) 의 시각 발현 영역 점검 중
samples/aift.hwp47 페이지 (page_num=41) 의 표 조판 붕괴 현상 발견.정량 증거
1. 페이지 수 차이 (한컴 vs 본 환경)
samples/aift.hwp(HWP5)samples/hwpx/aift.hwpx(한컴 2020 변환본)→ 본 환경 페이지네이션이 한컴 정합 대비 +30 페이지 부풀음. HWPX 변환본도 동일 영역.
2. 47 페이지 (page_num=41) vpos 영역 분석 (
dump-pages -p 46 samples/aift.hwp)vpos 차이 분석:
→ 표 위 빈 공간 vpos 영역이 비정상적으로 큼.
3. 시각적 결함 영역 (작업지시자 발견)
→ pi=579 표와 pi=581 표가 시각적 오버랩 발생 (작업지시자 디버그 오버레이 시각 검증).
4. aift.hwpx 첫 페이지 영역 분석
→
hwp_used(HWP 의 사용 영역) 236.4px vs 본 환경 측정 455.4px → +219px (약 92% 부풀음).5. 단위 해석 자체는 정합 — 결함은 vpos 영역
pi=579표 size 점검:→ HU → mm → px 단위 변환은 정합. 결함은 vpos / paragraph 누적 y / 표 영역 위 빈 공간 처리 영역.
가설 영역
hwp_used측정 영역 (HWP 의 권위 영역) 과 본 환경 measure_paragraph 차이 영역 — paragraph 높이 측정 결함재현 방법
영향 범위
환경
6d9849a(PR fix: 복수 제목행 반복 시 2행 이상 출력 정정 (closes #594) #601 cherry-pick 후, devel HEAD)samples/aift.hwp+samples/hwpx/aift.hwpx마일스톤
M100 (v1.0.0) — 본질 페이지네이션 영역 결함으로 v1.0.0 진입 전 우선 처리 권고.
컨트리뷰터 안내
본 이슈는 외부 컨트리뷰터의 PR 을 환영합니다. 진행 전 댓글로 의향 알려주시면 메인테이너가 assignee 지정 + 추가 자료 (한컴 정합 시각 자료 등) 안내드립니다.
진행 시 참고
reference_authoritative_hancom)pi/vpos누적 처리 추정 —src/renderer/layout/영역 검토 권장dump-pages+--debug-overlay결합으로 시각 검증 권장