Glossary Page

ASCII

A 7-bit standard extended (and mostly replaced) by unicode.

It’s still worth learning about today, especially for Fontknife users. In addition to sharing code points with unicode, ASCII is often used in all of the following:

  • Pixel fonts

  • File formats

  • Retro & fantasy consoles

If you don’t already have a good understanding of ASCII, that’s okay. Keep the following around will help you develop one:

  • Python’s ord() and chr() functions

  • An ASCII reference table

See the following to learn more:

bitmap
raster

Bitmap or raster data specifies values for pixels.

This includes many types of file formats:

  • Most image files, such as PNG

  • Older font formats, including BDF

BDF
Glyph Bitmap Distribution Format

The Glyph Bitmap Distribution Format (BDF for short) is a raster font format.

For multiple reasons, many excellent pixel fonts use this format:

  • Adobe developed both the format and tools for working with it

  • The X Window System declared BDF an officially supported format in 1988

  • It’s text-based, so it’s readable to humans as well as computers

See the following to learn more:

character

This has multiple meanings depending on the context.

code point

An identifier that a standard has agreed to mean a certain thing.

In digital fonts, this is usually a positive integer assigned to mean a specific character.

For example, the ASCII standard agrees on 65 to mean a capital "A" character. Since Unicode extends ASCII, it shares many code point values.

See the following to learn more:

dingbat

In digital fonts, dingbats tend to refer to any glyph other than the standard characters for written languages. If a font offers dingbats instead of the expected glyphs for a character, it is called a dingbat font.

See the following to learn more:

dingbat font

A digital font which provides dingbats instead of expected glyphs for characters.

See Fontknife’s Usage Guide Page on Dingbat Fonts

glyph

A specific graphical shape used represent a character.

In unicode, it mostly doesn’t matter what kind of character it is. Pretty much everything uses glyphs to represent their characters:

  • Western letter-based writing systems

  • Eastern systems such as Chinese Hanzi

  • Numerals

  • Punctuation

  • Emoji

PCF

Old X format.

OpenType
OpenType Font
OTF

A vector font format which is a variant of TTF.

The file extensions for these fonts can be .otf or .ttf.

tofu

A placeholder box displayed when a character can’t be rendered.

This usually appears when:

  • A font lacks a glyph for a character

  • Software cannot recognize a character for some reason

TTF
TrueType

TrueType fonts (TTF for short or .ttf as a file extension) are a vector font format.

These fonts are very complex compared to bitmap font formats such as BDF. TTF font features include:

  • Alternate glyph and ligatures

  • Conditional & iteration logic to help render them smoothly

  • In more recent fonts, there are multiple different

unicode

A standard which covers most writing systems & more.

Although code point values 0 through 128 are identical to ASCII’s, the standard also covers things other than writing systems for spoken languages. This includes emoji, math, music, and various other symbols.

As a general rule, any symbol that’s very popular or useful has a good chance of being added to the unicode standard.

Important

Fonts, software, and devices can lack support for the latest unicode features!

To learn more, please see unicode code point

unicode code point

A code point in the Unicode standard.

Since these are added in new revision of the standard, anything made before a revision will lack support for its features unless updated to do so. This includes:

  • Fonts

  • Software, including Python 3’s standard library

  • Devices

Python’s partial support for unicode mostly extends to emoji. Fontknife tries to make up for this, but not even the powerful regex replacement for the built-in re module is fully up to date on all emoji combinations!

To learn more, please see:

vector

In digital fonts and graphics formats, vector formats specify shapes to draw with math instead of bitmap pixels.

Many recent font formats are vector-based because it makes scaling eais, these are awful for pixel fonts.