Skip to content

표 셀 padding이 overflow 휴리스틱으로 0까지 축소되는 문제 (exam_kor.hwp 보기 박스) #617

@planet6897

Description

@planet6897

증상

exam_kor.hwp 의 16/27/36번 <보기> / <자료> 글상자에서 본문과 셀 테두리 사이 좌·우 padding이 거의 0으로 표시됨.

원인 (분석)

src/renderer/layout/table_layout.rs:860 shrink_cell_padding_for_overflow 가 양쪽 정렬 한국어 본문의 자연 폭을 과대 추정하여, 정상 padding(=850 HU ≈ 3 mm)을 거의 0까지 축소.

  • resolve_cell_padding 은 cell.padding(850)을 정상 채택
  • 직후 shrink_cell_padding_for_overflowestimate_text_width (음수 letter_spacing 0으로 clamp) 결과로 1.15× 임계 초과 판단
  • CharShape ratio=95% / spacing=-5% 와 HWP가 이미 line_segs로 분배해 둔 자간이 추정에 충분히 반영되지 않음

검증

같은 표 구조 / pad=(850,850,992,708) / aim=false 인데 25번 박스(text_len=639, 8 lines)는 정상, 27번 박스(text_len=681, 9 lines)는 깨짐. 텍스트 분량 차이로 임계 초과 여부만 갈리는 것이 결정적 증거.

수정 방향

  1. line_segs 가 이미 채워진 정상 IR 케이스에서는 shrink 비활성화 (HWP 가 셀 폭 안에서 자간 분배 완료)
  2. 임계값 완화 + CharShape effective width 반영
  3. 최소 padding 1 px 대신 원래의 일정 비율 유지

영향 샘플

  • samples/exam_kor.hwp 페이지 6 (16번), 페이지 9 (27번), 페이지 17 (36번)

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