Skip to content

다단 col 1 시작 reserve 과대 산정 (exam_kor 페이지 1 pi=30 split) #393

@planet6897

Description

@planet6897

증상

samples/exam_kor.hwp 페이지 1 단 1 끝 (3번 문제 ⑤번 답안 + 체크 그림, pi=30) 이 페이지 2 로 일부 split 됨. 한컴 PDF 와 비교 시 1페이지 안에 1, 2, 3번 문제 모두 완전히 들어가야 정상.

페이지 1 단 1: items=25, used=1207.6px, hwp_used≈1153.1px, diff=+54.5px
  ... pi=29 (④번)
  PartialParagraph pi=30 lines=0..1 vpos=84992..87171  ← 일부만

페이지 2 단 0: items=2, used=49.0px
  PartialParagraph pi=30 lines=1..3 vpos=87171..89009  ← 잔여 (PDF 에는 없음)
  Shape pi=30 ci=0 (체크 그림)

정량 진단

RHWP_TYPESET_DRIFT=1 진단 + HWP vpos 비교:

위치 typeset cur_h HWP vpos→px 차이
단 1 시작 (pi=12 직전) 306.1 94.5 +211.6
pi=29 끝 1178.5 1122 +56.5
pi=30 배치 시도 1247.4 → split 1202 → fit

두 가지 미스매치가 합쳐진 결과:

(A) col 1 시작 reserve 과대 (+212 px)

  • col 0 의 body-wide TopAndBottom 표 (pi=0 ci=4, w=888.2 h=147.4) 로 인해 `pending_body_wide_top_reserve` 가 typeset 에서 306.1 px 으로 산정
  • HWP 는 col 1 에서 pi=12 를 94.5 px 위치에 배치 (vpos 7085)

(B) 항목별 누적이 layout vpos 진행보다 과소 (-155 px)

두 효과 합산: 순 +57 px 과대 → pi=30 가 끝에서 ~37 px 부족하여 강제 분할.

원하는 동작

수정 방향 (옵션 A — col 1 reserve 정정)

`compute_body_wide_top_reserve_for_para` 의 다단 보정 검토. 현재 reserve 가 표 높이 자체 (147.4) 가 아니라 ~212 px 더 큰 값 (306.1) 으로 산정되는 원인 추적:

마일스톤

v1.0.0 (M100)

관련

Metadata

Metadata

Assignees

Labels

enhancementNew feature or request

Projects

No projects

Relationships

None yet

Development

No branches or pull requests

Issue actions