Font Bakery Logo image/svg+xml Font Bakery Logo Robert Martinez font build service https://github.com/xen/fontbakery
Fontbakery 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/fontbakery/issues and remember to include a pointer to the repo and branch you're checking.

Summary

💥 ERROR ☠ FATAL 🔥 FAIL ⚠️ WARN ⏩ SKIP ℹ️ INFO ✅ PASS
0 0 13 13 112 6 94
0% 0% 5% 5% 47% 3% 39%

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!)

FontBakery version: 0.13.0

OpenType Specification Checks

⚠️⚠️⏩⏩⏩⏩⏩⏩⏩⏩⏩⏩⏩⏩⏩⏩⏩⏩⏩

Check GDEF mark glyph class doesn't have characters that are not marks.

Check ID: <FontBakeryCheck:opentype/gdef_non_mark_chars>
⚠️ Galle-Regular.ttf
  • ⚠️ WARN

    The following non-mark characters should not be in the GDEF mark glyph class: U+0D82, U+0D83, U+0DCF, U+0DD0, U+0DD1, U+0DD8, U+0DD9, U+0DDA, U+0DDB, U+0DDC, U+0DDD, U+0DDE, U+0DDF, U+0DF2 and U+0DF3

    [code: non-mark-chars]

Check glyphs in mark glyph class are non-spacing.

Check ID: <FontBakeryCheck:opentype/gdef_spacing_marks>
⚠️ Galle-Regular.ttf
  • ⚠️ WARN

    The following glyphs seem to be spacing (because they have width > 0 on the hmtx table) so they may be in the GDEF mark glyph class by mistake, or they should have zero width instead: anusvara (U+0D82), sinMatraAa (U+0DCF), sinMatraAae (U+0DD1), sinMatraAe (U+0DD0), sinMatraAi (U+0DDB), sinMatraAu (U+0DDE), sinMatraE (U+0DD9), sinMatraEe (U+0DDA), sinMatraI (U+0DD2), sinMatraIi (U+0DD3), sinMatraLl (U+0DF3), sinMatraLs (U+0DDF), sinMatraO (U+0DDC), sinMatraOo (U+0DDD), sinMatraR (U+0DD8), sinMatraRr (U+0DF2), sinMatraU (U+0DD4), sinMatraUu (U+0DD6), sinVirama (U+0DCA) and visarga (U+0D83)

    [code: spacing-mark-glyphs]

Universal Profile Checks

🔥🔥🔥🔥🔥⚠️⚠️⚠️⚠️⚠️⏩⏩⏩⏩⏩⏩⏩⏩⏩⏩⏩⏩⏩⏩⏩⏩⏩⏩⏩⏩⏩⏩ℹ️ℹ️

Checking OS/2 usWinAscent & usWinDescent.

Check ID: <FontBakeryCheck:family/win_ascent_and_descent>
🔥 Galle-Regular.ttf
  • 🔥 FAIL

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

    [code: descent]

Does GPOS table have kerning information? This check skips monospaced fonts as defined by post.isFixedPitch value

Check ID: <FontBakeryCheck:gpos_kerning_info>
⚠️ Galle-Regular.ttf
  • ⚠️ WARN

    GPOS table lacks kerning information.

    [code: lacks-kern-info]

Checking Vertical Metric Linegaps.

Check ID: <FontBakeryCheck:linegaps>
🔥 Galle-Regular.ttf
  • 🔥 FAIL

    OS/2 sTypoLineGap is not equal to 0.

    Overridden: This check was originally a WARN but was overridden by the universal profile: For Google Fonts, all messages from this check are considered FAILs.

    [code: OS/2]

Check math signs have the same width.

Check ID: <FontBakeryCheck:math_signs_width>
⚠️ Galle-Regular.ttf
  • ⚠️ WARN

    The most common width is 244 among a set of 2 math glyphs. The following math glyphs have a different width, though:

    Width = 285: less, greater

    [code: width-outliers]

Name table records must not have trailing spaces.

Check ID: <FontBakeryCheck:name/trailing_spaces>
🔥 Galle-Regular.ttf
  • 🔥 FAIL

    Name table record with key = (3, 1, 1033, 0) has trailing spaces that must be removed: 'Copyright [...]mail.com) '

    [code: trailing-space]

Checking OS/2 Metrics match hhea Metrics.

Check ID: <FontBakeryCheck:os2_metrics_match_hhea>
🔥 Galle-Regular.ttf
  • 🔥 FAIL

    OS/2 sTypoAscender (553) and hhea ascent (1016) must be equal.

    [code: ascender]

Check there are no overlapping path segments

Check ID: <FontBakeryCheck:overlapping_path_segments>
⚠️ Galle-Regular.ttf
  • ⚠️ WARN

    The following glyphs have overlapping path segments:

    * ArchaicEight (U+111E8): L<<199.0,-114.0>--<199.0,-114.0>> has the same coordinates as a previous segment.
    
    * ArchaicSixty (U+111EF): B<<489.5,18.0>-<489.0,19.0>-<490.0,16.0>> has the same coordinates as a previous segment.
    
    * sinGRI: L<<371.0,298.0>--<371.0,298.0>> has the same coordinates as a previous segment.
    
    * sinRAae: B<<189.5,597.0>-<190.0,597.0>-<188.0,596.0>> has the same coordinates as a previous segment.
    
    * sinNndda.reph: L<<238.0,512.0>--<238.0,512.0>> has the same coordinates as a previous segment.
    
    [code: overlapping-path-segments]

Ensure Stylistic Sets have description.

Check ID: <FontBakeryCheck:stylisticset_description>
⚠️ Galle-Regular.ttf
  • ⚠️ WARN

    The stylistic set ss01 lacks a description string on the 'name' table.

    [code: missing-description]

Check font contains no unreachable glyphs

Check ID: <FontBakeryCheck:unreachable_glyphs>
⚠️ Galle-Regular.ttf
  • ⚠️ WARN

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

    - NULL
    
    - notdef
    
    - null
    
    - sinAnusvara
    
    - sinBU.reph
    
    - sinBUu.reph
    
    - sinBa.reph
    
    - sinBhAa
    
    - sinBhAa.virama
    
    - sinBhR.virama
    
    - sinBhU.reph
    
    - sinBhUu.reph
    
    - sinBha.reph
    
    - sinCU.reph
    
    - sinCUu.reph
    
    - sinCa.reph
    
    - sinChR.virama
    
    - sinChRI
    
    - sinChRIi
    
    - sinChRa
    
    - sinChU.reph
    
    - sinChUu.reph
    
    - sinCha.reph
    
    - sinDRa.alt
    
    - sinDU.reph
    
    - sinDUu.reph
    
    - sinDa.reph
    
    - sinDdU.reph
    
    - sinDdUu.reph
    
    - sinDda.reph
    
    - sinDda.virama
    
    - sinDdhR.virama
    
    - sinDdhRI
    
    - sinDdhRIi
    
    - sinDdhRa
    
    - sinDdhU.reph
    
    - sinDdhUu.reph
    
    - sinDdha.reph
    
    - sinDhU.reph
    
    - sinDhUu.reph
    
    - sinDha.reph
    
    - sinDrI
    
    - sinDrIi
    
    - sinDra
    
    - sinFAa
    
    - sinFAa.virama
    
    - sinFRI
    
    - sinFRIi
    
    - sinFU.reph
    
    - sinFUu.reph
    
    - sinFa.reph
    
    - sinGAa
    
    - sinGAa.virama
    
    - sinGU.reph
    
    - sinGUu.reph
    
    - sinGa.reph
    
    - sinGhU.reph
    
    - sinGhUu.reph
    
    - sinGha.reph
    
    - sinHAa
    
    - sinHAa.virama
    
    - sinHU.reph
    
    - sinHUu.reph
    
    - sinHa.reph
    
    - sinJU.reph
    
    - sinJUu.reph
    
    - sinJa.reph
    
    - sinJhU.reph
    
    - sinJhUu.reph
    
    - sinJha.reph
    
    - sinJnya.reph
    
    - sinKAa
    
    - sinKAa.virama
    
    - sinKR.virama
    
    - sinKU.reph
    
    - sinKUu.reph
    
    - sinKa.reph
    
    - sinKhU.reph
    
    - sinKhUu.reph
    
    - sinKha.reph
    
    - sinKundaliya
    
    - sinMa.reph
    
    - sinMatraAea
    
    - sinMatraI.alt
    
    - sinMatraI.alt1
    
    - sinMatraI.alt2
    
    - sinMatraI.alt4
    
    - sinMatraIi.alt
    
    - sinMatraIi.alt1
    
    - sinMatraIi.alt2
    
    - sinMatraIi.alt3
    
    - sinMatraU.alt
    
    - sinMatraU.alt1
    
    - sinMatraU.alt2
    
    - sinMatraU.alt3
    
    - sinMatraU.alt5
    
    - sinMatraUu.alt
    
    - sinMatraUu.alt1
    
    - sinMatraUu.alt2
    
    - sinMatraUu.alt3
    
    - sinMatraUu.alt5
    
    - sinMb
    
    - sinMba.reph
    
    - sinNAa
    
    - sinNAa.virama
    
    - sinNDRI
    
    - sinNDRIi
    
    - sinNa.reph
    
    - sinNdRa
    
    - sinNda.reph
    
    - sinNdda
    
    - sinNdja.reph
    
    - sinNgU
    
    - sinNgUu
    
    - sinNga.reph
    
    - sinNnAa
    
    - sinNnAa.virama
    
    - sinNna.reph
    
    - sinNndda.reph
    
    - sinNngAa
    
    - sinNngAa.virama
    
    - sinNnga.reph
    
    - sinNyAa
    
    - sinNya.reph
    
    - sinPU.reph
    
    - sinPUu.reph
    
    - sinPa.reph
    
    - sinPhR.virama
    
    - sinPhRI
    
    - sinPhRIi
    
    - sinPhRa
    
    - sinPhU.reph
    
    - sinPhUu.reph
    
    - sinPha.reph
    
    - sinRakar.long
    
    - sinRakar.medium
    
    - sinRakar.short
    
    - sinSU.reph
    
    - sinSUu.reph
    
    - sinSa.reph
    
    - sinShU.reph
    
    - sinShUu.reph
    
    - sinSha.reph
    
    - sinSsRI
    
    - sinSsRIi
    
    - sinSsU.reph
    
    - sinSsUu.reph
    
    - sinSsa.reph
    
    - sinTAa
    
    - sinTAa.virama
    
    - sinTU.reph
    
    - sinTUu.reph
    
    - sinTa.reph
    
    - sinThR.virama
    
    - sinThRI
    
    - sinThRIi
    
    - sinThRa
    
    - sinThU.reph
    
    - sinThUu.reph
    
    - sinTha.reph
    
    - sinTtU.reph
    
    - sinTtUu.reph
    
    - sinTta.reph
    
    - sinTthR.virama
    
    - sinTthRI
    
    - sinTthRIi
    
    - sinTthRa
    
    - sinTthU.reph
    
    - sinTthUu.reph
    
    - sinTtha.reph
    
    - sinVU.reph
    
    - sinVUu.reph
    
    - sinVa.reph
    
    - sinVirama.alt
    
    - sinVisarga
    
    - sinYU.post.reph
    
    - sinYU.reph
    
    - sinYUu.post.reph
    
    - sinYUu.reph
    
    - sinYa.post.reph
    
    - sinYa.reph
    
    - singNaa
    
    [code: unreachable-glyphs]

Font contains glyphs for whitespace characters?

Check ID: <FontBakeryCheck:whitespace_glyphs>
🔥 Galle-Regular.ttf
  • 🔥 FAIL

    Whitespace glyph missing for codepoint 0x00A0.

    [code: missing-whitespace-glyph-0x00A0]

Article Checks

⚠️

Validate size, and resolution of article images, and ensure article page has minimum length and includes visual assets.

Check ID: <FontBakeryCheck:googlefonts/article/images>
⚠️ Galle-Regular.ttf
  • ⚠️ WARN

    Family metadata at fonts/ttf does not have an article.

    [code: lacks-article]

Glyphset Checks

🔥

Shapes languages in all GF glyphsets.

Check ID: <FontBakeryCheck:googlefonts/glyphsets/shape_languages>
🔥 Galle-Regular.ttf
  • 🔥 FAIL

    No GF glyphset was found to be supported >80%, so language shaping support couldn't get checked.

    [code: no-glyphset-supported]

Licensing Checks

🔥⏩⏩⏩⏩

Copyright notices match canonical pattern in fonts

Check ID: <FontBakeryCheck:googlefonts/font_copyright>
🔥 Galle-Regular.ttf
  • 🔥 FAIL

    Name Table entry: Copyright notices should match a pattern similar to:

    "Copyright 2020 The Familyname Project Authors (git url)"

    But instead we have got:

    "Copyright (c) 2015–2018 mooniak (http://mooniak.com) Copyright (c) 2016–2018 Janaka CB Attanayake (janakacb@gmail.com) "

    [code: bad-notice-format]

Outline Checks

⚠️⚠️⚠️

Do any segments have colinear vectors?

Check ID: <FontBakeryCheck:outline_colinear_vectors>
⚠️ Galle-Regular.ttf
  • ⚠️ WARN

    The following glyphs have colinear vectors:

    * ArchaicEight (U+111E8): L<<199.0,-114.0>--<199.0,-114.0>> -> L<<199.0,-114.0>--<199.0,-114.0>>
    
    * ArchaicSeven (U+111E7): L<<452.0,-7.0>--<451.0,-7.0>> -> L<<451.0,-7.0>--<400.0,-7.0>>
    
    * sinDhU.reph: L<<149.0,512.0>--<152.0,512.0>> -> L<<152.0,512.0>--<153.0,512.0>>
    
    * sinDhU.reph: L<<152.0,512.0>--<153.0,512.0>> -> L<<153.0,512.0>--<158.0,512.0>>
    
    * sinDhUu.reph: L<<149.0,512.0>--<152.0,512.0>> -> L<<152.0,512.0>--<153.0,512.0>>
    
    * sinDhUu.reph: L<<152.0,512.0>--<153.0,512.0>> -> L<<153.0,512.0>--<158.0,512.0>>
    
    * sinDha.reph: L<<149.0,512.0>--<152.0,512.0>> -> L<<152.0,512.0>--<153.0,512.0>>
    
    * sinDha.reph: L<<152.0,512.0>--<153.0,512.0>> -> L<<153.0,512.0>--<158.0,512.0>>
    
    * sinGRI: L<<371.0,298.0>--<371.0,298.0>> -> L<<371.0,298.0>--<371.0,298.0>>
    
    * sinKIi: L<<326.0,331.0>--<326.0,331.0>> -> L<<326.0,331.0>--<328.0,331.0>>
    
    * sinKhU.reph: L<<152.0,512.0>--<155.0,512.0>> -> L<<155.0,512.0>--<159.0,512.0>>
    
    * sinKhUu.reph: L<<152.0,512.0>--<155.0,512.0>> -> L<<155.0,512.0>--<159.0,512.0>>
    
    * sinKha.reph: L<<152.0,512.0>--<155.0,512.0>> -> L<<155.0,512.0>--<159.0,512.0>>
    
    * sinNI: L<<340.0,330.0>--<341.0,330.0>> -> L<<341.0,330.0>--<341.0,330.0>>
    
    * sinNndda.reph: L<<236.0,512.0>--<237.0,512.0>> -> L<<237.0,512.0>--<238.0,512.0>>
    
    * sinNndda.reph: L<<237.0,512.0>--<238.0,512.0>> -> L<<238.0,512.0>--<238.0,512.0>>
    
    * sinNndda.reph: L<<238.0,512.0>--<238.0,512.0>> -> L<<238.0,512.0>--<238.0,512.0>>
    
    * sinSI: L<<360.0,285.0>--<360.0,287.0>> -> L<<360.0,287.0>--<360.0,290.0>>
    
    * sinSI: L<<360.0,287.0>--<360.0,290.0>> -> L<<360.0,290.0>--<360.0,291.0>>
    
    * sinSRI: L<<381.0,285.0>--<381.0,287.0>> -> L<<381.0,287.0>--<381.0,290.0>>
    
    * sinSRI: L<<381.0,287.0>--<381.0,290.0>> -> L<<381.0,290.0>--<381.0,291.0>>
    
    * sinYI: L<<364.0,320.0>--<364.0,322.0>> -> L<<364.0,322.0>--<364.0,324.0>>
    
    * sinYIi: L<<364.0,316.0>--<364.0,318.0>> -> L<<364.0,318.0>--<364.0,319.0>>
    
    [code: found-colinear-vectors]

Do outlines contain any jaggy segments?

Check ID: <FontBakeryCheck:outline_jaggy_segments>
⚠️ Galle-Regular.ttf
  • ⚠️ WARN

    The following glyphs have jaggy segments:

    * sinBhIi: B<<370.0,297.0>-<364.0,297.0>-<358.0,296.0>>/L<<358.0,296.0>--<358.0,296.0>> = 9.462322208025613
    
    * sinBhIi: L<<358.0,296.0>--<358.0,296.0>>/B<<358.0,296.0>-<309.0,292.0>-<281.0,257.0>> = 4.666858371438958
    
    * sinBhRIi: B<<370.0,297.0>-<364.0,297.0>-<358.0,296.0>>/L<<358.0,296.0>--<358.0,296.0>> = 9.462322208025613
    
    * sinBhRIi: L<<358.0,296.0>--<358.0,296.0>>/B<<358.0,296.0>-<309.0,292.0>-<281.0,257.0>> = 4.666858371438958
    
    * sinBhU.reph: B<<83.5,235.0>-<97.0,246.0>-<106.0,246.0>>/B<<106.0,246.0>-<100.0,247.0>-<94.5,247.0>> = 9.462322208025613
    
    * sinBhU: B<<83.5,235.0>-<97.0,246.0>-<106.0,246.0>>/B<<106.0,246.0>-<100.0,247.0>-<94.5,247.0>> = 9.462322208025613
    
    * sinBhUu.reph: B<<83.5,235.0>-<97.0,246.0>-<106.0,246.0>>/B<<106.0,246.0>-<100.0,247.0>-<94.5,247.0>> = 9.462322208025613
    
    * sinBhUu: B<<83.5,235.0>-<97.0,246.0>-<106.0,246.0>>/B<<106.0,246.0>-<100.0,247.0>-<94.5,247.0>> = 9.462322208025613
    
    * sinCh.virama: B<<334.0,293.0>-<334.0,276.0>-<308.0,267.0>>/B<<308.0,267.0>-<318.0,269.0>-<333.0,266.5>> = 7.7835595264653525
    
    * sinChR.virama: B<<334.0,293.0>-<334.0,276.0>-<308.0,267.0>>/B<<308.0,267.0>-<318.0,269.0>-<333.0,266.5>> = 7.7835595264653525
    
    * sinChU.reph: B<<326.5,295.5>-<319.0,286.0>-<302.0,279.0>>/B<<302.0,279.0>-<313.0,281.0>-<330.0,279.0>> = 12.075288583193531
    
    * sinChU.reph: B<<362.5,221.0>-<349.0,246.0>-<326.0,254.0>>/B<<326.0,254.0>-<337.0,247.0>-<341.0,236.0>> = 13.292184265037774
    
    * sinChUu.reph: B<<326.5,295.5>-<319.0,286.0>-<302.0,279.0>>/B<<302.0,279.0>-<313.0,281.0>-<330.0,279.0>> = 12.075288583193531
    
    * sinChUu.reph: B<<362.5,221.0>-<349.0,246.0>-<326.0,254.0>>/B<<326.0,254.0>-<337.0,247.0>-<341.0,236.0>> = 13.292184265037774
    
    * sinCha.reph: B<<326.5,295.5>-<319.0,286.0>-<302.0,279.0>>/B<<302.0,279.0>-<313.0,281.0>-<330.0,279.0>> = 12.075288583193531
    
    * sinCha.reph: B<<362.5,221.0>-<349.0,246.0>-<326.0,254.0>>/B<<326.0,254.0>-<337.0,247.0>-<341.0,236.0>> = 13.292184265037774
    
    * sinDR.virama: B<<211.5,298.5>-<224.0,292.0>-<227.0,289.0>>/B<<227.0,289.0>-<222.0,297.0>-<222.0,305.0>> = 12.994616791916455
    
    * sinDRI: B<<211.5,298.5>-<224.0,292.0>-<227.0,289.0>>/B<<227.0,289.0>-<222.0,297.0>-<222.0,305.0>> = 12.994616791916455
    
    * sinDRIi: B<<211.5,298.5>-<224.0,292.0>-<227.0,289.0>>/B<<227.0,289.0>-<222.0,297.0>-<222.0,305.0>> = 12.994616791916455
    
    * sinDRa: B<<211.5,298.5>-<224.0,292.0>-<227.0,289.0>>/B<<227.0,289.0>-<222.0,297.0>-<222.0,305.0>> = 12.994616791916455
    
    * sinDd.virama: B<<71.5,230.5>-<92.0,243.0>-<106.0,243.0>>/B<<106.0,243.0>-<100.0,244.0>-<95.0,244.0>> = 9.462322208025613
    
    * sinDdI: B<<71.5,233.5>-<92.0,246.0>-<106.0,246.0>>/B<<106.0,246.0>-<100.0,247.0>-<95.0,247.0>> = 9.462322208025613
    
    * sinDdIi: B<<359.0,415.0>-<355.0,405.0>-<346.0,396.0>>/B<<346.0,396.0>-<383.0,419.0>-<383.0,465.0>> = 13.134022306396298
    
    * sinDdIi: B<<71.5,233.5>-<92.0,246.0>-<106.0,246.0>>/B<<106.0,246.0>-<100.0,247.0>-<95.0,247.0>> = 9.462322208025613
    
    * sinDdR.virama: B<<71.5,230.5>-<92.0,243.0>-<106.0,243.0>>/B<<106.0,243.0>-<100.0,244.0>-<95.0,244.0>> = 9.462322208025613
    
    * sinDdRI: B<<71.5,233.5>-<92.0,246.0>-<106.0,246.0>>/B<<106.0,246.0>-<100.0,247.0>-<95.0,247.0>> = 9.462322208025613
    
    * sinDdRIi: B<<359.0,415.0>-<355.0,405.0>-<346.0,396.0>>/B<<346.0,396.0>-<383.0,419.0>-<383.0,465.0>> = 13.134022306396298
    
    * sinDdRIi: B<<71.5,233.5>-<92.0,246.0>-<106.0,246.0>>/B<<106.0,246.0>-<100.0,247.0>-<95.0,247.0>> = 9.462322208025613
    
    * sinDdRa: B<<71.5,230.5>-<92.0,243.0>-<106.0,243.0>>/B<<106.0,243.0>-<100.0,244.0>-<95.0,244.0>> = 9.462322208025613
    
    * sinDdU.reph: B<<71.5,230.5>-<92.0,243.0>-<106.0,243.0>>/B<<106.0,243.0>-<100.0,244.0>-<95.0,244.0>> = 9.462322208025613
    
    * sinDdU: B<<71.5,230.5>-<92.0,243.0>-<106.0,243.0>>/B<<106.0,243.0>-<100.0,244.0>-<95.0,244.0>> = 9.462322208025613
    
    * sinDdUu.reph: B<<71.5,230.5>-<92.0,243.0>-<106.0,243.0>>/B<<106.0,243.0>-<100.0,244.0>-<95.0,244.0>> = 9.462322208025613
    
    * sinDdUu: B<<71.5,230.5>-<92.0,243.0>-<106.0,243.0>>/B<<106.0,243.0>-<100.0,244.0>-<95.0,244.0>> = 9.462322208025613
    
    * sinDda (U+0DA9): B<<71.5,230.5>-<92.0,243.0>-<106.0,243.0>>/B<<106.0,243.0>-<100.0,244.0>-<95.0,244.0>> = 9.462322208025613
    
    * sinDda.reph: B<<71.5,230.5>-<92.0,243.0>-<106.0,243.0>>/B<<106.0,243.0>-<100.0,244.0>-<95.0,244.0>> = 9.462322208025613
    
    * sinDdh.virama: B<<77.5,224.0>-<99.0,237.0>-<114.0,237.0>>/B<<114.0,237.0>-<107.0,238.0>-<101.0,238.0>> = 8.13010235415596
    
    * sinDdhI: B<<77.5,225.0>-<99.0,237.0>-<114.0,237.0>>/B<<114.0,237.0>-<107.0,238.0>-<101.0,238.0>> = 8.13010235415596
    
    * sinDdhIi: B<<77.5,225.0>-<99.0,237.0>-<114.0,237.0>>/B<<114.0,237.0>-<107.0,238.0>-<101.0,238.0>> = 8.13010235415596
    
    * sinDdhR.virama: B<<77.5,224.0>-<99.0,237.0>-<114.0,237.0>>/B<<114.0,237.0>-<107.0,238.0>-<101.0,238.0>> = 8.13010235415596
    
    * sinDdhRI: B<<77.5,224.0>-<99.0,237.0>-<114.0,237.0>>/B<<114.0,237.0>-<107.0,238.0>-<101.0,238.0>> = 8.13010235415596
    
    * sinDdhRIi: B<<77.5,224.0>-<99.0,237.0>-<114.0,237.0>>/B<<114.0,237.0>-<107.0,238.0>-<101.0,238.0>> = 8.13010235415596
    
    * sinDdhRa: B<<77.5,224.0>-<99.0,237.0>-<114.0,237.0>>/B<<114.0,237.0>-<107.0,238.0>-<101.0,238.0>> = 8.13010235415596
    
    * sinDdhU.reph: B<<77.5,225.0>-<99.0,237.0>-<114.0,237.0>>/B<<114.0,237.0>-<107.0,238.0>-<101.0,238.0>> = 8.13010235415596
    
    * sinDdhU: B<<77.5,224.0>-<99.0,237.0>-<114.0,237.0>>/B<<114.0,237.0>-<107.0,238.0>-<101.0,238.0>> = 8.13010235415596
    
    * sinDdhUu.reph: B<<77.5,225.0>-<99.0,237.0>-<114.0,237.0>>/B<<114.0,237.0>-<107.0,238.0>-<101.0,238.0>> = 8.13010235415596
    
    * sinDdhUu: B<<77.5,224.0>-<99.0,237.0>-<114.0,237.0>>/B<<114.0,237.0>-<107.0,238.0>-<101.0,238.0>> = 8.13010235415596
    
    * sinDdha (U+0DAA): B<<77.5,224.0>-<99.0,237.0>-<114.0,237.0>>/B<<114.0,237.0>-<107.0,238.0>-<101.0,238.0>> = 8.13010235415596
    
    * sinDdha.reph: B<<77.5,225.0>-<99.0,237.0>-<114.0,237.0>>/B<<114.0,237.0>-<107.0,238.0>-<101.0,238.0>> = 8.13010235415596
    
    * sinGRI: B<<447.5,255.5>-<417.0,292.0>-<371.0,298.0>>/L<<371.0,298.0>--<371.0,298.0>> = 7.431407971172489
    
    * sinGRI: L<<371.0,298.0>--<371.0,298.0>>/B<<371.0,298.0>-<364.0,299.0>-<357.0,299.0>> = 8.13010235415596
    
    * sinGUu.reph: B<<356.0,1.0>-<338.0,-2.0>-<323.0,0.0>>/B<<323.0,0.0>-<334.0,-4.0>-<346.0,-7.5>> = 12.388463153308525
    
    * sinGUu: B<<356.0,1.0>-<338.0,-2.0>-<323.0,0.0>>/B<<323.0,0.0>-<334.0,-4.0>-<346.0,-7.5>> = 12.388463153308525
    
    * sinGh.virama: B<<71.5,236.0>-<92.0,250.0>-<106.0,250.0>>/B<<106.0,250.0>-<100.0,251.0>-<95.0,251.0>> = 9.462322208025613
    
    * sinGhI: B<<71.5,236.0>-<92.0,250.0>-<106.0,250.0>>/B<<106.0,250.0>-<100.0,251.0>-<95.0,251.0>> = 9.462322208025613
    
    * sinGhIi: B<<71.5,236.0>-<92.0,250.0>-<106.0,250.0>>/B<<106.0,250.0>-<100.0,251.0>-<95.0,251.0>> = 9.462322208025613
    
    * sinGhR.virama: B<<71.5,236.0>-<92.0,250.0>-<106.0,250.0>>/B<<106.0,250.0>-<100.0,251.0>-<95.0,251.0>> = 9.462322208025613
    
    * sinGhRI: B<<71.5,236.0>-<92.0,250.0>-<106.0,250.0>>/B<<106.0,250.0>-<100.0,251.0>-<95.0,251.0>> = 9.462322208025613
    
    * sinGhRIi: B<<71.5,236.0>-<92.0,250.0>-<106.0,250.0>>/B<<106.0,250.0>-<100.0,251.0>-<95.0,251.0>> = 9.462322208025613
    
    * sinGhRa: B<<71.5,236.0>-<92.0,250.0>-<106.0,250.0>>/B<<106.0,250.0>-<100.0,251.0>-<95.0,251.0>> = 9.462322208025613
    
    * sinGhU.reph: B<<71.5,236.0>-<92.0,250.0>-<106.0,250.0>>/B<<106.0,250.0>-<100.0,251.0>-<95.0,251.0>> = 9.462322208025613
    
    * sinGhU: B<<71.5,236.0>-<92.0,250.0>-<106.0,250.0>>/B<<106.0,250.0>-<100.0,251.0>-<95.0,251.0>> = 9.462322208025613
    
    * sinGhUu.reph: B<<71.5,236.0>-<92.0,250.0>-<106.0,250.0>>/B<<106.0,250.0>-<100.0,251.0>-<95.0,251.0>> = 9.462322208025613
    
    * sinGhUu: B<<71.5,236.0>-<92.0,250.0>-<106.0,250.0>>/B<<106.0,250.0>-<100.0,251.0>-<95.0,251.0>> = 9.462322208025613
    
    * sinGha (U+0D9D): B<<71.5,236.0>-<92.0,250.0>-<106.0,250.0>>/B<<106.0,250.0>-<100.0,251.0>-<95.0,251.0>> = 9.462322208025613
    
    * sinGha.reph: B<<71.5,236.0>-<92.0,250.0>-<106.0,250.0>>/B<<106.0,250.0>-<100.0,251.0>-<95.0,251.0>> = 9.462322208025613
    
    * sinIi (U+0D8A): B<<144.5,377.5>-<113.0,338.0>-<96.0,312.0>>/B<<96.0,312.0>-<110.0,326.0>-<134.5,337.5>> = 11.821488340607257
    
    * sinNd.virama: B<<285.0,298.5>-<297.0,292.0>-<300.0,289.0>>/B<<300.0,289.0>-<295.0,297.0>-<295.0,307.0>> = 12.994616791916455
    
    * sinNdI: B<<285.0,298.5>-<297.0,292.0>-<300.0,289.0>>/B<<300.0,289.0>-<295.0,297.0>-<295.0,307.0>> = 12.994616791916455
    
    * sinNdIi: B<<285.0,298.5>-<297.0,292.0>-<300.0,289.0>>/B<<300.0,289.0>-<295.0,297.0>-<295.0,307.0>> = 12.994616791916455
    
    * sinNdU: B<<285.0,298.5>-<297.0,292.0>-<300.0,289.0>>/B<<300.0,289.0>-<292.0,301.0>-<298.0,317.0>> = 11.309932474020195
    
    * sinNdUu: B<<285.0,298.5>-<297.0,292.0>-<300.0,289.0>>/B<<300.0,289.0>-<292.0,301.0>-<298.0,317.0>> = 11.309932474020195
    
    * sinNda (U+0DB3): B<<285.0,298.5>-<297.0,292.0>-<300.0,289.0>>/B<<300.0,289.0>-<295.0,297.0>-<295.0,307.0>> = 12.994616791916455
    
    * sinNda.reph: B<<324.0,298.5>-<336.0,292.0>-<339.0,289.0>>/B<<339.0,289.0>-<334.0,297.0>-<334.0,307.0>> = 12.994616791916455
    
    * sinNnAa.virama: B<<615.5,318.5>-<632.0,302.0>-<635.0,279.0>>/B<<635.0,279.0>-<637.0,298.0>-<649.5,312.5>> = 13.440413928666997
    
    * sinNnAa: B<<615.5,318.5>-<632.0,302.0>-<635.0,279.0>>/B<<635.0,279.0>-<637.0,302.0>-<654.5,317.5>> = 12.401148699282784
    
    * sinNnI: B<<393.0,246.0>-<393.0,233.0>-<396.0,213.0>>/L<<396.0,213.0>--<396.0,214.0>> = 8.530765609948139
    
    * sinNnI: L<<396.0,213.0>--<396.0,214.0>>/B<<396.0,214.0>-<398.0,205.0>-<399.0,195.5>> = 12.528807709151492
    
    * sinNnIi: B<<393.0,246.0>-<393.0,233.0>-<396.0,213.0>>/L<<396.0,213.0>--<396.0,214.0>> = 8.530765609948139
    
    * sinNnIi: L<<396.0,213.0>--<396.0,214.0>>/B<<396.0,214.0>-<398.0,205.0>-<399.0,195.5>> = 12.528807709151492
    
    * sinNna.reph: B<<393.0,246.0>-<393.0,233.0>-<396.0,210.0>>/L<<396.0,210.0>--<396.0,212.0>> = 7.431407971172489
    
    * sinNna.reph: L<<396.0,210.0>--<396.0,212.0>>/B<<396.0,212.0>-<399.0,193.0>-<399.0,173.0>> = 8.972626614896358
    
    * sinNnddIi: B<<453.0,415.0>-<449.0,405.0>-<440.0,396.0>>/B<<440.0,396.0>-<477.0,419.0>-<477.0,465.0>> = 13.134022306396298
    
    * sinNngUu: B<<406.5,-0.5>-<399.0,0.0>-<393.0,1.0>>/B<<393.0,1.0>-<404.0,-3.0>-<416.5,-6.5>> = 10.52078431387435
    
    * sinNyAa: B<<559.5,451.5>-<490.0,423.0>-<421.0,361.0>>/B<<421.0,361.0>-<466.0,386.0>-<512.0,386.0>> = 12.886698326826988
    
    * sinR.virama: B<<132.0,357.5>-<101.0,330.0>-<87.0,314.0>>/B<<87.0,314.0>-<108.0,334.0>-<136.0,346.0>> = 5.211255861586706
    
    * sinRAae: B<<189.5,597.0>-<190.0,597.0>-<188.0,596.0>>/B<<188.0,596.0>-<197.0,602.0>-<204.0,599.0>> = 7.125016348901757
    
    * sinRI: B<<132.0,357.5>-<101.0,330.0>-<87.0,314.0>>/B<<87.0,314.0>-<108.0,333.0>-<136.0,345.5>> = 6.676480060402135
    
    * sinRIi: B<<135.0,357.5>-<104.0,330.0>-<90.0,314.0>>/B<<90.0,314.0>-<111.0,333.0>-<139.0,345.5>> = 6.676480060402135
    
    * sinSs.virama: B<<344.0,269.0>-<334.0,259.0>-<320.0,257.0>>/B<<320.0,257.0>-<366.0,257.0>-<392.5,224.5>> = 8.13010235415596
    
    * sinSsI: B<<344.0,269.0>-<334.0,259.0>-<320.0,257.0>>/B<<320.0,257.0>-<366.0,257.0>-<392.5,224.5>> = 8.13010235415596
    
    * sinSsIi: B<<344.0,269.0>-<334.0,259.0>-<320.0,257.0>>/B<<320.0,257.0>-<366.0,257.0>-<392.5,224.5>> = 8.13010235415596
    
    * sinSsR.virama: B<<344.0,269.0>-<334.0,259.0>-<320.0,257.0>>/B<<320.0,257.0>-<366.0,257.0>-<392.5,224.5>> = 8.13010235415596
    
    * sinSsRI: B<<344.0,269.0>-<334.0,259.0>-<320.0,257.0>>/B<<320.0,257.0>-<366.0,257.0>-<392.5,224.5>> = 8.13010235415596
    
    * sinSsRIi: B<<344.0,269.0>-<334.0,259.0>-<320.0,257.0>>/B<<320.0,257.0>-<366.0,257.0>-<392.5,224.5>> = 8.13010235415596
    
    * sinSsRa: B<<344.0,269.0>-<334.0,259.0>-<320.0,257.0>>/B<<320.0,257.0>-<366.0,257.0>-<392.5,224.5>> = 8.13010235415596
    
    * sinSsU.reph: B<<373.0,269.0>-<363.0,259.0>-<349.0,257.0>>/B<<349.0,257.0>-<395.0,257.0>-<421.5,224.5>> = 8.13010235415596
    
    * sinSsU: B<<344.0,269.0>-<334.0,259.0>-<320.0,257.0>>/B<<320.0,257.0>-<366.0,257.0>-<392.5,224.5>> = 8.13010235415596
    
    * sinSsUu.reph: B<<373.0,269.0>-<363.0,259.0>-<349.0,257.0>>/B<<349.0,257.0>-<395.0,257.0>-<421.5,224.5>> = 8.13010235415596
    
    * sinSsUu: B<<344.0,269.0>-<334.0,259.0>-<320.0,257.0>>/B<<320.0,257.0>-<366.0,257.0>-<392.5,224.5>> = 8.13010235415596
    
    * sinSsa (U+0DC2): B<<344.0,269.0>-<334.0,259.0>-<320.0,257.0>>/B<<320.0,257.0>-<366.0,257.0>-<392.5,224.5>> = 8.13010235415596
    
    * sinSsa.reph: B<<373.0,269.0>-<363.0,259.0>-<349.0,257.0>>/B<<349.0,257.0>-<395.0,257.0>-<421.5,224.5>> = 8.13010235415596
    
    [code: found-jaggy-segments]

Do outlines contain any semi-vertical or semi-horizontal lines?

Check ID: <FontBakeryCheck:outline_semi_vertical>
⚠️ Galle-Regular.ttf
  • ⚠️ WARN

    The following glyphs have semi-vertical/semi-horizontal lines:

    * sinDhU.reph: L<<382.0,-208.0>--<383.0,19.0>>
    
    * sinDhU.reph: L<<413.0,55.0>--<411.0,-235.0>>
    
    * sinR.virama: L<<37.0,406.0>--<38.0,533.0>>
    
    [code: found-semi-vertical]

Font File Checks

🔥🔥🔥🔥🔥🔥⚠️⚠️⏩⏩⏩⏩⏩⏩⏩⏩⏩⏩ℹ️ℹ️

Check font names are correct

Check ID: <FontBakeryCheck:googlefonts/font_names>
🔥 Galle-Regular.ttf
  • 🔥 FAIL

    Font names are incorrect:

    nameID current expected
    Family Name Galle Galle
    Subfamily Name Regular Regular
    Full Name Galle Regular Galle Regular
    Postscript Name GalleALPHA Galle-Regular
    [code: bad-names]

Check Google Fonts glyph coverage.

Check ID: <FontBakeryCheck:googlefonts/glyph_coverage>
🔥 Galle-Regular.ttf
  • 🔥 FAIL

    Missing required codepoints:

    - 0x0024 (DOLLAR SIGN)
    
    
    - 0x0025 (PERCENT SIGN)
    
    
    - 0x0026 (AMPERSAND)
    
    
    - 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)
    
    
    - 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)
    
    
    - 0x00A0 (NO-BREAK SPACE)
    
    
    - 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)
    
    
    - 0x00AB (LEFT-POINTING DOUBLE ANGLE QUOTATION MARK)
    
    
    - 0x00AE (REGISTERED SIGN)
    
    
    - 0x00AF (MACRON)
    
    
    - 0x00B0 (DEGREE SIGN)
    
    
    - 0x00B4 (ACUTE ACCENT)
    
    
    - 0x00B6 (PILCROW SIGN)
    
    
    - 0x00B7 (MIDDLE DOT)
    
    
    - 0x00B8 (CEDILLA)
    
    
    - 0x00BA (MASCULINE ORDINAL INDICATOR)
    
    
    - 0x00BB (RIGHT-POINTING DOUBLE ANGLE QUOTATION MARK)
    
    
    - 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)
    
    
    - 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: <FontBakeryCheck:googlefonts/meta/script_lang_tags>
⚠️ Galle-Regular.ttf
  • ⚠️ WARN

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

    [code: lacks-meta-table]

Version format is correct in 'name' table?

Check ID: <FontBakeryCheck:googlefonts/name/version_format>
🔥 Galle-Regular.ttf
  • 🔥 FAIL

    The NameID.VERSION_STRING (nameID=5) value must follow the pattern "Version X.Y" with X.Y greater than or equal to 1.000. The "Version " prefix is a recommendation given by the OpenType spec. Current version string is: "Version 0.050; DEV; pre; ttfautohint (v1.8.4.7-5d5b)"

    [code: bad-version-strings]

Ensure font can render its own name.

Check ID: <FontBakeryCheck:googlefonts/render_own_name>
🔥 Galle-Regular.ttf
  • 🔥 FAIL

    .notdef glyphs were found when attempting to render Galle

    [code: render-own-name]

OS/2.fsSelection bit 7 (USE_TYPO_METRICS) is set in all fonts.

Check ID: <FontBakeryCheck:googlefonts/use_typo_metrics>
🔥 Family Check
  • 🔥 FAIL

    OS/2.fsSelection bit 7 (USE_TYPO_METRICS) wasNOT set in the following fonts: ['fonts/ttf/Galle-Regular.ttf'].

    [code: missing-os2-fsselection-bit7]

Checking OS/2 achVendID.

Check ID: <FontBakeryCheck:googlefonts/vendor_id>
⚠️ Galle-Regular.ttf
  • ⚠️ WARN

    OS/2 VendorID value 'MNIK' is not yet recognized. If you registered it recently, then it's safe to ignore this warning message. Otherwise, you should set it to your own unique 4 character code, and register it with Microsoft at https://www.microsoft.com/typography/links/vendorlist.aspx

    [code: unknown]

Check font follows the Google Fonts vertical metric schema

Check ID: <FontBakeryCheck:googlefonts/vertical_metrics>
🔥 Galle-Regular.ttf
  • 🔥 FAIL

    OS/2.sTypoLineGap is "463" it should be 0

    [code: bad-OS/2.sTypoLineGap]