A Unicode font is a computer font that contains a wide range of characters,
letters, digits, glyphs, symbols, ideograms, logograms, etc., which are
collectively mapped into the standard Universal Character Set, derived from
many different languages and scripts from around the world. Unlike most
conventional computer fonts, which are specific to a particular language or
legacy character set and contain only a small subset of the UCS characters,
these fonts attempt to include many thousands of possible glyphs, so that
they can be used as a single typeface across multilingual documents.
Background The Unicode standard does not specify or
create the font, a collection of graphical shapes called glyphs, itself.
Rather, it defines the abstract characters as a specific number and also
defines the required changes of shape depending on the context the glyph is
used in. The choice of font, which governs how the abstract UCS characters
are converted into a bitmap or vector output that can be viewed on a screen or
printed, is left up to the user. If a font is chosen which does not contain a
glyph for a codepoint used in the document, typically a question mark, a
box, or some other substitute character is displayed.
Computer fonts use various techniques to display characters or glyphs. A bitmap
font contains a grid of dots known as pixels forming an image of each glyph in
each face and size. Outline fonts use drawing instructions or mathematical
formulæ to describe each glyph. Stroke fonts use a series of specified lines
and additional information to define the profile, or size and shape of the line
in a specific face and size, which together describe the appearance of the
glyph. Many fonts have kerning pairs which
implements better spacing in between the characters. Fonts also include embedded
special orthographic rules to output certain combinations of letterforms be
combined into special ligature forms. Operating system and web browser use a
font to display text on the screen or print media and can be programmed to use
those embedded rules. Alternatively they may use external script-shaping
technologies and they can also be programmed to use either a large Unicode
font, or use multiple different fonts for different characters or languages.
No single "Unicode font" includes all the characters defined in the present
revision of ISO 10646 standard, as it is continually adding more & more languages
and characters. As a result, font developers and foundries are also
incorporating those new characters in newer version or revision of a font, and
correcting their previous errors if there were any.
The UCS has over 1.1 million code points, but only the first 65,536 had
entered into common use before 2000. The first Unicode fonts were Lucida Sans
Unicode, Unihan font, and Everson Mono. Issues
There are typographical ambiguities in Unicode, so that some of the unified Han
characters will be typographically different in different regions. For
example, Unicode point U+9AA8 骨 is typographically different between
simplified Chinese and traditional Chinese. This has implications for the
idea that a single typeface can satisfy the needs of all locales. The design of
Unicode ensures that such differences do not create semantic ambiguity, but the
use of incorrect forms is often considered visually awkward or
aesthetically inappropriate to native readers of East Asian languages.
Application of Unicode fonts Despite all the issues, Unicode is now
the standard encoding for many new standards and protocols, and is built
into the architecture of operating systems, programming languages, and
libraries, along with the Pango, Graphite, Scribe, Uniscribe, and ATSUI
rendering engines), font formats and so on. Many other standards are also
getting upgraded to be Unicode-compliant.
Utility software Here is a selection of some of the
utility software which can identify the characters present in a font file:
Character Map, applet included with Microsoft Windows
Font Book, application included with Mac OS X
BabelMap, third-party software for Windows
FontForge, a font editor, third-party software for Linux, Unix, Windows
List of Unicode fonts Of the many Unicode fonts available,
those listed below are the most commonly used worldwide on mainstream computing
platforms. Note
^† OTF+TTO: OpenType font with TrueType outlines.
^‡ OpenType fonts sometimes don't contain a one-by-one kernpair table but
a kern-by-classes table where groups of similar characters are seen as one kern
group. For instance, V and W have nearly the same left and right geometry. So “0”
doesn't mean that no kerning is supported.
^⸶ Register after "reasonable" period. ^⸷ Includes more than 27,000 Hanzi
glyphs from WenQuanYi Bitmap Song font. ^⸸ Han Nom A covers mainly CJK U
Ideographs Ext A, and Han Nom B covers mostly Ext B.
^§ Sun-Ext A covers 102 blocks of different languages. Sun-ExtB covers
mostly CJK Supplement, CJK U Ideographs Ext B, C, TaiXuan Jing.
^⸹ Zen Hei, Zen Hei Mono and Zen Hei Sharp co-exist in a single TTC file;
also with embedded bitmaps. Latin/Hangul derived from UnDotum, Bopomofo derived
from cwTeX, mono-spaced Latin from M+ M2 Light. Full CJK coverage. Included with
Fedora Linux, Ubuntu Linux. Comparison of fonts
Number of characters included by the above version of fonts, for different
Unicode blocks are listed below. Basic Latin means that in the range called
'Basic Latin', there are 128 assigned codes, numbered 0 to 7F. The cells then
show the number of those codes which are covered by each font. Unicode blocks
listed are valid for Unicode version 8.0.
Cells shaded green indicate complete coverage.
Cells shaded blue are not complete, but are the most complete of the fonts
listed. Empty cells indicate that no character
exists in that block. = 0000-077F =
= 0780-139F = = 13A0-1DBF =
= 1DC0-257F = = 2580-2DFF =
= 2E00-4DBF = = 4DC0-FAFF =
= FB00-FFFF = List of SMP Unicode fonts
Of the many Unicode fonts rich with a significant amount of SMP characters,
the few listed below are the most commonly used by a majority of users
around the world on mainstream computing platforms. Please also consult the above
list of fonts, some of which also contain a vast amount of SMP characters.
= 10000–1D7FF = Unicode blocks listed are valid for
Unicode version 8.0. List of SIP Unicode fonts
Of the many Unicode fonts rich with a vast amount of SIP characters, the few
listed below are the most commonly used. Please also consult the list above of
BMP fonts and the supplemental list of SMP fonts, as some of them also contains
SIP plane characters. = 20000-2FFFF =
Unicode blocks listed are valid for Unicode version 8.0.
List of SSP Unicode fonts = E0000-EFFFF =
Unicode blocks listed are valid for Unicode version 8.0.
List of PUA-A Unicode fonts = F0000-FFFFF =
List of PUA-B Unicode fonts = 100000-10FFFF =
See also References
External links ISO/IEC JTC1WG2, the working group in
charge of ISO 10646 Fonts and Keyboards at Unicode.org
Unicode Font Guide For Free/Libre Open Source Operating Systems - A huge index
of high quality free fonts. Alan Wood's Unicode Resources - Unicode
fonts for Windows computers - Index of free and commercial Unicode fonts.
Character sets - Ken Fowles, Microsoft, 1997. - Enable Unicode for applications.
Microsoft Typography - Fonts and Products - Reference for determining
which fonts are supplied with Microsoft products.