Glyph Info»

Character vs. Glyph»

This distinction is critical to understanding FontLab VI and fonts in general.

Character»

The minimal unit of the written language – a part of the alphabet, a symbol, a digit. In font terminology, something is a character if it is encoded: has a number or code assigned to it in some standard so that it is referenced in the same way across fonts. The primary standard for such codes is Unicode, a universal character encoding standard with over 100,000 defined characters so far. These codes are used to store text data on a computer, and also used to reference the glyphs in a font.


All the pictures above represent the character ‘A’

Please note that sometimes characters may look the same, yet represent different characters (example, the Latin A, the Cyrillic A and Greek capital Alpha):

Latin ‘A’
Cyrillic ‘A’
Greek ‘Alpha’

A character that is supported in a font must have some way of being represented by glyphs in the font. In most simple cases, there is one glyph for each supported character.

Glyph»

The basic element of the font, occupying a “slot” in the font. Literally: an image that is represented visually. All glyphs are unique, even if they represent different forms of the same character. Glyphs are used to represent characters. Please note that several different glyphs may represent the same character in the same font. For example, a swash variant of the capital A would be a distinct glyph.

Glyphs are identified in several different ways. Every glyph in a font has a Glyph ID (index), which is the physical numbering of the glyphs in the font (starting at zero, so if there are 27 glyphs in a font, they have Glyph IDs 0–26). Glyphs in most fonts also have glyph names, which are brief ASCII text labels without spaces (for example, the glyph name for “&” is “ampersand”). Additionally, many or all glyphs in a font are encoded, which means that the glyph is the default for a given Unicode codepoint (character) — for example, the default ampersand should have the Unicode codepoint U+0026.

Glyph input in text»

Glyphs are identified in several different ways.

In the text, glyphs are represented by Unicode codepoints of their characters.

In a font, every glyph has a Glyph ID (index), which is the physical numbering of the glyphs in the font (starting at zero, so if there are 27 glyphs in a font, they have Glyph IDs 0–26). Glyphs in most fonts also have glyph names, which are brief ASCII text labels without spaces (for example, the glyph name for “&” is “ampersand”). Additionally, many or all glyphs in a font are encoded, which means that the glyph is the default for a given Unicode codepoint (character) — for example, the default ampersand should have the Unicode codepoint U+0026.

Some glyphs in a font may have no Unicode codepoint but every glyph must have a unique name.

Glyphs that have no Unicode in the font cannot get into the text directly (via keyboard, for example) but they may appear in the text when the app makes OpenType substitutions to replace particular encoded glyphs with their counterparts without Unicode. These OpenType Glyph Substitution Rules are defined in the font and reference glyphs by their names.

Glyphsets»

A Glyphset is the glyph repertoire of a font, i.e. all glyphs present in the font. The old term for this repertoire was “character set”, but it is misleading because in modern font technology, a font is a collection of glyphs, not a collection of characters. Characters are logical text units identified by Unicode codepoints; glyphs are graphical font units. A glyph can be a default typographic representation of a character (if they have a Unicode codepoint assigned), or a variant typographic representation of one or more characters, or a constituent of another glyph, or a combined form of two or more glyphs (then they’re accessed via typographic features or composites).

The glyphset of your font depends on its language support. To check if an existing encoding offers the glyphset you want, select Encoding in the view mode of the Font Window header, and explore encodings from the list. You can choose any encoding from the list on the left and see a preview of its repertoire on the right.

Once you choose an encoding, all the glyphs from the encoding will be displayed in the Font window, whether or not the glyphs are present in your font. If none of the existing encodings include the glyphs you want in your font, you can create your own custom encoding file.