Skip to content

table-vpos-01.hwpx p.5 nested 표 외부 셀 height 미반영 (외부 표 height 57.72px / 권위 778.8px) #688

@planet6897

Description

@planet6897

증상

samples/table-vpos-01.hwpx (5쪽) 의 5쪽 마지막 큰 표(pi=34, "정부혁신 4대 추진전략 / 12대 추진과제" 박스) 가 SVG 출력에서 거의 전부 누락됨.

  • PDF 권위(pdf/table-vpos-01-2022.pdf) 5쪽: 큰 박스 안에 헤더 + 4대 그룹(참여소통/기본사회/공직혁신/공공 AX) × 3 항목 = 12 추진과제가 그리드로 표시
  • 우리 SVG 5쪽 (/tmp/tvpos01/table-vpos-01_005.svg, 20KB — 다른 페이지 200~450KB) : 참고 박스 + 빨간 타이틀 + 파란 부제까지만 표시, 그 아래 큰 표는 외곽선·셀·텍스트 모두 누락

근본 원인 분석

rhwp dump samples/table-vpos-01.hwpx -s 0 -p 34 권위값:

  • pi=34 외부 표: 1행×1열, treat_as_char=true, wrap=TopAndBottom, size 638.8 × 778.8px (47913×58410 HU)
  • pi=34 ls[0]: vpos=249088, lh=58692 HU ≈ 779px
  • 외부 셀[0] h=50720 HU ≈ 676px, paras=2
    • p[0] 내부 표 1x1 — 헤더 "정부혁신 4대 추진전략, 12대 추진과제"
    • p[1] 내부 표 11x3 — 셀 23개 (1/2/3/4 그룹 헤더 + 12개 항목)

rhwp export-svg --debug-overlay 실측값 (/tmp/tvpos01_dbg/table-vpos-01_005.svg 라인 111):

<rect x=\"77.43\" y=\"229.85\" width=\"623.75\" height=\"57.72\" .../>
label: s0:pi=34 ci=0 1x1 y=229.9
항목 권위값 layout 계산 차이
pi=34 표 height 778.8px 57.72px ~14배 부족
pi=34 표 width 638.8px 623.75px -15.1px

→ 외부 1x1 표의 height 가 nested 11x3 그리드 분량을 누적하지 못해 작게 잡힘. 결과적으로 외곽선이 거의 안 보이고 셀 내부 nested 표 콘텐츠가 그려지지 않음.

의심 코드 영역

  • src/renderer/layout/table_layout.rs::layout_table() (line 127–)
  • layout_table_cells() (line 1148–) 의 nested table 분기 (line 1431–1439, 1901–1943)
  • 셀 paragraphs 순회 시 Control::Table (treat_as_char=false) 의 누적 height 가 부모 셀 height 에 반영되지 않을 가능성, 또는 ls[0].lh 권위값이 채택되지 않고 단순 line height 합산만 사용될 가능성

부수 관찰 (별도 이슈 후보)

  • 5쪽 시작 직전 페이지 1 마지막 문단 4.1px 오버플로우 (LAYOUT_OVERFLOW: page=0, col=0, para=7, overflow=4.1px) — 본 이슈와 별개로 페이지네이션 미세 차이
  • dump-pages 페이지 2 hwp_used vs used diff = -791.9px, 페이지 3 = -1658.3px — 같은 계열일 가능성, 본 이슈 수정 후 재측정 필요

검증 자료

  • 입력: samples/table-vpos-01.hwpx
  • 권위 PDF: pdf/table-vpos-01-2022.pdf (한글 2022)
  • 분석 SVG: /tmp/tvpos01_dbg/table-vpos-01_005.svg

완료 기준 (DoD)

  1. pi=34 외부 표 외곽선이 5쪽에 778.8px ± 허용오차로 그려진다
  2. nested 1x1 헤더 박스("정부혁신 4대 추진전략, 12대 추진과제") 텍스트 표시
  3. nested 11x3 그리드의 4대 그룹 헤더 + 12개 추진과제 텍스트 모두 표시
  4. PDF 권위본 5쪽과 시각적으로 정합
  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