Skip to content

글상자 컨테이너 자식 표/문단 미렌더 — table-in-tbox.hwp p1 본 양식 표 누락 (한글 2022 PDF mismatch) #696

@planet6897

Description

@planet6897

회귀 범위

  • 샘플: samples/table-in-tbox.hwp 페이지 1
  • 권위 자료: pdf/table-in-tbox-2022.pdf (한글 2022 변환)
  • 시각 RMSE: p1 31.4%, p2 25.1% (compare -fuzz 5%, 100 DPI)

작업지시자 시각 판정 정합

정답 (PDF p1): 글상자 안에 양식 표 + 19개 문단(라벨/사진박스/서명박스 등) 정상 배치.

현재 rhwp 출력 (회귀):

  • 본 양식 표·문단 컨텐츠가 거의 누락
  • 사진박스·서명박스 등 wrap=InFrontOfText 사각형 일부만 그려짐

회귀 본질

페이지 1의 본문 = 글상자(사각형 도형) 1개 + 빈 문단. 글상자가 19개 자식 문단을 가지며 그 중 일부가 표/이미지/사각형 컨트롤을 포함.

dump-pages -p 0:

단 0 (items=2, used=986.7px)
  FullParagraph  pi=0  h=976.3  "(빈)"
  Shape          pi=0 ci=2  wrap=InFrontOfText tac=true  vpos=0

dump -s 0 -p 0 발췌:

[2]   [사각형] round=0%
    크기: 166.3mm × 243.1mm (47139×68911 HU)
    위치: 가로=문단 오프셋=0.0mm 정렬=Left, 세로=문단 오프셋=0.0mm 정렬=Top
    배치: 글앞으로, 글자처럼=true, z=0
    요소: orig=44973×67863, curr=47139×73219, M=[1.048,0.000,0; 0.000,1.079,0], offset=(0,764)
    글상자: list_attr=0x00000020, margins=(283,283,283,283), max_width=47139, paras=19
      p[0..18] ...

→ 글상자 자식 트리(19 paras, 내부에 표 등) 의 렌더 경로가 누락되거나, 비균등 변환 행렬 M=[1.048; 1.079] 적용 시 컨텐츠가 클립 / 0-사이즈로 좁혀짐.

핵심 영역

  • src/renderer/ 글상자(Shape) 자식 컨테이너 순회 — paras=19 traversal
  • 글상자 변환 행렬 (orig → curr 스케일) 적용 시 자식 좌표계
  • wrap=InFrontOfText 자식 사각형은 그려지므로, 컨테이너 자식 paragraph/table 분기가 따로 막혀 있을 가능성

관련 이슈

영향 영역

샘플 영역
table-in-tbox.hwp p1 본 양식 표·문단 누락 (확정)
다른 글상자 컨테이너 케이스 점검 필요 (예: 양식·서식지 류)

검증 절차

  1. rhwp export-svg samples/table-in-tbox.hwp -o /tmp/svg
  2. rsvg-convert -d 100 -p 100 /tmp/svg/table-in-tbox_001.svg -o /tmp/svg.png
  3. pdftoppm -r 100 pdf/table-in-tbox-2022.pdf /tmp/pdf -png
  4. compare -metric RMSE -fuzz 5% /tmp/pdf-1.png /tmp/svg.png /tmp/diff.png → 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