Skip to content

페이지 분할 드리프트 — pi=80 마지막 줄 다음 페이지로 넘어감 (2022 국립국어원 업무계획.hwp p6) #643

@planet6897

Description

@planet6897

증상

samples/2022년 국립국어원 업무계획.hwp 6페이지 마지막 줄(' 및 점자 해당 분야 전문인력 확보 어려움')이 다음 페이지로 분리됨. HWP 원본은 같은 페이지에 배치.

분석

  • 대상: pi=80, 2줄 문단 (line=160%, lh=1500HU=20px)
  • HWP vpos 기준 line1 bottom = 931.2px ≤ body 933.5px → fits (여유 2.3px)
  • 우리 렌더러: page used=906.7px, hwp_used=899.2px → +7.5px 드리프트
  • 잔여 26.8px < line_advance 32px → page break 발생

Root Cause

pagination/engine.rs:864 의 fit 판정이 누적 current_height 기반.
페이지 상단 표(pi=61, wrap=TopAndBottom, tac=true) 부근에서 드리프트 시작 의심:

  • HWP vpos diff: 60.0px, 우리 표 보고 높이: 43.5px

조치 방향

  1. drift 발생 지점 특정 (TYPESET_DRIFT_PI 로그)
  2. pagination fit 판정을 vpos 기반으로 보정
  3. 회귀 테스트 추가

재현

rhwp dump-pages 'samples/2022년 국립국어원 업무계획.hwp' -p 5

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions