Font Bakery Logo image/svg+xml Font Bakery Logo Robert Martinez font build service https://github.com/xen/fontbakery
Fontspector Technical Report

If you think a check is flawed or have an idea for a check, please file an issue at https://github.com/fonttools/fontspector/issues and remember to include a pointer to the repo and branch you're checking.

Summary

🔥 FAIL⚠️ WARNℹ️ INFO✅ PASS⏩ SKIP
8 19 7 104 54
4% 10% 4% 57% 29%

Meaning of check results:

If you get ERRORs, please help us improve the tool by reporting them at our issue tracker.

(but other kinds of bug reports and/or feature requests are also always welcome, of course!)

Fontspector version: 1.5.0

Universal Profile Checks

Checking OS/2 usWinAscent & usWinDescent

Check ID: family/win_ascent_and_descent
🔥 variable-ttf
  • 🔥 FAIL

    OS/2.usWinAscent value should be equal or greater than 1191, but got 1069 instead.

    [code: ascent]
  • 🔥 FAIL

    OS/2.usWinDescent value should be equal or greater than 419, but got 293 instead.

    [code: descent]

Check that glyph for U+0675 ARABIC LETTER HIGH HAMZA is not a mark.

Check ID: arabic_high_hamza
🔥 NotoNaskhArabicUI[wght].ttf
  • 🔥 FAIL

    The arabic letter high hamza (U+0675) should have roughly the same size the arabic letter hamza (U+0621), but a different glyph outline area was detected.

    [code: glyph-area]

Check if each glyph has the recommended amount of contours.

Check ID: contour_count
⚠️ NotoNaskhArabicUI[wght].ttf
  • ⚠️ WARN

    This check inspects the glyph outlines and detects the total number of contours in each of them. The expected values are inferred from the typical amounts of contours observed in a large collection of reference font families. The divergences listed below may simply indicate a significantly different design on some of your glyphs. On the other hand, some of these may flag actual bugs in the font such as glyphs mapped to an incorrect codepoint. Please consider reviewing the design and codepoint assignment of these to make sure they are correct.

    The following glyphs do not have the recommended number of contours:
    
    • uni0776.medi (unencoded): found 4, expected one of: {5, 2, 3}
    • uni077B.medi (unencoded): found 4, expected one of: {5, 3, 2}
    • uniFC6A (U+FC6A): found 3, expected one of: {5, 2, 4}
    • uniFC6B (U+FC6B): found 4, expected one of: {6, 5, 3}
    • uniFC6D (U+FC6D): found 4, expected one of: {5, 3, 6}
    • uniFC09 (U+FC09): found 3, expected one of: {5, 2}
    • uniFC0A (U+FC0A): found 5, expected one of: {8, 3, 4}
    • uniFC0F (U+FC0F): found 4, expected one of: {3, 2, 6}
    • uniFC10 (U+FC10): found 6, expected one of: {3, 8, 5}
    • uniFD0E (U+FD0E): found 2, expected one of: {5, 1, 3}
    • uniFCFB (U+FCFB): found 2, expected one of: {1, 4, 5}
    • uniFD17 (U+FD17): found 2, expected one of: {7, 5, 1}
    • uniFD2B (U+FD2B): found 3, expected one of: {2, 4, 6}
    • uniFC3D (U+FC3D): found 2, expected one of: {4, 1}
    • uniFC83 (U+FC83): found 2, expected one of: {1, 5}
    • uniFC3E (U+FC3E): found 4, expected one of: {2, 3, 6}
    • uniFC84 (U+FC84): found 4, expected one of: {2, 7, 3}
    • uniFC42 (U+FC42): found 3, expected one of: {1, 2}
    • uniFCCC (U+FCCC): found 3, expected one of: {1, 2}
    • uniFC43 (U+FC43): found 2, expected one of: {1, 6, 4}
    • uni06B50773 (unencoded): found 3, expected one of: {6, 4}
    • uni06B50774 (unencoded): found 3, expected one of: {4, 6, 5}
    • uni06B60773 (unencoded): found 3, expected one of: {4, 6}
    • uni06B60774 (unencoded): found 3, expected one of: {6, 4, 5}
    • uniFC8A (U+FC8A): found 3, expected one of: {2, 5, 4}
    • uniFC8B (U+FC8B): found 4, expected one of: {3, 6, 5}
    • uniFC8D (U+FC8D): found 4, expected one of: {3, 6, 5}
    • uniFC4F (U+FC4F): found 3, expected one of: {2, 5}
    • uniFC59 (U+FC59): found 4, expected one of: {3}
    • uniFC95 (U+FC95): found 4, expected one of: {3}
    • uniFC5A (U+FC5A): found 6, expected one of: {5}
    • uniFC67 (U+FC67): found 4, expected one of: {5, 3, 7}
    [code: contour-count]

Does GPOS table have kerning information?

Check ID: gpos_kerning_info
⚠️ NotoNaskhArabicUI[wght].ttf
  • ⚠️ WARN

    GPOS table lacks kerning information.

    [code: lacks-kern-info]

Detect any interpolation issues in the font.

Check ID: interpolation_issues
⚠️ NotoNaskhArabicUI[wght].ttf
  • ⚠️ WARN

    Glyph uni08AA has interpolation issues:

    • Contour 0 becomes underweight in wght=700 compared to default
    • Kink in contour 0 at node 24
    [code: glyph]
  • ⚠️ WARN

    Glyph uni06AA has interpolation issues:

    • Kink in contour 0 at node 72
    [code: glyph]
  • ⚠️ WARN

    Glyph uni0665 has interpolation issues:

    • Kink in contour 0 at node 26
    [code: glyph]
  • ⚠️ WARN

    Glyph uni0665.7 has interpolation issues:

    • Kink in contour 0 at node 26
    [code: glyph]
  • ⚠️ WARN

    Glyph uni0602 has interpolation issues:

    • Kink in contour 0 at node 40
    [code: glyph]
  • ⚠️ WARN

    Glyph uni0602.ccmp has interpolation issues:

    • Kink in contour 0 at node 40
    [code: glyph]
  • ⚠️ WARN

    Glyph _990 has interpolation issues:

    • Kink in contour 0 at node 40
    [code: glyph]
  • ⚠️ WARN

    Glyph _991 has interpolation issues:

    • Kink in contour 0 at node 40
    [code: glyph]

Are there caret positions declared for every ligature?

Check ID: ligature_carets
⚠️ NotoNaskhArabicUI[wght].ttf
  • ⚠️ WARN

    This font lacks caret position values for ligature glyphs on its GDEF table.

    [code: lacks-caret-pos]

Ensure variable fonts include an avar table.

Check ID: mandatory_avar_table
⚠️ NotoNaskhArabicUI[wght].ttf
  • ⚠️ WARN

    The font does not include an avar table.

    [code: missing-avar]

Ensure indic fonts have the Indian Rupee Sign glyph.

Check ID: rupee
⚠️ NotoNaskhArabicUI[wght].ttf
  • ⚠️ WARN

    Font is missing the Indian Rupee Sign glyph. Please add a glyph for Indian Rupee Sign (₹) at codepoint U+20B9.

    [code: missing-rupee]

Check font contains no unreachable glyphs

Check ID: unreachable_glyphs
⚠️ NotoNaskhArabicUI[wght].ttf
  • ⚠️ WARN

    The following glyphs could not be reached by codepoint or substitution rules:

    • uniFD3D.rlig
    • uniFC5B.fina
    • uniFC5C.fina
    • uni06A1.medi
    • uni06A1.init
    • uni06B5.isol
    • uni06B6.isol
    • uni06B7.isol
    • uni06BA.medi
    • uni06BA.init
    • uni06BD.medi
    • uni06BD.init
    • uniFEA4_uniFBBD
    • uniFEA4_uniFBB4_uniFBB3
    • uniFEB3_uniFBB6_uniFBB7
    • uniFEC4_uniFBB4
    • uniFDF2.001
    • uniFBB2.001
    • uniFBBE.001
    • uniFBB5.001
    • uniFBB6.001
    • uniFBBB.001
    • uniFBBB.002
    • uniFDFD.01
    • threedotsdowncenterar
    • _uniFBB2.001
    • _vabove
    • _782
    • _874
    • _1518
    • _986
    • _540
    • _539
    • _786
    • _531.001
    • _uniFBB3.001
    • _twodotstah
    • bsm
    • alrhman
    • alrahem
    • uni0644Final.rlig
    • dotamiddlear
    [code: unreachable-glyphs]

Glyph names are all valid?

Check ID: valid_glyphnames
⚠️ NotoNaskhArabicUI[wght].ttf
  • ⚠️ WARN

    Glyph 0x0020 is called uni0020; must be named 'space'.

    [code: not-recommended-0020]

Whitespace glyphs have ink?

Check ID: whitespace_ink
🔥 NotoNaskhArabicUI[wght].ttf
  • 🔥 FAIL

    The following glyphs have ink; they should be replaced by an empty glyph:

    • uni0600
    • uni200D
    • uni0603
    • uni200F
    • uni0604
    • uni06DD
    • uni0602
    • uni0601
    • uni200C
    • uni200E
    [code: has-ink]

Metadata Checks

Check for codepoints not covered by METADATA subsets.

Check ID: googlefonts/metadata/unreachable_subsetting
⚠️ variable-ttf
  • ⚠️ WARN

    fonts/NotoNaskhArabicUI/googlefonts/variable-ttf/NotoNaskhArabicUI[wght].ttf: The following codepoints supported by the font are not covered by any subsets defined in the font's metadata file, and will never be served. You can solve this by either manually adding additional subset declarations to METADATA.pb, or by editing the glyphset definitions.

    • U+0021 EXCLAMATION MARK: try adding one of: cham, khmer, masaram-gondi, math, mongolian, thaana, adlam, latin, gunjala-gondi, syriac
    • U+002C COMMA: try adding one of: khmer, thaana, adlam, masaram-gondi, gunjala-gondi, latin, coptic, math, nushu, cham, wancho
    • U+002E FULL STOP: try adding one of: avestan, coptic, cham, latin, masaram-gondi, syriac, khmer, adlam, gunjala-gondi, math, nushu, thaana, wancho
    • U+0030 DIGIT ZERO: try adding one of: khmer, math, latin, nushu, symbols
    • U+0031 DIGIT ONE: try adding one of: khmer, nushu, latin, symbols, math
    • U+0032 DIGIT TWO: try adding one of: nushu, math, symbols, latin, khmer
    • U+0033 DIGIT THREE: try adding one of: latin, nushu, math, symbols, khmer
    • U+0034 DIGIT FOUR: try adding one of: symbols, math, khmer, latin, nushu
    • U+0035 DIGIT FIVE: try adding one of: symbols, math, latin, khmer, nushu
    • U+0036 DIGIT SIX: try adding one of: khmer, symbols, math, latin, nushu
    • U+0037 DIGIT SEVEN: try adding one of: symbols, nushu, latin, math, khmer
    • U+0038 DIGIT EIGHT: try adding one of: khmer, nushu, symbols, latin, math
    • U+0039 DIGIT NINE: try adding one of: symbols, khmer, latin, math, nushu
    • U+003A COLON: try adding one of: masaram-gondi, cham, coptic, adlam, gunjala-gondi, math, khmer, syriac, latin, thaana, meroitic
    • U+00AB LEFT-POINTING DOUBLE ANGLE QUOTATION MARK: try adding one of: adlam, hanifi-rohingya, syriac, khmer, latin
    • U+00BB RIGHT-POINTING DOUBLE ANGLE QUOTATION MARK: try adding one of: latin, hanifi-rohingya, syriac, adlam, khmer
    • U+200B ZERO WIDTH SPACE: try adding one of: bengali, warang-citi, tifinagh, batak, tai-viet, saurashtra, sundanese, sogdian, gujarati, new-tai-lue, tai-tham, tagalog, limbu, devanagari, syloti-nagri, tai-le, syriac, myanmar, khojki, hanifi-rohingya, gunjala-gondi, meetei-mayek, pahawh-hmong, thai, newa, rejang, kaithi, thaana, kharoshthi, balinese, buginese, mandaic, telugu, kayah-li, duployan, mongolian, anatolian-hieroglyphs, brahmi, buhid, khmer, oriya, psalter-pahlavi, bhaiksuki, zanabazar-square, mahajani, lao, dogra, grantha, cham, chakma, gurmukhi, hebrew, masaram-gondi, lepcha, hanunoo, takri, latin, manichaean, phags-pa, sharada, tibetan, tamil, kannada, modi, tirhuta, malayalam, tagbanwa, siddham, sinhala, javanese
    • U+200F RIGHT-TO-LEFT MARK: try adding one of: thaana, hebrew, phags-pa, syriac, nko
    • U+25CC DOTTED CIRCLE: try adding one of: manichaean, armenian, javanese, syloti-nagri, devanagari, meetei-mayek, kayah-li, soyombo, tai-viet, buhid, coptic, gurmukhi, sundanese, warang-citi, duployan, canadian-aboriginal, mahajani, miao, wancho, balinese, bengali, masaram-gondi, tai-le, sharada, tagalog, chakma, mongolian, dogra, kharoshthi, takri, new-tai-lue, tagbanwa, osage, adlam, mende-kikakui, lao, bhaiksuki, batak, hanifi-rohingya, kannada, math, lepcha, tamil, thai, brahmi, phags-pa, hanunoo, old-permic, elbasan, siddham, tai-tham, yi, caucasian-albanian, saurashtra, zanabazar-square, sogdian, ahom, music, gujarati, cham, myanmar, oriya, pahawh-hmong, sinhala, tifinagh, khudawadi, limbu, khojki, malayalam, hebrew, kaithi, marchen, modi, nko, buginese, gunjala-gondi, newa, grantha, psalter-pahlavi, syriac, mandaic, telugu, thaana, tibetan, tirhuta, bassa-vah, khmer, rejang, symbols
    • U+FEFF ZERO WIDTH NO-BREAK SPACE: try adding latin

    Or you can add the above codepoints to one of the subsets supported by the font: arabic

    [code: unreachable-subsetting]

Glyphset Checks

Shapes languages in all GF glyphsets.

Check ID: googlefonts/glyphsets/shape_languages
⚠️ NotoNaskhArabicUI[wght].ttf
  • ⚠️ WARN

    Warning language shaping:

    Message Languages
    Auxiliary orthography codepoints: * ur_Arab (Urdu)
    Shaper didn't attach uni0654 to uni25CC when shaping the text '◌ٔ' * ur_Arab (Urdu)
    [code: warning-language-shaping]

Font has correct separator glyphs?

Check ID: googlefonts/separator_glyphs
⚠️ NotoNaskhArabicUI[wght].ttf
  • ⚠️ WARN

    The following separator glyphs are missing:

    • U+2028
    • U+2029
    [code: missing-separator-glyphs]

Font File Checks

Check Google Fonts glyph coverage.

Check ID: googlefonts/glyph_coverage
🔥 variable-ttf
  • 🔥 FAIL

    fonts/NotoNaskhArabicUI/googlefonts/variable-ttf/NotoNaskhArabicUI[wght].ttf missing required codepoints:

    • 0x0022: QUOTATION MARK
    • 0x0023: NUMBER SIGN
    • 0x0024: DOLLAR SIGN
    • 0x0025: PERCENT SIGN
    • 0x0026: AMPERSAND
    • 0x0027: APOSTROPHE
    • 0x0028: LEFT PARENTHESIS
    • 0x0029: RIGHT PARENTHESIS
    • 0x002A: ASTERISK
    • 0x002B: PLUS SIGN
    • 0x002D: HYPHEN-MINUS
    • 0x002F: SOLIDUS
    • 0x003B: SEMICOLON
    • 0x003C: LESS-THAN SIGN
    • 0x003D: EQUALS SIGN
    • 0x003E: GREATER-THAN SIGN
    • 0x003F: QUESTION MARK
    • 0x0040: COMMERCIAL AT
    • 0x0041: LATIN CAPITAL LETTER A
    • 0x0042: LATIN CAPITAL LETTER B
    • 0x0043: LATIN CAPITAL LETTER C
    • 0x0044: LATIN CAPITAL LETTER D
    • 0x0045: LATIN CAPITAL LETTER E
    • 0x0046: LATIN CAPITAL LETTER F
    • 0x0047: LATIN CAPITAL LETTER G
    • 0x0048: LATIN CAPITAL LETTER H
    • 0x0049: LATIN CAPITAL LETTER I
    • 0x004A: LATIN CAPITAL LETTER J
    • 0x004B: LATIN CAPITAL LETTER K
    • 0x004C: LATIN CAPITAL LETTER L
    • 0x004D: LATIN CAPITAL LETTER M
    • 0x004E: LATIN CAPITAL LETTER N
    • 0x004F: LATIN CAPITAL LETTER O
    • 0x0050: LATIN CAPITAL LETTER P
    • 0x0051: LATIN CAPITAL LETTER Q
    • 0x0052: LATIN CAPITAL LETTER R
    • 0x0053: LATIN CAPITAL LETTER S
    • 0x0054: LATIN CAPITAL LETTER T
    • 0x0055: LATIN CAPITAL LETTER U
    • 0x0056: LATIN CAPITAL LETTER V
    • 0x0057: LATIN CAPITAL LETTER W
    • 0x0058: LATIN CAPITAL LETTER X
    • 0x0059: LATIN CAPITAL LETTER Y
    • 0x005A: LATIN CAPITAL LETTER Z
    • 0x005B: LEFT SQUARE BRACKET
    • 0x005C: REVERSE SOLIDUS
    • 0x005D: RIGHT SQUARE BRACKET
    • 0x005E: CIRCUMFLEX ACCENT
    • 0x005F: LOW LINE
    • 0x0060: GRAVE ACCENT
    • 0x0061: LATIN SMALL LETTER A
    • 0x0062: LATIN SMALL LETTER B
    • 0x0063: LATIN SMALL LETTER C
    • 0x0064: LATIN SMALL LETTER D
    • 0x0065: LATIN SMALL LETTER E
    • 0x0066: LATIN SMALL LETTER F
    • 0x0067: LATIN SMALL LETTER G
    • 0x0068: LATIN SMALL LETTER H
    • 0x0069: LATIN SMALL LETTER I
    • 0x006A: LATIN SMALL LETTER J
    • 0x006B: LATIN SMALL LETTER K
    • 0x006C: LATIN SMALL LETTER L
    • 0x006D: LATIN SMALL LETTER M
    • 0x006E: LATIN SMALL LETTER N
    • 0x006F: LATIN SMALL LETTER O
    • 0x0070: LATIN SMALL LETTER P
    • 0x0071: LATIN SMALL LETTER Q
    • 0x0072: LATIN SMALL LETTER R
    • 0x0073: LATIN SMALL LETTER S
    • 0x0074: LATIN SMALL LETTER T
    • 0x0075: LATIN SMALL LETTER U
    • 0x0076: LATIN SMALL LETTER V
    • 0x0077: LATIN SMALL LETTER W
    • 0x0078: LATIN SMALL LETTER X
    • 0x0079: LATIN SMALL LETTER Y
    • 0x007A: LATIN SMALL LETTER Z
    • 0x007B: LEFT CURLY BRACKET
    • 0x007C: VERTICAL LINE
    • 0x007D: RIGHT CURLY BRACKET
    • 0x007E: TILDE
    • 0x00A1: INVERTED EXCLAMATION MARK
    • 0x00A2: CENT SIGN
    • 0x00A3: POUND SIGN
    • 0x00A5: YEN SIGN
    • 0x00A7: SECTION SIGN
    • 0x00A8: DIAERESIS
    • 0x00A9: COPYRIGHT SIGN
    • 0x00AA: FEMININE ORDINAL INDICATOR
    • 0x00AE: REGISTERED SIGN
    • 0x00AF: MACRON
    • 0x00B0: DEGREE SIGN
    • 0x00B4: ACUTE ACCENT
    • 0x00B6: PILCROW SIGN
    • 0x00B7: MIDDLE DOT
    • 0x00B8: CEDILLA
    • 0x00BA: MASCULINE ORDINAL INDICATOR
    • 0x00BF: INVERTED QUESTION MARK
    • 0x00C0: LATIN CAPITAL LETTER A WITH GRAVE
    • 0x00C1: LATIN CAPITAL LETTER A WITH ACUTE
    • 0x00C2: LATIN CAPITAL LETTER A WITH CIRCUMFLEX
    • 0x00C3: LATIN CAPITAL LETTER A WITH TILDE
    • 0x00C4: LATIN CAPITAL LETTER A WITH DIAERESIS
    • 0x00C5: LATIN CAPITAL LETTER A WITH RING ABOVE
    • 0x00C6: LATIN CAPITAL LETTER AE
    • 0x00C7: LATIN CAPITAL LETTER C WITH CEDILLA
    • 0x00C8: LATIN CAPITAL LETTER E WITH GRAVE
    • 0x00C9: LATIN CAPITAL LETTER E WITH ACUTE
    • 0x00CA: LATIN CAPITAL LETTER E WITH CIRCUMFLEX
    • 0x00CB: LATIN CAPITAL LETTER E WITH DIAERESIS
    • 0x00CC: LATIN CAPITAL LETTER I WITH GRAVE
    • 0x00CD: LATIN CAPITAL LETTER I WITH ACUTE
    • 0x00CE: LATIN CAPITAL LETTER I WITH CIRCUMFLEX
    • 0x00CF: LATIN CAPITAL LETTER I WITH DIAERESIS
    • 0x00D0: LATIN CAPITAL LETTER ETH
    • 0x00D1: LATIN CAPITAL LETTER N WITH TILDE
    • 0x00D2: LATIN CAPITAL LETTER O WITH GRAVE
    • 0x00D3: LATIN CAPITAL LETTER O WITH ACUTE
    • 0x00D4: LATIN CAPITAL LETTER O WITH CIRCUMFLEX
    • 0x00D5: LATIN CAPITAL LETTER O WITH TILDE
    • 0x00D6: LATIN CAPITAL LETTER O WITH DIAERESIS
    • 0x00D7: MULTIPLICATION SIGN
    • 0x00D8: LATIN CAPITAL LETTER O WITH STROKE
    • 0x00D9: LATIN CAPITAL LETTER U WITH GRAVE
    • 0x00DA: LATIN CAPITAL LETTER U WITH ACUTE
    • 0x00DB: LATIN CAPITAL LETTER U WITH CIRCUMFLEX
    • 0x00DC: LATIN CAPITAL LETTER U WITH DIAERESIS
    • 0x00DD: LATIN CAPITAL LETTER Y WITH ACUTE
    • 0x00DE: LATIN CAPITAL LETTER THORN
    • 0x00DF: LATIN SMALL LETTER SHARP S
    • 0x00E0: LATIN SMALL LETTER A WITH GRAVE
    • 0x00E1: LATIN SMALL LETTER A WITH ACUTE
    • 0x00E2: LATIN SMALL LETTER A WITH CIRCUMFLEX
    • 0x00E3: LATIN SMALL LETTER A WITH TILDE
    • 0x00E4: LATIN SMALL LETTER A WITH DIAERESIS
    • 0x00E5: LATIN SMALL LETTER A WITH RING ABOVE
    • 0x00E6: LATIN SMALL LETTER AE
    • 0x00E7: LATIN SMALL LETTER C WITH CEDILLA
    • 0x00E8: LATIN SMALL LETTER E WITH GRAVE
    • 0x00E9: LATIN SMALL LETTER E WITH ACUTE
    • 0x00EA: LATIN SMALL LETTER E WITH CIRCUMFLEX
    • 0x00EB: LATIN SMALL LETTER E WITH DIAERESIS
    • 0x00EC: LATIN SMALL LETTER I WITH GRAVE
    • 0x00ED: LATIN SMALL LETTER I WITH ACUTE
    • 0x00EE: LATIN SMALL LETTER I WITH CIRCUMFLEX
    • 0x00EF: LATIN SMALL LETTER I WITH DIAERESIS
    • 0x00F0: LATIN SMALL LETTER ETH
    • 0x00F1: LATIN SMALL LETTER N WITH TILDE
    • 0x00F2: LATIN SMALL LETTER O WITH GRAVE
    • 0x00F3: LATIN SMALL LETTER O WITH ACUTE
    • 0x00F4: LATIN SMALL LETTER O WITH CIRCUMFLEX
    • 0x00F5: LATIN SMALL LETTER O WITH TILDE
    • 0x00F6: LATIN SMALL LETTER O WITH DIAERESIS
    • 0x00F7: DIVISION SIGN
    • 0x00F8: LATIN SMALL LETTER O WITH STROKE
    • 0x00F9: LATIN SMALL LETTER U WITH GRAVE
    • 0x00FA: LATIN SMALL LETTER U WITH ACUTE
    • 0x00FB: LATIN SMALL LETTER U WITH CIRCUMFLEX
    • 0x00FC: LATIN SMALL LETTER U WITH DIAERESIS
    • 0x00FD: LATIN SMALL LETTER Y WITH ACUTE
    • 0x00FE: LATIN SMALL LETTER THORN
    • 0x00FF: LATIN SMALL LETTER Y WITH DIAERESIS
    • 0x0100: LATIN CAPITAL LETTER A WITH MACRON
    • 0x0101: LATIN SMALL LETTER A WITH MACRON
    • 0x0102: LATIN CAPITAL LETTER A WITH BREVE
    • 0x0103: LATIN SMALL LETTER A WITH BREVE
    • 0x0104: LATIN CAPITAL LETTER A WITH OGONEK
    • 0x0105: LATIN SMALL LETTER A WITH OGONEK
    • 0x0106: LATIN CAPITAL LETTER C WITH ACUTE
    • 0x0107: LATIN SMALL LETTER C WITH ACUTE
    • 0x010A: LATIN CAPITAL LETTER C WITH DOT ABOVE
    • 0x010B: LATIN SMALL LETTER C WITH DOT ABOVE
    • 0x010C: LATIN CAPITAL LETTER C WITH CARON
    • 0x010D: LATIN SMALL LETTER C WITH CARON
    • 0x010E: LATIN CAPITAL LETTER D WITH CARON
    • 0x010F: LATIN SMALL LETTER D WITH CARON
    • 0x0110: LATIN CAPITAL LETTER D WITH STROKE
    • 0x0111: LATIN SMALL LETTER D WITH STROKE
    • 0x0112: LATIN CAPITAL LETTER E WITH MACRON
    • 0x0113: LATIN SMALL LETTER E WITH MACRON
    • 0x0116: LATIN CAPITAL LETTER E WITH DOT ABOVE
    • 0x0117: LATIN SMALL LETTER E WITH DOT ABOVE
    • 0x0118: LATIN CAPITAL LETTER E WITH OGONEK
    • 0x0119: LATIN SMALL LETTER E WITH OGONEK
    • 0x011A: LATIN CAPITAL LETTER E WITH CARON
    • 0x011B: LATIN SMALL LETTER E WITH CARON
    • 0x011E: LATIN CAPITAL LETTER G WITH BREVE
    • 0x011F: LATIN SMALL LETTER G WITH BREVE
    • 0x0120: LATIN CAPITAL LETTER G WITH DOT ABOVE
    • 0x0121: LATIN SMALL LETTER G WITH DOT ABOVE
    • 0x0122: LATIN CAPITAL LETTER G WITH CEDILLA
    • 0x0123: LATIN SMALL LETTER G WITH CEDILLA
    • 0x0126: LATIN CAPITAL LETTER H WITH STROKE
    • 0x0127: LATIN SMALL LETTER H WITH STROKE
    • 0x012A: LATIN CAPITAL LETTER I WITH MACRON
    • 0x012B: LATIN SMALL LETTER I WITH MACRON
    • 0x012E: LATIN CAPITAL LETTER I WITH OGONEK
    • 0x012F: LATIN SMALL LETTER I WITH OGONEK
    • 0x0130: LATIN CAPITAL LETTER I WITH DOT ABOVE
    • 0x0131: LATIN SMALL LETTER DOTLESS I
    • 0x0136: LATIN CAPITAL LETTER K WITH CEDILLA
    • 0x0137: LATIN SMALL LETTER K WITH CEDILLA
    • 0x0139: LATIN CAPITAL LETTER L WITH ACUTE
    • 0x013A: LATIN SMALL LETTER L WITH ACUTE
    • 0x013B: LATIN CAPITAL LETTER L WITH CEDILLA
    • 0x013C: LATIN SMALL LETTER L WITH CEDILLA
    • 0x013D: LATIN CAPITAL LETTER L WITH CARON
    • 0x013E: LATIN SMALL LETTER L WITH CARON
    • 0x0141: LATIN CAPITAL LETTER L WITH STROKE
    • 0x0142: LATIN SMALL LETTER L WITH STROKE
    • 0x0143: LATIN CAPITAL LETTER N WITH ACUTE
    • 0x0144: LATIN SMALL LETTER N WITH ACUTE
    • 0x0145: LATIN CAPITAL LETTER N WITH CEDILLA
    • 0x0146: LATIN SMALL LETTER N WITH CEDILLA
    • 0x0147: LATIN CAPITAL LETTER N WITH CARON
    • 0x0148: LATIN SMALL LETTER N WITH CARON
    • 0x0150: LATIN CAPITAL LETTER O WITH DOUBLE ACUTE
    • 0x0151: LATIN SMALL LETTER O WITH DOUBLE ACUTE
    • 0x0152: LATIN CAPITAL LIGATURE OE
    • 0x0153: LATIN SMALL LIGATURE OE
    • 0x0154: LATIN CAPITAL LETTER R WITH ACUTE
    • 0x0155: LATIN SMALL LETTER R WITH ACUTE
    • 0x0158: LATIN CAPITAL LETTER R WITH CARON
    • 0x0159: LATIN SMALL LETTER R WITH CARON
    • 0x015A: LATIN CAPITAL LETTER S WITH ACUTE
    • 0x015B: LATIN SMALL LETTER S WITH ACUTE
    • 0x015E: LATIN CAPITAL LETTER S WITH CEDILLA
    • 0x015F: LATIN SMALL LETTER S WITH CEDILLA
    • 0x0160: LATIN CAPITAL LETTER S WITH CARON
    • 0x0161: LATIN SMALL LETTER S WITH CARON
    • 0x0164: LATIN CAPITAL LETTER T WITH CARON
    • 0x0165: LATIN SMALL LETTER T WITH CARON
    • 0x016A: LATIN CAPITAL LETTER U WITH MACRON
    • 0x016B: LATIN SMALL LETTER U WITH MACRON
    • 0x016E: LATIN CAPITAL LETTER U WITH RING ABOVE
    • 0x016F: LATIN SMALL LETTER U WITH RING ABOVE
    • 0x0170: LATIN CAPITAL LETTER U WITH DOUBLE ACUTE
    • 0x0171: LATIN SMALL LETTER U WITH DOUBLE ACUTE
    • 0x0172: LATIN CAPITAL LETTER U WITH OGONEK
    • 0x0173: LATIN SMALL LETTER U WITH OGONEK
    • 0x0174: LATIN CAPITAL LETTER W WITH CIRCUMFLEX
    • 0x0175: LATIN SMALL LETTER W WITH CIRCUMFLEX
    • 0x0176: LATIN CAPITAL LETTER Y WITH CIRCUMFLEX
    • 0x0177: LATIN SMALL LETTER Y WITH CIRCUMFLEX
    • 0x0178: LATIN CAPITAL LETTER Y WITH DIAERESIS
    • 0x0179: LATIN CAPITAL LETTER Z WITH ACUTE
    • 0x017A: LATIN SMALL LETTER Z WITH ACUTE
    • 0x017B: LATIN CAPITAL LETTER Z WITH DOT ABOVE
    • 0x017C: LATIN SMALL LETTER Z WITH DOT ABOVE
    • 0x017D: LATIN CAPITAL LETTER Z WITH CARON
    • 0x017E: LATIN SMALL LETTER Z WITH CARON
    • 0x0218: LATIN CAPITAL LETTER S WITH COMMA BELOW
    • 0x0219: LATIN SMALL LETTER S WITH COMMA BELOW
    • 0x021A: LATIN CAPITAL LETTER T WITH COMMA BELOW
    • 0x021B: LATIN SMALL LETTER T WITH COMMA BELOW
    • 0x0237: LATIN SMALL LETTER DOTLESS J
    • 0x02C6: MODIFIER LETTER CIRCUMFLEX ACCENT
    • 0x02C7: CARON
    • 0x02D8: BREVE
    • 0x02D9: DOT ABOVE
    • 0x02DA: RING ABOVE
    • 0x02DB: OGONEK
    • 0x02DC: SMALL TILDE
    • 0x02DD: DOUBLE ACUTE ACCENT
    • 0x0300: COMBINING GRAVE ACCENT
    • 0x0301: COMBINING ACUTE ACCENT
    • 0x0302: COMBINING CIRCUMFLEX ACCENT
    • 0x0303: COMBINING TILDE
    • 0x0304: COMBINING MACRON
    • 0x0306: COMBINING BREVE
    • 0x0307: COMBINING DOT ABOVE
    • 0x0308: COMBINING DIAERESIS
    • 0x030A: COMBINING RING ABOVE
    • 0x030B: COMBINING DOUBLE ACUTE ACCENT
    • 0x030C: COMBINING CARON
    • 0x0326: COMBINING COMMA BELOW
    • 0x0327: COMBINING CEDILLA
    • 0x0328: COMBINING OGONEK
    • 0x1E80: LATIN CAPITAL LETTER W WITH GRAVE
    • 0x1E81: LATIN SMALL LETTER W WITH GRAVE
    • 0x1E82: LATIN CAPITAL LETTER W WITH ACUTE
    • 0x1E83: LATIN SMALL LETTER W WITH ACUTE
    • 0x1E84: LATIN CAPITAL LETTER W WITH DIAERESIS
    • 0x1E85: LATIN SMALL LETTER W WITH DIAERESIS
    • 0x1E9E: LATIN CAPITAL LETTER SHARP S
    • 0x1EF2: LATIN CAPITAL LETTER Y WITH GRAVE
    • 0x1EF3: LATIN SMALL LETTER Y WITH GRAVE
    • 0x2013: EN DASH
    • 0x2014: EM DASH
    • 0x2018: LEFT SINGLE QUOTATION MARK
    • 0x2019: RIGHT SINGLE QUOTATION MARK
    • 0x201A: SINGLE LOW-9 QUOTATION MARK
    • 0x201C: LEFT DOUBLE QUOTATION MARK
    • 0x201D: RIGHT DOUBLE QUOTATION MARK
    • 0x201E: DOUBLE LOW-9 QUOTATION MARK
    • 0x2022: BULLET
    • 0x2026: HORIZONTAL ELLIPSIS
    • 0x2039: SINGLE LEFT-POINTING ANGLE QUOTATION MARK
    • 0x203A: SINGLE RIGHT-POINTING ANGLE QUOTATION MARK
    • 0x20AC: EURO SIGN
    • 0x2122: TRADE MARK SIGN
    • 0x2212: MINUS SIGN
    [code: missing-codepoints]

Ensure fonts have ScriptLangTags declared on the 'meta' table.

Check ID: googlefonts/meta/script_lang_tags
⚠️ NotoNaskhArabicUI[wght].ttf
  • ⚠️ WARN

    This font file does not have a 'meta' table.

    [code: lacks-meta-table]

Ensure font can render its own name.

Check ID: googlefonts/render_own_name
🔥 NotoNaskhArabicUI[wght].ttf
  • 🔥 FAIL

    .notdef glyphs were found when attempting to render Noto Naskh Arabic UI

    [code: render-own-name]

Name table checks

Check family name for GF Guide compliance.

Check ID: googlefonts/name/family_name_compliance
🔥 NotoNaskhArabicUI[wght].ttf
  • 🔥 FAIL

    "Noto Naskh Arabic UI" contains an abbreviation.

    [code: abbreviation]

Shaping Checks

Ensure dotted circle glyph is present and can attach marks.

Check ID: dotted_circle
🔥 NotoNaskhArabicUI[wght].ttf
  • 🔥 FAIL

    The following glyphs could not be attached to the dotted circle glyph:

    • uni0654
    • uni065B
    [code: unattached-dotted-circle-marks]