Summary
한글 모아쓰기 구조 지식 스킬. 자모 체계(초성 19·중성 21·종성 27), 음절 블록 유형 6종과 슬롯 박스 기본값, 유니코드 조합 공식, 커버리지 단계 전략을 제공. 한글 자모 목록, 음절 분해, 블록 유형 판별, 조합 규칙, 커버리지 계획이 필요한 모든 폰트 작업에서 반드시 이…
revfactory/font-harness · Archived
한글 모아쓰기 구조 지식 스킬. 자모 체계(초성 19·중성 21·?
npx skills add revfactory/font-harness --skill hangul-composition
한글 모아쓰기 구조 지식 스킬. 자모 체계(초성 19·중성 21·종성 27), 음절 블록 유형 6종과 슬롯 박스 기본값, 유니코드 조합 공식, 커버리지 단계 전략을 제공. 한글 자모 목록, 음절 분해, 블록 유형 판별, 조합 규칙, 커버리지 계획이 필요한 모든 폰트 작업에서 반드시 이…
This repository is archived — consider an actively maintained alternative.
한글 폰트 제작 하네스 오케스트레이터. 콘? 요청 시 반드시 이 스킬을 사용할 것. 폰트와 무관한 일…
1 installs글리프 디자인 방법 스킬. SVG 글리프 좌표계·경로 규약, 획 구성법, 시각 보정 원리, 디자인 언어 스…
1 installs폰트 시안(스펙시멘) 페이지 제작 스킬. 글리프 SVG를 모아 피드백용 HTML 시안을 만들고 Artifact로 …
1 installs폰트 빌드·릴리스 스킬. SVG 글리프를 fontTools로 컴파일해 설치 가능한 TTF 폰트 파일을 생성 — 번…
1 installsRelated neighbors and high-traction skills in the same topics — useful to compare before installing.
React composition patterns that scale. Use when refactoring components with boolean prop prolif…
1.7K installsDesign optimal team structures, hiring plans, compensation strategies, and equity allocation fo…
9.1K installsDesign optimal agent team compositions with sizing heuristics, preset configurations, and agent…
8.4K installsDecompose research ideas into atomic, self-contained concepts with bidirectional math-code mapp…
1.4K installsUse this when the page-import pipeline needs to analyze the content sequences within a single s…
1.3K installsOther skills from revfactory/font-harness.
npx skills add revfactory/font-harness
Declared targets from SKILL.md / docs. Unmarked agents are not listed — the skill may still install via the CLI.
main
Files included with this skill beyond the listing page.
SKILL.md
5,452 B
SUMMARY.md
408 B
한글 음절은 자모(낱자)를 정사각 블록 안에 조합해 만든다. 이 문서가 자모 목록·블록 유형·슬롯 기본값의 단일 기준이다.
초성 19자 (인덱스 0~18): ㄱ ㄲ ㄴ ㄷ ㄸ ㄹ ㅁ ㅂ ㅃ ㅅ ㅆ ㅇ ㅈ ㅉ ㅊ ㅋ ㅌ ㅍ ㅎ
중성 21자 (인덱스 0~20): ㅏ ㅐ ㅑ ㅒ ㅓ ㅔ ㅕ ㅖ ㅗ ㅘ ㅙ ㅚ ㅛ ㅜ ㅝ ㅞ ㅟ ㅠ ㅡ ㅢ ㅣ
종성 27종 (인덱스 1~27, 0은 받침 없음): ㄱ ㄲ ㄳ ㄴ ㄵ ㄶ ㄷ ㄹ ㄺ ㄻ ㄼ ㄽ ㄾ ㄿ ㅀ ㅁ ㅂ ㅄ ㅅ ㅆ ㅇ ㅈ ㅊ ㅋ ㅌ ㅍ ㅎ
중성 계열 분류 (블록 유형 판별에 사용):
음절 코드 = 0xAC00 + (초성인덱스 × 21 + 중성인덱스) × 28 + 종성인덱스
예: 한 = ㅎ(18)·ㅏ(0)·ㄴ(4) → 0xAC00 + (18×21+0)×28 + 4 = U+D55C 음절 범위: U+AC00(가) ~ U+D7A3(힣), 총 11,172자.
| 유형 | 구성 | 예 | 분할 |
|---|---|---|---|
| 1 | 초성 + 세로모음 | 가 바 리 | 좌우 |
| 2 | 초성 + 가로모음 | 소 무 그 | 상하 |
| 3 | 초성 + 복합모음 | 화 귀 의 | ㄱ자 |
| 4 | 유형1 + 종성 | 한 람 밀 | 좌우 + 하단 |
| 5 | 유형2 + 종성 | 글 물 승 | 3단 |
| 6 | 유형3 + 종성 | 관 궝 흰 | ㄱ자 + 하단 |
같은 자모라도 유형마다 다른 변형 글리프가 필요하다. 예: ㄱ은 최소 초성용(유형1/2/3, 받침 유무별)과 종성용이 필요하다. 변형을 스케일로 대체하면 획 굵기가 뭉개진다 — 반드시 유형별로 다시 그린다.
좌표계: SVG viewBox 0 0 1000 1000, y-down, 베이스라인 y=880. 아래 값은 기본 네모꼴 기준 시작값이다. 콘셉트(특히 탈네모꼴)는 의도적으로 깨뜨릴 수 있으며, 확정값은 _workspace/glyphs/{콘셉트}/slots.json이 기준이다.
| 유형 | 초성 | 중성 | 종성 |
|---|---|---|---|
| 1 | x 60–460, y 100–840 | x 480–940, y 60–880 (기둥 중심 x≈790) | — |
| 2 | x 160–840, y 60–460 | x 60–940, y 480–880 (보 중심 y≈600) | — |
| 3 | x 60–420, y 60–440 | 보부 x 60–720 y 460–720 + 기둥부 x 740–940 y 60–880 | — |
| 4 | x 60–440, y 80–500 | x 460–940, y 40–560 | x 100–900, y 580–880 |
| 5 | x 180–820, y 60–360 | x 60–940, y 380–540 | x 100–900, y 580–880 |
| 6 | x 60–400, y 60–360 | 보부+기둥부 (유형3 압축) | x 100–860, y 580–880 |
| 단계 | 범위 | 목적 |
|---|---|---|
| 샘플 | 대표 음절 6~30자 | 콘셉트 검증, 피드백 수집 |
| 유형 완전 세트 | 바 소 화 한 글 관 (유형 1~6 각 1자) | 블록 구조 결함 조기 발견 |
| 시안 확장 | 자주 쓰는 음절 ~512자 + 라틴·숫자·부호 | 실사용 문장 조판 |
| 표준 | KS X 1001 2,350자 | 배포 가능 수준 |
| 전체 | 11,172자 (조합 자동 생성) | 완전 커버리지 |
빈도만으로 선정하지 말 것 — 유형 3·6(복합모음)은 빈도가 낮아 뒤로 밀리기 쉽지만 슬롯 구조가 가장 복잡해서 늦게 검증하면 구조 재작업이 커진다. 매 단계에 6개 유형이 모두 포함되어야 한다.
콘셉트가 규칙 기반이면 음절별 수작업 대신 자모 정의 × 조합 엔진으로 전체를 생성한다. 천지인의 구현: _workspace/glyphs/천지인/system/
jamo_cho.json — 초성 19자: 문맥 박스 내 비율 스켈레톤 (모음 4계열 × 받침 유무 = 8문맥 자동 인스턴스화, 굵기 80은 스케일되지 않음)jamo_jung.json — 중성 21자 × {J0, J1} 절대 좌표 (필요 시 choBox로 초성 박스 오버라이드)jamo_jong.json — 종성 27종 절대 좌표 / contexts.json — 문맥 박스·상수python3 _workspace/glyphs/천지인/system/compose.py --text "한글" --out-dir out/ # 지정 음절
python3 _workspace/glyphs/천지인/system/compose.py --ks2350 --out-dir out/ # 전체 11,172자
수정 원칙: 특정 글자가 어색하면 그 글자의 SVG를 고치지 말고 원인 자모의 정의를 고쳐 재생성하라 — 그 자모를 쓰는 모든 글자에 일괄 적용되고, 개별 SVG 수정은 다음 재생성 때 소실된다. 재생성 후에는 반드시 표본(수정 자모 포함 음절 + 극단 조합)을 렌더링해 시각 검증한다.