Last Resort Font

The Last Resort font is a collection of glyphs to represent types of Unicode characters. These glyphs are designed to allow users to recognize that an encoded value is one of the following:

  • a specific type of Unicode character
  • in the Private Use Area (no private agreement exists)
  • unassigned (reserved for future assignment)
  • one of the illegal character codes.

These glyphs are used as the backup of "last resort" to any other font; if the font cannot represent any particular Unicode character, the appropriate "missing" glyph from the Last Resort font is used instead. This provides users with the ability to tell what sort of character it is, and gives them a clue as to what type of font they would need to display the characters correctly. (For more information, see The Unicode Standard, Version 3.0, Section 5.3 Unknown and Missing Characters, pages 108-109.)

Overall, there are a number of advantages to using a Last Resort font for unrepresentable characters.

  1. Operating systems are freed from the overhead of providing a full Unicode font.
  2. Users see something more meaningful than a black box for unrepresentable characters.
  3. Users familiar with the scripts being represented with the Last Resort font will readily identify what needs to be installed to represent the text.
  4. Users unfamiliar with the missing scripts are shown easily-identified symbols rather than lengthy strings of unidentifiable characters.

Unicode blocks are illustrated by a representative glyph from the block, chosen to be as distinct as possible from glyphs of other blocks.

A square surrounding frame provides a common, recognizable element and embedded within the edge of this frame, only visible at large size are a form of the block name and its character range to help identification.

Examplar glyphs were chosen in a number of ways. Almost all of the Brahmic scripts show the initial consonant ka. Latin uses the letter A because it's the first letter, and because in each Latin block there is a letter A so they can be easily differentiated. Greek and Cyrillic use their last letters, omega and ya, because they are so distinctive. Most other alphabets and syllabaries use their initial letter where distinctive.

For a closer look at the glyphs, examine the two PDF files below. They contain the current Last Resort font glyphs as pure outlines which can be examined and printed using OSX Preview, Adobe Acrobat Reader or Adobe Illustrator.View either the reduced scale 5-page PDF or the one glyph per page 236-page PDF. The multi-script researcher and Unicode contributor Michael Everson of Dublin drew all these glyphs for Apple.

The specific glyphs and their corresponding source Unicode code points used here represent only recommendations. Font vendors who produce versions of the Last Resort font are free to make substitutions.

It is, however, strongly recommended that the same PostScript names be used wherever possible. As a glyph collection (rather than a character set), the key feature of the symbols in the Last Resort font is their identity as glyphs. The PostScript name is intended to be a token to indicate this identity.

It is also strongly recommended that this information be made available on the Web indicating the exact glyphs used for shipping Last Resort fonts. This makes it easier for end users to identify the characters used.

For example, Apple's full Last Resort glyph table shows the block name and range; the exemplar glyph codepoint and its postscript name, as well as the actual glyph used in Mac OS 8.5, Mac OS 9.0 and Mac OSX. This table also shows the glyphs for the new and as yet undefined code blocks which are in the pipeline for future versions of Unicode.

Structural variations of the Last Resort font are also possible. For example, a font may include a full set of ASCII characters as well as key Unicode punctuation or control characters. Such a font could include a single glyph for all characters which may (or may not) be displayed through the control of a "Show Invisibles" command. Other implementations could include a full suite of glyphs for such characters. Another possibility would be to collapse some blocks together to use a single glyph for katakana and hiragana, for example. The Last Resort font as exemplified here is not intended to preclude such variations.

Finally it is worth pointing out the value of establishing an agreed exemplar glyph for each block. This benefits users as they can more readily learn to recognize them. Conversely, choosing different glyphs for no functional reason is likely to be counter-productive as it will make block glyph recognition more confusing.

There are two special glyphs from the The Unicode Standard, Version 2.0. One of the glyphs represents any unassigned character from any block. The other glyph represents the illegal character code values (U+FDD0..U+FDEF, U+FFFE, U+FFFF, U+1FFFE, U+1FFFF, U+2FFFE, U+2FFFF, U+EFFFE, U+EFFFF).

Note that the Last Resort font includes glyphs for scripts proposed for future encoding in Unicode and ISO/IEC 10646. There is no guarantee that all of these scripts will ever be encoded in future versions of the standard; the script names are taken from the UTC/WG2 Roadmap dated 2001-06-14. A number of glyphs are currently under ballot; the ranges for these are marked in red in Apple's full Last Resort glyph table.

The Last Resort font has been used in the Mac OS 8.5 onwards by Apple Type Services for Unicode™ Imaging (ATSUI). ATSUI includes a "font fallback" mechanism to minimize instances where text cannot be drawn using the fonts assigned it.

Good ways to see the Last Resort font in action are to either use the Unicode Hex keyboard in OSX to type individual codepoint values or to download the free 3rd party utility UnicodeChecker for OSX, which gives an enlarged display of glyphs for every plane and codepoint of Unicode 3.2