8

In Windows, Character Map doesn't seem to display all of the unicode characters, even if the selected font supports them, and "Character set" selector is "Unicode".

For example, the small envelope U+2709 ✉ is never displayed, even if the character exists both in Segoe UI and in Consolas (at least Visual Studio (Consolas) and a sample web page (Segoe UI) displayed in Google Chrome show both the character correctly).

When typing 2709 in "Go to Unicode", this redirects to U+2776 ❶.

Why some unicode characters are missing from charmap?

2
  • 1
    not sure off hand. are they in babelmap?
    – barlop
    Commented Jan 1, 2012 at 12:09
  • I encountered the same problem, where font has some characters in Latin Extended-A [0100..017F], and they are clearly shown in BabelMap or FontForge, but not in charmap and most Windows programs actually, where I see square (well, rectangle to be precise) like in Wordpad or font substitution is performed like in LibreOffice.
    – przemoc
    Commented Sep 21, 2014 at 21:17

3 Answers 3

4

Are you sure the characters are in the font?

Browsers search other fonts to find missing characters - therefor you cant use browsers to test font contents.

You can't trust applications either - here I am using an Arabic font in Notepad to show Chinese characters that I strongly suspect are not in the Arabic font. It seems to me the application (or the underlying Windows libraries) are searching other fonts to provide the missing character.

screenshot of Notepad showing mixed languages

If you need an independent corroboration, you could try FontForge or another third-party font tool.

4
  • 1
    Browsers - maybe. But not Visual Studio. I also tried, in charmap, some other fonts I have which are known to support well unicode. Lots of characters are still missing. Commented Jan 1, 2012 at 11:48
  • Recent versions of Visual Studio uses Uniscribe, too... I tested with dejavu-fonts.org/wiki/Main_Page DejaVu Sans (free font), and it shows in the charmap on XP. Maybe you can dl that font and test with it too.
    – mihi
    Commented Jan 1, 2012 at 11:59
  • Segoe UI and Consolas do not contain U+2709, so a program that seems to show it in one of those fonts is just using a substitute font—probably Arial Unicode MS or a DejaVu font. Among fonts that people normally have in their computers, probably no other font contains that character, see fileformat.info/info/unicode/char/2709/fontsupport.htm Commented Jan 17, 2012 at 22:34
  • that's expected. No single font contains all possible characters for Unicode, so the renderer has to do font substitution
    – phuclv
    Commented Jul 3, 2018 at 10:20
5

According to Microsoft's Developer Network "Font Technology" page:

Each application and each operating system can define its own fallback font for any Unicode script range. Microsoft makes an effort ensure consistency across its application and products and includes an API (since Windows 8) to provide preferred font fallback recommendations to applications.

And also...

The Noto family of fonts uses the [Font Linking] model to create what appears as a single font by combing script-specific font files... Font linking requires specifying the priority of the fonts in linked together as though in a change. A font later in the chain can only add glyphs to an earlier font; you cannot override or replace glyphs in the early font.

As well as...

Font substitution is implemented by an application to replace a request for a font that is not available into one that is available. In general, applications use PANOSE information (a set of numeric values summarizing the font’s style) to find the most appropriate matching font.

Finally, for plenitude, PostScript Font Type 0:

A composite font is composed of a high-level font that references multiple descendent fonts.


I would go into more detail, but that should give you the jist of why your getting a glyph in the display of your text and not in the display of the font itself. The following links drill down a little further:

How to change / configure font fallback?

Supporting multilanguage text layout and complex scripts with Windows 2000

2

It's there in the Ariel Unicode MS Font. check that wikipedia page No need to download a font for it.

http://en.wikipedia.org/wiki/Unicode_font to see what fonts support what characters.

enter image description here

2
  • 1
    I found it a bit funny, so I searched for "Ariel" Font :]
    – Slai
    Commented Oct 12, 2016 at 18:16
  • Ariel Unicode MS is missing in windows 10 in the character map. There is a discussion here
    – john
    Commented Sep 15, 2020 at 23:43

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .