A fallbackfont is a reserve typeface containing symbols for as many Unicodecharacters as possible.[1] When a display system encounters a character that is not part of the repertoire of any of the other available fonts, a symbol from a fallback font is used instead. Typically, a fallback font will contain symbols representative of the various types of Unicode characters.
Systems that do not offer a fallback font typically display black or white rectangles, question marks, the Unicode Replacement Character (U+FFFD), or nothing at all, in place of missing characters. Placing one or more fallback fonts at the end of a list of preferred fonts ensures that there are no missing characters.
Unicode BMP Fallback font
0 0 2 0
The Unicode BMP Fallback font is a Unicode font that was originally created for debugging purposes. It contains a glyph for every character in the Unicode Basic Multilingual Plane. Each glyph consists of a box containing the four hexadecimal digits corresponding to the Unicode value.[2]
The example to the left is a mock-up of the glyph for a space character (U+0020).
Unlike the Unicode Last Resort font, the Unicode BMP Fallback font displays a different glyph for each different Unicode character, but cannot display all Unicode characters. Because four hexadecimal digits can only represent 64K characters (0000=0, FFFF=65,535) the Unicode BMP Fallback is limited to the 64K characters in the Unicode Basic Multilingual Plane.
Unicode Last Resort font
As of Unicode version 5.0, the Unicode consortium provides a fallback font to represent types of Unicode characters.
This is a version of the macOS Last Resort system font, modified to work on non-Apple platforms and made available by Apple via the Unicode Consortium.[3]
The symbols provided by the Unicode Last Resort font place glyphs into categories based on their location in the Unicode system and provide a hint to the user about which font or script is required to view the unavailable characters. The symbols provided by the Unicode Last Resort font are square with rounded corners with a bold outline. In the left and right sides of the outline, the Unicode range that the character belongs to is given using hexadecimal digits. Top and bottom are used for one or two descriptions of the Unicode block. A symbol
representative of the block is centered inside the square.[4]
Unlike the Unicode BMP Fallback font or the GNU Unifont, the Unicode Last Resort font displays the same glyph for many different Unicode characters. Using this one-glyph-per-block generalization allows the Unicode Last Resort font to contain a glyph for every character in Unicode despite the fact that the total number of Unicode characters exceeds the address space of an sfnt (TrueType and OpenType) font structure, which has a 16-bit glyph index that can store a maximum of 65,536 glyphs. Unicode now has over 100,000 defined characters, with a potential address space of over one million characters—over 15 times the sfnt size limit. Unicode Last Resort Font will therefore not break as Unicode continues to grow and the Basic Multilingual Plane (BMP) and surrogate planes fill up further.
Apple's Last Resort font
Apple's Last Resort font is a system font for the Macintosh operating systems that is identical to the Unicode Last Resort font (which was created for the Unicode consortium by Apple).[3]
Apple's Last Resort font was first included in Mac OS 8.5 in 1998, for the benefit of applications using Apple Type Services for Unicode Imaging (ATSUI). It is also used in macOS. In 2001, for Mac OS X 10.1 the Last Resort font design was revised to include the border text and was re-digitized, and extended by Michael Everson of Evertype, who continues to update it with each new release of Unicode.
The family includes Last Resort, Last Resort High-Efficiency. Last Resort High-Efficiency uses Format 13 (Many-to-one range mappings) 'cmap' (character to glyph index mapping) table, which reduces the size of the font, but may not be compatible with some environments.
13.000 (2020-10-08): Supports Unicode Version 13.0.0. Only Format 13 cmap table is included.
13.001 (2020-10-22): Added Last Resort High-Efficiency. Both fonts include Format 4 cmap table, with Last Resort includes Format 12 cmap table and LRHE includes Format 13 cmap table.
14.000 (2021-12-01): Supports Unicode Version 14.0.0. Added 12 glyphs for 12 new blocks. Modified 2 glyphs in 2 existing blocks (Ahom, Tangut Supplement).
15.000 (2022-09-13): Supports Unicode Version 15.0.0. 'meta' table was removed. Added 7 glyphs for 7 new blocks. Modified 6 glyphs in 6 existing blocks (Egyptian Hieroglyph Format Controls, Number Forms, Mathematicl Operators Supplement, Variation Selectors, CJK Unified Ideographs Extension F, Variation Selectors Supplement).
15.100 (2023-09-11): Supports Unicode Version 15.1.0. Added one new glyph that corresponds to the newly added CJK Unified Ideographs Extension I block; 627 mappings that correspond to the 627 new characters in Unicode Version 15.1 were changed.
The GNU Unifont is a font that contains a glyph for every character in the Unicode Basic multilingual plane.[7] Unlike with the Unicode BMP Fallback font or the Unicode Last Resort Font, the characters in GNU Unifont are low resolution bitmap approximations of each glyph, which results in character renderings which are of low quality but adequate to be a distinguishable graphical representation of a given code point.
The goal of the GNU Unifont project is to "lower our expectations about the font quality to a reasonable degree" in order to obtain complete coverage of all Unicode characters.[8] To achieve this goal, all glyphs are 16 pixels in height and either 8 or 16 pixels in width.
A TrueType version of the GNU Unifont is available for free.[9]