Skip to content

table-vpos-01.hwpx p.5 PUA U+F02B1~F02BC 매핑 — 사각형 안 숫자 (한컴 권위) 가 원문자/두부로 출력 #727

@edwardkim

Description

@edwardkim

증상

samples/table-vpos-01.hwpx 5쪽 nested 11×3 그리드 (정부혁신 4대 추진전략 / 12대 추진과제) 의 12 추진과제 번호 PUA 글자가 한컴 권위와 부정합:

  • 19: 사각형 안 숫자 (한컴 PDF 권위) → 본 환경 출력 **원문자 ①⑨**
  • 10~12: 사각형 안 숫자 10/11/12 (한컴 PDF 권위) → 본 환경 출력 두부 캐릭터 (폰트 글리프 부재 폴백)

작업지시자 시각 판정 (PR #694 머지 후 nested 11×3 그리드 표시 + 가시화) 에서 발견. 한컴 PDF (pdf/table-vpos-01-2022.pdf) 가 권위.

사용 PUA 코드포인트

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

codepoint 텍스트 위치 한컴 PDF 권위
U+F02B1~F02B3 "1️⃣ 대국민 소통 / 2️⃣ 국민의 알권리 / 3️⃣ 국민의 목소리" pi=34 셀[3] 사각형 안 숫자 1, 2, 3
U+F02B4~F02B6 "4️⃣ 사각지대 / 5️⃣ 모두가 기본적 / 6️⃣ 자율과 혁신" 셀[10] 사각형 안 숫자 4, 5, 6
U+F02B7~F02B9 "7️⃣ 국민 누구 / 8️⃣ 가짜 노동 / 9️⃣ 열정이 넘치고" 셀[17] 사각형 안 숫자 7, 8, 9
U+F02BA~F02BC (추정) "10 공공부문 AI / 11 공공 AI 리터러시 / 12 공공 AI 윤리" 셀[22] 사각형 안 숫자 10, 11, 12

dump 가 셀[22] PUA 글자를 표시하지 못하는 이유는 별개 점검 필요 (text_len=54 인데 보이는 글자 수 부족).

근본 원인

PR #600 (Task #509) 매핑 영역

src/renderer/layout/paragraph_layout.rs::map_pua_bullet_char:

0xF02B1 => '\u{2460}', // ① (원문자)
0xF02B2 => '\u{2461}', // ②
...
0xF02BA => '\u{2469}', // ⑩
0xF02BB => '\u{246A}', // ⑪
0xF02BC => '\u{246B}', // ⑫

PR #600 (Task #509) 가 mel-001 / kps-ai 한컴 PDF 시각 검증 정합으로 ①~⑳ 매핑 도입 (composer.rs::convert_pua_enclosed_numbers 의 CharOverlap 변환 제외). 본 매핑이 본 영역에서 한컴 권위와 부정합.

두 가능성

가능성 본질 해결 방향
(가) 글로벌 매핑이 잘못 mel-001 도 사실은 사각형 안 숫자가 한컴 권위였는데 PR #600 검증이 환경 차이 (한컴 편집기 vs Linux 폰트) 로 오판 매핑 ①~⑳ 제거 + CharOverlap 사각형 안 숫자 영역으로 환원
(나) 문서별 매핑 의도 다름 동일 PUA 코드가 mel-001 에서는 ①, table-vpos-01 에서는 사각형 안 숫자 — 폰트/스타일 의존 (한컴 글자 모양 영역의 글꼴 매핑) 단순 매핑 표 부적절. 글자 모양 / ParaShape / 폰트 별 분기 필요

작업지시자 영역 권위 판정 — 사각형 안 숫자가 한컴 권위.

두부 (10~12) 영역

⑩⑪⑫ (U+2469~246B) 폰트 글리프 부재 → 폰트 폴백 두부. 매핑이 사각형 안 숫자로 환원되거나 시각 정정되면 두부 영역 자연 해소 기대.

영향 범위 점검 필요

검증 자료

완료 기준 (DoD)

  1. p.5 12 추진과제 번호가 사각형 안 숫자 1~12 (한컴 PDF 권위 정합) 로 표시
  2. 두부 영역 자연 해소
  3. mel-001 / kps-ai 영역 회귀 0건 (PR fix: Supplementary PUA-A (U+F02B1~F02C4) SVG 출력 정정 (closes #513) #600 의 본질 정합 검증 정합)
  4. 다른 sample 영역 회귀 부재 (회귀 검증 범위는 수행계획서에서 정의)

관련 PR / Issue

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