* ℹ **INFO** From a total of 1 font files, 0 of them (0.00%) lack a STAT table.
And these are the most common STAT axis orderings:
('wght', 1) [code: summary]
🔥 FAIL: Is the Grid-fitting and Scan-conversion Procedure ('gasp') table set to optimize rendering? (com.google.fonts/check/gasp)
* 🔥 **FAIL** Font is missing the 'gasp' table. Try exporting the font with autohinting enabled.
If you are dealing with an unhinted font, it can be fixed by running the fonts through the command 'gftools fix-nonhinting'
GFTools is available at https://pypi.org/project/gftools/ [code: lacks-gasp]
* 🔥 **FAIL** The 'prep' table does not contain TrueType instructions enabling smart dropout control. To fix, export the font with autohinting enabled, or run ttfautohint on the font, or run the `gftools fix-nonhinting` script. [code: lacks-smart-dropout]
* 🔥 **FAIL** Mada Regular: OS/2 sTypoAscender is 950 when it should be 900 [code: bad-typo-ascender]
* 🔥 **FAIL** Mada Regular: OS/2 sTypoDescender is -350 when it should be -300 [code: bad-typo-descender]
* 🔥 **FAIL** Mada Regular: hhea Ascender is 950 when it should be 900 [code: bad-hhea-ascender]
* 🔥 **FAIL** Mada Regular: hhea Descender is -350 when it should be -300 [code: bad-hhea-descender]
* 🔥 **FAIL** The following glyph names do not comply with naming conventions: hamza-ar, highhamza-ar, alef-ar, alef-ar.fina, alef-ar.fina.1, behDotless-ar, behDotless-ar.fina, behDotless-ar.medi, behDotless-ar.init, hah-ar and 360 more.
Use -F or --full-lists to disable shortening of long lists.
A glyph name must be entirely comprised of characters from the following set: A-Z a-z 0-9 .(period) _(underscore). A glyph name must not start with a digit or period. There are a few exceptions such as the special glyph ".notdef". The glyph names "twocents", "a1", and "_" are all valid, while "2cents" and ".twocents" are not. [code: found-invalid-names]
🔥 FAIL: Ensure soft_dotted characters lose their dot when combined with marks that replace the dot. (com.google.fonts/check/soft_dotted)
* 🔥 **FAIL** The dot of soft dotted characters used in orthographies must disappear in the following strings: i̊ i̋ i̍ i̐ i̓ j̀ j́ j̃ j̄ j̈ į̀ į́ į̂ į̃ į̄ į̌ ɨ̀ ɨ́ ɨ̂ ɨ̃ ɨ̄ ɨ̈ ɨ̋ ɨ̌ ɨ̏ ɨ̧̀ ɨ̧́ ɨ̧̂ ɨ̧̌ ɨ̱̀ ɨ̱́ ɨ̱̈ ị̀ ị́ ị̂ ị̃ ị̄
The dot of soft dotted characters should disappear in other cases, for example: i̅ i̇ i̒ i̦̅ i̦̇ i̦̊ i̦̋ i̦̍ i̦̐ i̦̒ i̦̓ i̧̅ i̧̇ i̧̊ i̧̋ i̧̍ i̧̐ i̧̒ i̧̓ i̩̅ [code: soft-dotted]
* ⚠ **WARN** Following glyphs differ greatly from Google Fonts version:
* .notdef
* AE
* Acircumflex
* Aring
* Eth
* Euro
* ampersand
* cent and oslash
* ⚠ **WARN** Name table entry contains "Reserved Font Name" for a family name ("Source") that differs from the currently used family name (Mada), which is fine. [code: legacy-familyname]
* ⚠ **WARN** Interpolation issues were found in the font: - Contour order differs in glyph 'command': [0, 1] in , [1, 0] in . [code: interpolation-issues]
* ℹ **INFO** Could not detect which version of ttfautohint was used in this font. It is typically specified as a comment in the font version entries of the 'name' table. Such font version strings are currently: ['Version 1.000'] [code: version-not-detected]
* ℹ **INFO** Version string is: "Version 1.000"
The version string must ideally include a git commit hash and either a "dev" or a "release" suffix such as in the example below:
"Version 1.3; git-0d08353-release" [code: bad-format]
Sorry, I fix these when I make the dist tarball (I don’t want to depend on gftools for various reasons). Can you check against these files instead? Mada-1.4.zip
@khaledhosny instead of using fontmake in the make file, can you use gfools builder? It would close some fails about the hinting and the STAT table.
config.yml
would be pretty straightforward:and the command should be:
gftools builder config.yml
Fontbakery report
Fontbakery version: 0.8.11
[1] Family checks
ℹ INFO: Check axis ordering on the STAT table. (com.google.fonts/check/STAT/axis_order)
[20] Mada.ttf
🔥 FAIL: Checking file is named canonically. (com.google.fonts/check/canonical_filename)
🔥 FAIL: Is the Grid-fitting and Scan-conversion Procedure ('gasp') table set to optimize rendering? (com.google.fonts/check/gasp)
🔥 FAIL: Font enables smart dropout control in "prep" table instructions? (com.google.fonts/check/smart_dropout)
🔥 FAIL: Check a font's STAT table contains compulsory Axis Values. (com.google.fonts/check/STAT)
🔥 FAIL: Check if the vertical metrics of a family are similar to the same family hosted on Google Fonts. (com.google.fonts/check/vertical_metrics_regressions)
🔥 FAIL: Validate STAT particle names and values match the fallback names in GFAxisRegistry. (com.google.fonts/check/STAT/gf_axisregistry)
🔥 FAIL: Glyph names are all valid? (com.google.fonts/check/valid_glyphnames)
🔥 FAIL: Ensure soft_dotted characters lose their dot when combined with marks that replace the dot. (com.google.fonts/check/soft_dotted)
🔥 FAIL: STAT table has Axis Value tables? (com.adobe.fonts/check/stat_has_axis_value_tables)
⚠ WARN: Glyphs are similiar to Google Fonts version? (com.google.fonts/check/production_glyphs_similarity)
⚠ WARN: Name table strings must not contain the string 'Reserved Font Name'. (com.google.fonts/check/name/rfn)
⚠ WARN: Ensure fonts have ScriptLangTags declared on the 'meta' table. (com.google.fonts/check/meta/script_lang_tags)
⚠ WARN: Detect any interpolation issues in the font. (com.google.fonts/check/interpolation_issues)
ℹ INFO: Show hinting filesize impact. (com.google.fonts/check/hinting_impact)
ℹ INFO: Font has old ttfautohint applied? (com.google.fonts/check/old_ttfautohint)
ℹ INFO: EPAR table present in font? (com.google.fonts/check/epar)
ℹ INFO: Familyname must be unique according to namecheck.fontdata.com (com.google.fonts/check/fontdata_namecheck)
ℹ INFO: Check for font-v versioning. (com.google.fonts/check/fontv)
ℹ INFO: Font contains all required tables? (com.google.fonts/check/required_tables)
ℹ INFO: List all superfamily filepaths (com.google.fonts/check/superfamily/list)
Summary
Note: The following loglevels were omitted in this report: