Skip to content

wrap=Square 표(어울림 배치)의 x 좌표가 단 사이 갭으로 치우침 — 페이지 14 [A] 박스 #480

@planet6897

Description

@planet6897

증상

`samples/21_언어_기출_편집가능본.hwp` 페이지 14 단 1의 paragraph 299(`pi=299 ci=0`) 표("[A]" 박스)가 단 1 본문 안이 아닌 단 0과 단 1 사이의 갭 영역에 그려진다.

측정값:

  • 표 위치: x=580.9, w=22.7, h=42.6
  • 단 0 영역: x=117.2..542.4 (폭 425.2)
  • 단 1 본문 시작: x≈637.6
  • 단 사이 갭: x=542.4..595 (52.6px)
  • → 표가 단 0 끝 + 38.5px 위치 (= 단 사이 갭 안)

HWP 원본 구조

```
--- 문단 0.299 --- cc=269, text_len=260, controls=1
[PS] margins: left=1704 right=1704 indent=1984 border_fill_id=4
[0] 표: 3행×2열, 셀=5
[common] treat_as_char=false, wrap=어울림, vert=문단(475=1.7mm), horz=문단(54=0.2mm)
[common] size=1699×16550(6.0×58.4mm), valign=Top, halign=Left
[outer_margin] right=3.0mm(850)
셀[2] r=1,c=0 rs=1,cs=2 text="[A]"
```

표는 wrap=어울림(Square), horz=문단 기준 0.2mm, paragraph margin_left=1704 HU(6mm).

기대 동작 (PDF)

표 x = paragraph 시작 + horz_offset = (단 1 시작 + paragraph margin_left) + 0.2mm
≈ 637.6 (paragraph 본문 시작 위치) 부근

실제 동작 (SVG)

표 x = 580.9 — 단 사이 갭 영역. paragraph margin_left가 표 x 좌표 계산에 미반영.

추정 원인

`src/renderer/layout.rs`의 wrap=Square 표 처리에서 paragraph margin_left가 빠진 채 단 시작 또는 직전 인접 단의 우측 끝 좌표 기준으로 표 x를 계산하고 있을 가능성. `is_tac=false` + `tbl_is_square=true` 분기 (`layout.rs:2256-2270`) 검토 필요.

영향 범위

  • wrap=Square (어울림 배치) + paragraph indent/margin이 적용된 모든 표
  • 시각적으로 본문 영역 밖에 그려져 가독성 저하
  • 다단 레이아웃 + 어울림 표 조합에서 특히 두드러짐

우선순위

중 — 시각 회귀이지만 콘텐츠 누락은 아님.

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