5

How can I find out what Unicode ranges a webfont file (may be WOFF2, WOFF, TTF or EOT) covers?

For example I am analysing a latin font, is it possible to know what are the Unicode ranges of latin covered by it? Is there any tool available to analyze it?

3
  • 1
    Just a sidenote: With the latin blocks, it’s much more important which characters are covered than which characters aren’t. Except for Basic Latin, each of the Latin ranges contains at least one character that is deprecated or only for very exceptional uses (e.g., ¦ʼnDZⱶꝚẜ). E.g., there is no reason for a font to fully cover Latin-1 Supplement, except for its own sake.
    – Wrzlprmft
    Oct 19 '15 at 10:58
  • @Wrzlprmft my question here is , any given webfont, is there a way to see the unicode ranges it covered? Oct 19 '15 at 13:11
  • 1
    I understand that. I am just doubting that this is really what you want.
    – Wrzlprmft
    Oct 19 '15 at 13:14
3

You could install FontForge - it's a free and open source font editor and will show you what glyphs the font has - it has various ways of laying out the code points in order.

FontForge font information screenshot

Note that coverage isn't as easy as looking at which blocks are fully covered. For example, it's very common for a font to contain basically all of Latin-1 plus a small handful of characters from Latin-Extended-A/B in order to fully support languages like French, Hungarian, Catalan etc, see this table. You do NOT need most of Latin-Extended-A/B to cover most European languages, but you DO need more than what's in Latin-1 for many.

3
  • Unfortunately this simply displays ranges in which at least one glyph exists. For example, for a font file with just "A" in, FontForge will display Basic Latin U+0020-U+007E 1/95.
    – cherouvim
    Aug 16 '20 at 6:06
  • The two numbers at the end show this though. 1/95 means it contains 1 out of 95 characters in that range. Aug 16 '20 at 13:20
  • @thumasrutter: Yes but it doesn't help me. It just says that the 20-7E range (95 possible glyphs) has only got 1 in there.
    – cherouvim
    Aug 16 '20 at 18:13
0

There's a neat feature now in FontForge (see @thomasrutter's answer) that lets you visually see all the glyphs in a given range, which helps when determining which unicode ranges that your font supports.

After opening the font with FontForge, click Element > Font Info... > Unicode Ranges. This will give you an overview of how many glyphs exist in a given range. For example, for me it says

Basic Latin  U+0020-U+007E 95/95
...
General Punctuation  U+2000-U+206F 85/111
...

meaning that I have all of the glyphs in Basic Latin (95/95) but only 85 out of the 111 glyphs in General Punctuation.

Now, to see which 85 glyphs, click the "General Punctuation" entry in the list. This should make your other window jump to and highlight them as seen in the image below.

FontForge jumping to a given unicode range when it's clicked

With this, it's easy to click the individual glyphs and figure out what ranges your font supports. In my case, it's U+2000-200B, U+2010-2027, and U+202F-205F in General Punctuation.

You would then have to do this for each of the ranges in the list.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.