Skip to content

exam_kor 6p 좌측 단 [18~21] passage 박스 하단 줄 — cross-column 박스 연속 미감지 #468

@planet6897

Description

@planet6897

현상

samples/exam_kor.hwp 6페이지 좌측 단 (col 0) 의 [18~21] passage 박스가 col_bottom 근처에서 하단 stroke 가 그려져 박스가 닫혀 보임. PDF 는 박스가 col 1 / 페이지 7 까지 이어지므로 col 0 하단 줄을 미렌더.

박스 구성

pi h 위치 text bf_id
192 72.0 col 0 page 6 [앞부분의 줄거리]... X
193 61.3 col 0 page 6 원수가 대경하여... X
194 15.3 col 0 page 6 "어서 바삐..." X
195 46.0 col 1 page 6 한데 왕비 크게 노하여... X (계속)

SVG 출력

<rect x="128.50" y="1182.48" width="400.61" height="235.10" fill="none" stroke="#000000" stroke-width="0.5"/>

→ 4면 모두 stroke. col 0 의 마지막 paragraph (pi=194) 가 자체로는 FullParagraph 이라 is_partial_end = end < composed.lines.len() 이 false → bottom 그려짐.

원인

paragraph_layout.rs:2527-2528:

let is_partial_start = start_line > 0;
let is_partial_end = end < composed.lines.len();

이 플래그는 단일 paragraph 내부 split 만 검출. col 경계로 같은 bf_id 가 이어지는 케이스는 미감지.

수정 방향 후보

방안 설명 영향
A merge 그룹 첫/마지막 paragraph 의 다음 paragraph (sequential) 가 같은 bf_id 면 partial 마킹 전역 paragraph 시퀀스 lookup 필요
B col_area.bottom 근접 (예: 30px) 이면 partial_end 휴리스틱 정상 박스 false-positive 가능
C section-wide paragraph→border_group 매핑 사전 계산 후 그룹이 컬럼/페이지 경계를 넘는지 판정 가장 정확하나 큰 변경

관련

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