Skip to content

pua_oldhangul U+F53A 매핑 잘못됨 — 한컴 정답지는 '매핑 표 외' 빈 공백 (현재 본 환경은 자모 시퀀스 ᄒᆞᆫ 으로 임의 변환) #615

@edwardkim

Description

@edwardkim

본질 (정정)

PR #600 (closes #513, Supplementary PUA-A 매핑) 시각 판정 중 발견된 별개 영역 결함. 본 환경의 pua_oldhangul.rs 매핑이 한컴 정답지와 정합 안 함.

한컴 정답지 vs 본 환경

samples/pua-test.hwp 의 U+0F53A 출력:

영역 U+0F53A 처리
한컴 PDF 정답지 "Basic-out, hwpspec, (매핑 표 외)" — 매핑 미지원, 빈 공백 표시
본 환경 SVG (현재) pua_oldhangul.rs:5022 가 자모 시퀀스 ['\u{1112}', '\u{119E}', '\u{11AB}'] (ᄒᆞᆫ) 로 임의 변환 → 옛한글 자모 글리프 미렌더 → 박스 표시

→ 본 환경의 임의 매핑이 한컴 시각 영역과 정합 안 함.

출처 영역

본 환경에 두 매핑 표가 양립:

  1. src/parser/hwp3/johab_map.rs:4969: (0xF53A, '\u{617D}') — HWP3 한자 영역 (慽 슬퍼할 척)
  2. src/renderer/pua_oldhangul.rs:5022: (0xF53A, &['\u{1112}', '\u{119E}', '\u{11AB}']) — 옛한글 자모 시퀀스
  3. src/main.rs:2551 (hwpspec 자체 표): (0x0F53A, "Basic-out", "hwpspec", "(매핑 표 외)")한컴 정답지 본질 = 매핑 표 외

추정 원인

pua_oldhangul.rs 가 광범위 옛한글 PUA 영역 (0xF500~0xF6FF 등) 을 옛한글 자모 시퀀스로 임의 변환. 그러나 일부 코드포인트는 한컴 자체도 매핑 미지원 (Basic-out) — 이 영역도 자모 시퀀스로 변환되어 의도치 않은 글리프 출력.

작업지시자 안내 (시각 검증)

pua-test.hwp 에서 U+0F53A 의 한컴 정답지 아래아 가 표시되지 않습니다.

(재해석 후) 옛한글 PUA 매핑 영역에서 "흔" 이 표시되지 않는다는 의미입니다.
한컴 PDF 정답지: U+0F53A (Basic-out, hwpspec, 매핑 표 외) ← 한컴 PDF 정답지
웹에서 빈 공백으로 처리된 것 같습니다.

정정 방향

옵션 A — pua_oldhangul.rs 의 매핑 표 정정

  • (0xF53A, &['\u{1112}', '\u{119E}', '\u{11AB}']) 항목 제거 또는 빈 시퀀스로 변경
  • 한컴 정답지의 "Basic-out, 매핑 표 외" 영역과 정합
  • 결과: 본 환경 SVG 에 빈 공백 출력 (한컴 정합)

옵션 B — 매핑 표 전체 재검증

  • pua_oldhangul.rs 의 광범위 매핑 영역을 한컴 정답지 (hwpspec 매핑 표) 기준으로 일괄 재검증
  • 한컴 정답지의 "Basic-out" 영역은 모두 매핑 제거
  • 작업 범위 광범위 — 별도 task 검토 필요

옵션 C — 매핑 표는 그대로 두되 시각 판정 통과 우선

  • 자모 시퀀스 변환은 유지
  • SVG font-family 체인에 옛한글 지원 폰트 추가 (이슈 본 환경 직전 본문 방향)
  • 한컴 정합 안 함, 보류 권장

권장: 옵션 A (단순 정합) → 옵션 B (광범위 재검증)

본 작업지시자 시각 검증으로 명확해진 한컴 정답지 영역 정합 — pua_oldhangul.rs:5022 단일 항목 제거가 1차 정합. 이후 인접 매핑 영역 (0xF537~F53F 등 "흐" + 아래아 + 종성 영역) 도 같은 패턴 재검증 필요.

메모리 정합

  • feedback_pdf_not_authoritative 정합 — 단 본 task 의 한컴 정답지는 작업지시자 직접 영역 캡처 (권위 인정)
  • feedback_hancom_compat_specific_over_general — 한컴이 매핑 미지원 (Basic-out) 인 영역은 본 환경도 임의 매핑 금지

영향 범위

  • pua-test.hwp: U+F53A (현재 케이스, 시각 검증 완료)
  • pua_oldhangul.rs 의 광범위 매핑 영역: 0xF500~F6FF 등 인접 코드포인트 모두 동일 결함 가능
  • exam_kor / exam_science 등 옛한글 사용 fixture 영역: 잠재 영향

우선순위

옛한글 PUA 매핑 표가 한컴 정답지와 정합 안 함은 시각 판정 회귀 영역 — M100 (v1.0.0) 마일스톤에서 처리 권장.

관련

Metadata

Metadata

Assignees

No one assigned

    Labels

    bugSomething isn't working

    Projects

    No projects

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions