Typography Home Typography Home

Developing fonts > Specifications

Developing OpenType Fonts
for Korean Hangul Script (1 of 3):
Introduction

Microsoft Typography
April 2003

This document presents information that will help font developers create or support OpenType fonts for the Korean Hangul script covered by the Unicode Standard.

This is a multi-page specification. To access specific pages, use the Contents section below, or the navigation bar at the bottom of each page.

Introduction

The Korean Hangul script is a 'syllabic' script. The syllables are formed by combining sequences of elemental, alphabetic consonants and vowels. The process of composing syllables is additive in nature and follows a set of predefined rules. The glyph elements of each composed syllable are shaped and positioned into a square display cell, often referred to as a 'syllable block', or 'syllable glyph'.

The Unicode Standard provides encodings for pre-composed Hangul syllables known as 'Modern Hangul', as well as encodings for individual Hangul alphabetic elements, called 'Jamo' and known as 'Old Hangul'. 'Modern Hangul' has 11,172 pre-composed characters in the Unicode range U+AC00 through U+D7AF. 'Old Hangul' syllables can be composed from the individual Hangul Jamos encoded in the Unicode Hangul Jamo block (U+1100 through U+11FF). More specifically, only certain sequences of these Jamo characters can combine to form Old Hangul syllables. These sequences are defined in Appendix B. Only sequences defined in Appendix B will result in formation of Old Hangul syllables. Sequences of character codes from the Hangul Jamo Block that do not match any sequence pattern in Appendix B, will be considered as a sequence of individual non-Old Hangul characters.

Hangul shaping

In this specification, font developers will learn how to address Old Hangul syllable formation, encode complex script features in their fonts, choose character sets, organize font information, and use existing tools to produce Old Hangul fonts. Registered features of the Korean Hangul script are defined and illustrated, encodings are listed, and templates are included for compiling Korean Hangul layout tables for OpenType fonts.

This document also presents information about the Korean OpenType shaping engine of Uniscribe, the Windows component responsible for text layout.

In addition to being a primer and specification for the creation and support of Hangul fonts, this document is intended to more broadly illustrate the OpenType Layout architecture, feature schemes, and operating system support for shaping and positioning text.

Glossary

The following terms are useful for understanding the layout features and script rules discussed in this document.

Jamo - Individual Hangul alphabetic elements or atomic unit in a syllable. Consonants and vowels are both known as Jamos.

Consonant- Represents a single consonant sound. Consonants are further divided into leading consonants and trailing consonants.

  • Leading consonant (Leading Jamo) "Choseong" - the syllable initial character
  • Trailing Consonant (Trailing Jamo) "Jongseong" - the syllable final character

Vowel (Vowel Jamo) "Jungeong" - A phoneme; an independent unit in a syllable. It does not combine with any consonant to result in the transformation of any consonant-vowel combination.

Notation

The following notation is used in this document to illustrate layout operations:

L – Leading consonant

V – Vowel

T – Trailing consonant

S – Syllable

X – Non-Jamo character

{ } – Indicates 0, 1 or multiple occurrence

[ ] – Indicates 0 or 1 occurrence

() – Indicates 1 or multiple occurrence

Next section:  Shaping Engine

introduction | shaping engine | features | appendices


Top of page