-
Notifications
You must be signed in to change notification settings - Fork 5
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Pass FontBakery #2
Comments
Checked 9/24/18. Some notes:
Fontbakery report[22] Family checks🔥 FAIL: Check font has a license.
🍞 PASS: Checking all files are in the same directory.
🍞 PASS: Fonts have equal unicode encodings?
🍞 PASS: Make sure all font files have the same version value.
🍞 PASS: Fonts have consistent PANOSE proportion?
🍞 PASS: Fonts have consistent PANOSE family type?
🍞 PASS: Fonts have consistent underline thickness?
💤 SKIP: Does DESCRIPTION file contain broken links?
💤 SKIP: Is this a proper HTML snippet?
💤 SKIP: DESCRIPTION.en_us.html must have more than 200 bytes.
💤 SKIP: DESCRIPTION.en_us.html must have less than 1000 bytes.
💤 SKIP: Font designer field in METADATA.pb must not be 'unknown'.
💤 SKIP: METADATA.pb: Fontfamily is listed on Google Fonts API?
💤 SKIP: METADATA.pb: check if fonts field only has unique "full_name" values.
💤 SKIP: METADATA.pb: check if fonts field only contains unique style:weight pairs.
💤 SKIP: METADATA.pb license is "APACHE2", "UFL" or "OFL"?
💤 SKIP: METADATA.pb should contain at least "menu" and "latin" subsets.
💤 SKIP: METADATA.pb subsets should be alphabetically ordered.
💤 SKIP: METADATA.pb: Copyright notice is the same in all fonts?
💤 SKIP: Check that METADATA.pb family values are all the same.
💤 SKIP: METADATA.pb: According Google Fonts standards, families should have a Regular style.
💤 SKIP: METADATA.pb: Regular should be 400.
[111] MajorMonoDisplay-Regular.ttf🔥 FAIL: Checking with Microsoft Font Validator.
MajorMonoDisplay-Regular.ttf (file 1 of 1) Unhandled Exception:
|
MajorMonoDisplay-Regular.ttf | |
---|---|
Dehinted Size | 75.1kb |
Hinted Size | 123.5kb |
Increase | 48.4kb |
Change | 0.6 % |
ℹ️ INFO: EPAR table present in font?
- com.google.fonts/check/061
- ℹ️ INFO EPAR table not present in font. To learn more see When missing EPAR table, just emit INFO alert fonttools/fontbakery#818
ℹ️ INFO: Is 'gasp' table set to optimize rendering?
- com.google.fonts/check/062
- ℹ️ INFO These are the ppm ranges declared on the gasp table:
PPM <= 65535:
flag = 0x0F
- Use gridfitting
- Use grayscale rendering
- Use gridfitting with ClearType symmetric smoothing
- Use smoothing along multiple axes with ClearType®
- 🍞 PASS 'gasp' table is correctly set, with one gaspRange:value of 0xFFFF:0x0F.
ℹ️ INFO: Check for font-v versioning
- com.google.fonts/check/166
- ℹ️ INFO Version string is: "Version 2.000; ttfautohint (v1.8) -l 8 -r 50 -G 200 -x 14 -D latn -f none -a qsq -X """
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"
ℹ️ INFO: Font contains all required tables?
- com.google.fonts/check/052
- ℹ️ INFO This font contains the following optional tables [DSIG, loca, prep, cvt , gasp, fpgm, GSUB, GPOS]
- 🍞 PASS Font contains all required tables.
🍞 PASS: Checking file is named canonically.
- com.google.fonts/check/001
- 🍞 PASS MajorMonoDisplay-Regular.ttf is named canonically.
🍞 PASS: Fonts have equal numbers of glyphs?
- com.google.fonts/check/011
- 🍞 PASS All font files in this family have an equal total ammount of glyphs.
🍞 PASS: Fonts have equal glyph names?
- com.google.fonts/check/012
- 🍞 PASS All font files have identical glyph names.
🍞 PASS: Checking OS/2 fsType.
- com.google.fonts/check/016
- 🍞 PASS OS/2 fsType is properly set to zero.
🍞 PASS: Substitute copyright, registered and trademark symbols in name table entries.
- com.google.fonts/check/019
- 🍞 PASS No need to substitute copyright, registered and trademark symbols in name table entries of this font.
🍞 PASS: Checking OS/2 usWeightClass.
- com.google.fonts/check/020
- 🍞 PASS OS/2 usWeightClass value looks good!
🍞 PASS: "License URL matches License text on name table?
- com.google.fonts/check/030
- 🍞 PASS Font has a valid license URL in NAME table.
🍞 PASS: Description strings in the name table must not exceed 200 characters.
- com.google.fonts/check/032
- 🍞 PASS All description name records have reasonably small lengths.
🍞 PASS: Version format is correct in 'name' table?
- com.google.fonts/check/055
- 🍞 PASS Version format in NAME table entries is correct.
🍞 PASS: Font has ttfautohint params?
- com.google.fonts/check/has_ttfautohint_params
- 🍞 PASS Font has ttfautohint params (-l 8 -r 50 -G 200 -x 14 -D latn -f none -a qsq -X "")
- 🍞 PASS Font has ttfautohint params (-l 8 -r 50 -G 200 -x 14 -D latn -f none -a qsq -X "")
🍞 PASS: Make sure family name does not begin with a digit.
- com.google.fonts/check/067
- 🍞 PASS Font family name first character is not a digit.
🍞 PASS: Font has all expected currency sign characters?
- com.google.fonts/check/070
- 🍞 PASS Font has all expected currency sign characters.
🍞 PASS: Are there non-ASCII characters in ASCII-only NAME table entries?
- com.google.fonts/check/074
- 🍞 PASS None of the ASCII-only NAME table entries contain non-ASCII characteres.
🍞 PASS: Is font em size (ideally) equal to 1000?
- com.google.fonts/check/116
- 🍞 PASS Font em size is equal to 1000.
🍞 PASS: Checking OS/2 fsSelection value.
- com.google.fonts/check/129
- 🍞 PASS OS/2 fsSelection REGULAR bit is properly set.
- 🍞 PASS OS/2 fsSelection ITALIC bit is properly set.
- 🍞 PASS OS/2 fsSelection BOLD bit is properly set.
🍞 PASS: Checking post.italicAngle value.
- com.google.fonts/check/130
- 🍞 PASS Value of post.italicAngle is 0.0 with style='Regular'.
🍞 PASS: Checking head.macStyle value.
- com.google.fonts/check/131
- 🍞 PASS head macStyle ITALIC bit is properly set.
- 🍞 PASS head macStyle BOLD bit is properly set.
🍞 PASS: Font has all mandatory 'name' table entries ?
- com.google.fonts/check/156
- 🍞 PASS Font contains values for all mandatory name table entries.
🍞 PASS: Check name table: FONT_FAMILY_NAME entries.
- com.google.fonts/check/157
- 🍞 PASS FONT_FAMILY_NAME entries are all good.
🍞 PASS: Check name table: FONT_SUBFAMILY_NAME entries.
- com.google.fonts/check/158
- 🍞 PASS FONT_SUBFAMILY_NAME entries are all good.
🍞 PASS: Check name table: FULL_FONT_NAME entries.
- com.google.fonts/check/159
- 🍞 PASS FULL_FONT_NAME entries are all good.
🍞 PASS: Check name table: POSTSCRIPT_NAME entries.
- com.google.fonts/check/160
- 🍞 PASS POSTCRIPT_NAME entries are all good.
🍞 PASS: Check name table: TYPOGRAPHIC_FAMILY_NAME entries.
- com.google.fonts/check/161
- 🍞 PASS TYPOGRAPHIC_FAMILY_NAME entries are all good.
🍞 PASS: Check name table: TYPOGRAPHIC_SUBFAMILY_NAME entries.
- com.google.fonts/check/162
- 🍞 PASS TYPOGRAPHIC_SUBFAMILY_NAME entries are all good.
🍞 PASS: Length of copyright notice must not exceed 500 characters.
- com.google.fonts/check/164
- 🍞 PASS All copyright notice name entries on the 'name' table are shorter than 500 characters.
🍞 PASS: Familyname must be unique according to namecheck.fontdata.com
- com.google.fonts/check/165
- 🍞 PASS Font familyname seems to be unique.
🍞 PASS: Checking OS/2 usWinAscent & usWinDescent.
- com.google.fonts/check/040
- 🍞 PASS OS/2 usWinAscent & usWinDescent values look good!
🍞 PASS: Checking OS/2 Metrics match hhea Metrics.
- com.google.fonts/check/042
- 🍞 PASS OS/2.sTypoAscender/Descender match hhea.ascent/descent.
🍞 PASS: Font enables smart dropout control in "prep" table instructions?
- com.google.fonts/check/072
- 🍞 PASS 'prep' table contains instructions enabling smart dropout control.
🍞 PASS: Checking with ftxvalidator.
- com.google.fonts/check/035
- 🍞 PASS ftxvalidator passed this file
🍞 PASS: Checking with ots-sanitize.
- com.google.fonts/check/036
- 🍞 PASS ots-sanitize passed this file
🍞 PASS: Font contains .notdef as first glyph?
- com.google.fonts/check/046
- 🍞 PASS Font contains the .notdef glyph as the first glyph, it does not have a Unicode value assigned and contains a drawing.
🍞 PASS: Font contains glyphs for whitespace characters?
- com.google.fonts/check/047
- 🍞 PASS Font contains glyphs for whitespace characters.
🍞 PASS: Font has **proper** whitespace glyph names?
- com.google.fonts/check/048
- 🍞 PASS Font has proper whitespace glyph names.
🍞 PASS: Whitespace glyphs have ink?
- com.google.fonts/check/049
- 🍞 PASS There is no whitespace glyph with ink.
🍞 PASS: Are there unwanted tables?
- com.google.fonts/check/053
- 🍞 PASS There are no unwanted tables.
🍞 PASS: Glyph names are all valid?
- com.google.fonts/check/058
- 🍞 PASS Glyph names are all valid.
🍞 PASS: Font contains unique glyph names?
- com.google.fonts/check/059
- 🍞 PASS Font contains unique glyph names.
🍞 PASS: Checking with fontTools.ttx
- com.google.fonts/check/ttx-roundtrip
- 🍞 PASS Hey! It all looks good!
🍞 PASS: Check glyphs have unique unicode codepoints.
- com.google.fonts/check/076
- 🍞 PASS All glyphs have unique unicode codepoint assignments.
🍞 PASS: Check all glyphs have codepoints assigned.
- com.google.fonts/check/077
- 🍞 PASS All glyphs have a codepoint value assigned.
🍞 PASS: Checking unitsPerEm value is reasonable.
- com.google.fonts/check/043
- 🍞 PASS unitsPerEm value on the 'head' table is reasonable.
🍞 PASS: Checking font version fields (head and name table).
- com.google.fonts/check/044
- 🍞 PASS All font version fields match.
🍞 PASS: Font has correct post table version (2 for TTF, 3 for OTF)?
- com.google.fonts/check/015
- 🍞 PASS Font has post table version 2.
🍞 PASS: Description strings in the name table must not contain copyright info.
- com.google.fonts/check/031
- 🍞 PASS Description strings in the name table do not contain any copyright string.
🍞 PASS: Name table entries should not contain line-breaks.
- com.google.fonts/check/057
- 🍞 PASS Name table entries are all single-line (no line-breaks found).
🍞 PASS: Does full font name begin with the font family name?
- com.google.fonts/check/068
- 🍞 PASS Full font name begins with the font family name.
🍞 PASS: Font follows the family naming recommendations?
- com.google.fonts/check/071
- 🍞 PASS Font follows the family naming recommendations.
🍞 PASS: Name table strings must not contain the string 'Reserved Font Name'.
- com.google.fonts/check/152
- 🍞 PASS None of the name table strings contain "Reserved Font Name".
🍞 PASS: Checking Vertical Metric Linegaps.
- com.google.fonts/check/041
- 🍞 PASS OS/2 sTypoLineGap and hhea lineGap are both 0.
🍞 PASS: MaxAdvanceWidth is consistent with values in the Hmtx and Hhea tables?
- com.google.fonts/check/073
- 🍞 PASS MaxAdvanceWidth is consistent with values in the Hmtx and Hhea tables.
🍞 PASS: Does the font have a DSIG table?
- com.google.fonts/check/045
- 🍞 PASS Digital Signature (DSIG) exists.
🍞 PASS: Whitespace and non-breaking space have the same width?
- com.google.fonts/check/050
- 🍞 PASS Whitespace and non-breaking space have the same width.
🍞 PASS: Is there a "kern" table declared in the font?
- com.google.fonts/check/066
- 🍞 PASS Font does not declare an optional "kern" table.
🍞 PASS: Is there any unused data at the end of the glyf table?
- com.google.fonts/check/069
- 🍞 PASS There is no unused data at the end of the glyf table.
🍞 PASS: Check for points out of bounds.
- com.google.fonts/check/075
- 🍞 PASS All glyph paths have coordinates within bounds!
🍞 PASS: Does the number of glyphs in the loca table match the maxp table?
- com.google.fonts/check/180
- 🍞 PASS 'loca' table matches numGlyphs in 'maxp' table.
Summary
💔 ERROR | 🔥 FAIL | 💤 SKIP | ℹ️ INFO | 🍞 PASS | |
---|---|---|---|---|---|
0 | 2 | 9 | 54 | 5 | 63 |
0% | 2% | 7% | 41% | 4% | 47% |
Ok, I've just rerun the fonts through FB. Fontbakery report[23] Family checks🔥 FAIL: Check font has a license.
🍞 PASS: Checking all files are in the same directory.
🍞 PASS: Fonts have equal unicode encodings?
🍞 PASS: Make sure all font files have the same version value.
🍞 PASS: Fonts have consistent PANOSE proportion?
🍞 PASS: Fonts have consistent PANOSE family type?
🍞 PASS: Fonts have consistent underline thickness?
💤 SKIP: Does DESCRIPTION file contain broken links?
💤 SKIP: Is this a proper HTML snippet?
💤 SKIP: DESCRIPTION.en_us.html must have more than 200 bytes.
💤 SKIP: DESCRIPTION.en_us.html must have less than 1000 bytes.
💤 SKIP: Font designer field in METADATA.pb must not be 'unknown'.
💤 SKIP: METADATA.pb: Ensure designer simple short name.
💤 SKIP: METADATA.pb: Fontfamily is listed on Google Fonts API?
💤 SKIP: METADATA.pb: check if fonts field only has unique "full_name" values.
💤 SKIP: METADATA.pb: check if fonts field only contains unique style:weight pairs.
💤 SKIP: METADATA.pb license is "APACHE2", "UFL" or "OFL"?
💤 SKIP: METADATA.pb should contain at least "menu" and "latin" subsets.
💤 SKIP: METADATA.pb subsets should be alphabetically ordered.
💤 SKIP: METADATA.pb: Copyright notice is the same in all fonts?
💤 SKIP: Check that METADATA.pb family values are all the same.
💤 SKIP: METADATA.pb: According Google Fonts standards, families should have a Regular style.
💤 SKIP: METADATA.pb: Regular should be 400.
[110] MajorMonoDisplay-Regular.ttf🔥 FAIL: Checking with Microsoft Font Validator.
/Users/marc/Downloads/majormono-master/fonts/MajorMonoDisplay-Regular.ttf (file 1 of 1)
|
/Users/marc/Downloads/majormono-master/fonts/MajorMonoDisplay-Regular.ttf | |
---|---|
Dehinted Size | 75.1kb |
Hinted Size | 123.5kb |
Increase | 48.4kb |
Change | 0.6 % |
ℹ️ INFO: EPAR table present in font?
- com.google.fonts/check/061
- ℹ️ INFO EPAR table not present in font. To learn more see When missing EPAR table, just emit INFO alert fonttools/fontbakery#818
ℹ️ INFO: Check for font-v versioning
- com.google.fonts/check/166
- ℹ️ INFO Version string is: "Version 2.000; ttfautohint (v1.8) -l 8 -r 50 -G 200 -x 14 -D latn -f none -a qsq -X """
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"
ℹ️ INFO: Font contains all required tables?
- com.google.fonts/check/052
- ℹ️ INFO This font contains the following optional tables [cvt , GPOS, GSUB, DSIG, fpgm, loca, gasp, prep]
- 🍞 PASS Font contains all required tables.
🍞 PASS: Checking file is named canonically.
- com.google.fonts/check/001
- 🍞 PASS /Users/marc/Downloads/majormono-master/fonts/MajorMonoDisplay-Regular.ttf is named canonically.
🍞 PASS: Fonts have equal numbers of glyphs?
- com.google.fonts/check/011
- 🍞 PASS All font files in this family have an equal total ammount of glyphs.
🍞 PASS: Fonts have equal glyph names?
- com.google.fonts/check/012
- 🍞 PASS All font files have identical glyph names.
🍞 PASS: Checking OS/2 fsType.
- com.google.fonts/check/016
- 🍞 PASS OS/2 fsType is properly set to zero.
🍞 PASS: Substitute copyright, registered and trademark symbols in name table entries.
- com.google.fonts/check/019
- 🍞 PASS No need to substitute copyright, registered and trademark symbols in name table entries of this font.
🍞 PASS: Checking OS/2 usWeightClass.
- com.google.fonts/check/020
- 🍞 PASS OS/2 usWeightClass value looks good!
🍞 PASS: "License URL matches License text on name table?
- com.google.fonts/check/030
- 🍞 PASS Font has a valid license URL in NAME table.
🍞 PASS: Description strings in the name table must not exceed 200 characters.
- com.google.fonts/check/032
- 🍞 PASS All description name records have reasonably small lengths.
🍞 PASS: Version format is correct in 'name' table?
- com.google.fonts/check/055
- 🍞 PASS Version format in NAME table entries is correct.
🍞 PASS: Font has old ttfautohint applied?
- com.google.fonts/check/056
- 🍞 PASS ttfautohint available in the system is older than the one used in the font.
🍞 PASS: Is 'gasp' table set to optimize rendering?
- com.google.fonts/check/062
- 🍞 PASS 'gasp' table is correctly set, with one gaspRange:value of 0xFFFF:0x0F.
🍞 PASS: Make sure family name does not begin with a digit.
- com.google.fonts/check/067
- 🍞 PASS Font family name first character is not a digit.
🍞 PASS: Font has all expected currency sign characters?
- com.google.fonts/check/070
- 🍞 PASS Font has all expected currency sign characters.
🍞 PASS: Are there non-ASCII characters in ASCII-only NAME table entries?
- com.google.fonts/check/074
- 🍞 PASS None of the ASCII-only NAME table entries contain non-ASCII characteres.
🍞 PASS: Is font em size (ideally) equal to 1000?
- com.google.fonts/check/116
- 🍞 PASS Font em size is equal to 1000.
🍞 PASS: Checking OS/2 fsSelection value.
- com.google.fonts/check/129
- 🍞 PASS OS/2 fsSelection REGULAR bit is properly set.
- 🍞 PASS OS/2 fsSelection ITALIC bit is properly set.
- 🍞 PASS OS/2 fsSelection BOLD bit is properly set.
🍞 PASS: Checking post.italicAngle value.
- com.google.fonts/check/130
- 🍞 PASS Value of post.italicAngle is 0.0 with style='Regular'.
🍞 PASS: Checking head.macStyle value.
- com.google.fonts/check/131
- 🍞 PASS head macStyle ITALIC bit is properly set.
- 🍞 PASS head macStyle BOLD bit is properly set.
🍞 PASS: Font has all mandatory 'name' table entries ?
- com.google.fonts/check/156
- 🍞 PASS Font contains values for all mandatory name table entries.
🍞 PASS: Check name table: FONT_FAMILY_NAME entries.
- com.google.fonts/check/157
- 🍞 PASS FONT_FAMILY_NAME entries are all good.
🍞 PASS: Check name table: FONT_SUBFAMILY_NAME entries.
- com.google.fonts/check/158
- 🍞 PASS FONT_SUBFAMILY_NAME entries are all good.
🍞 PASS: Check name table: FULL_FONT_NAME entries.
- com.google.fonts/check/159
- 🍞 PASS FULL_FONT_NAME entries are all good.
🍞 PASS: Check name table: POSTSCRIPT_NAME entries.
- com.google.fonts/check/160
- 🍞 PASS POSTCRIPT_NAME entries are all good.
🍞 PASS: Check name table: TYPOGRAPHIC_FAMILY_NAME entries.
- com.google.fonts/check/161
- 🍞 PASS TYPOGRAPHIC_FAMILY_NAME entries are all good.
🍞 PASS: Check name table: TYPOGRAPHIC_SUBFAMILY_NAME entries.
- com.google.fonts/check/162
- 🍞 PASS TYPOGRAPHIC_SUBFAMILY_NAME entries are all good.
🍞 PASS: Length of copyright notice must not exceed 500 characters.
- com.google.fonts/check/164
- 🍞 PASS All copyright notice name entries on the 'name' table are shorter than 500 characters.
🍞 PASS: Familyname must be unique according to namecheck.fontdata.com
- com.google.fonts/check/165
- 🍞 PASS Font familyname seems to be unique.
🍞 PASS: Checking OS/2 usWinAscent & usWinDescent.
- com.google.fonts/check/040
- 🍞 PASS OS/2 usWinAscent & usWinDescent values look good!
🍞 PASS: Checking OS/2 Metrics match hhea Metrics.
- com.google.fonts/check/042
- 🍞 PASS OS/2.sTypoAscender/Descender match hhea.ascent/descent.
🍞 PASS: Font enables smart dropout control in "prep" table instructions?
- com.google.fonts/check/072
- 🍞 PASS 'prep' table contains instructions enabling smart dropout control.
🍞 PASS: Checking with ftxvalidator.
- com.google.fonts/check/035
- 🍞 PASS ftxvalidator passed this file
🍞 PASS: Checking with ots-sanitize.
- com.google.fonts/check/036
- 🍞 PASS ots-sanitize passed this file
🍞 PASS: Font contains .notdef as first glyph?
- com.google.fonts/check/046
- 🍞 PASS Font contains the .notdef glyph as the first glyph, it does not have a Unicode value assigned and contains a drawing.
🍞 PASS: Font contains glyphs for whitespace characters?
- com.google.fonts/check/047
- 🍞 PASS Font contains glyphs for whitespace characters.
🍞 PASS: Font has **proper** whitespace glyph names?
- com.google.fonts/check/048
- 🍞 PASS Font has proper whitespace glyph names.
🍞 PASS: Whitespace glyphs have ink?
- com.google.fonts/check/049
- 🍞 PASS There is no whitespace glyph with ink.
🍞 PASS: Are there unwanted tables?
- com.google.fonts/check/053
- 🍞 PASS There are no unwanted tables.
🍞 PASS: Glyph names are all valid?
- com.google.fonts/check/058
- 🍞 PASS Glyph names are all valid.
🍞 PASS: Font contains unique glyph names?
- com.google.fonts/check/059
- 🍞 PASS Font contains unique glyph names.
🍞 PASS: Checking with fontTools.ttx
- com.google.fonts/check/ttx-roundtrip
- 🍞 PASS Hey! It all looks good!
🍞 PASS: Check glyphs have unique unicode codepoints.
- com.google.fonts/check/076
- 🍞 PASS All glyphs have unique unicode codepoint assignments.
🍞 PASS: Check all glyphs have codepoints assigned.
- com.google.fonts/check/077
- 🍞 PASS All glyphs have a codepoint value assigned.
🍞 PASS: Checking unitsPerEm value is reasonable.
- com.google.fonts/check/043
- 🍞 PASS unitsPerEm value on the 'head' table is reasonable.
🍞 PASS: Checking font version fields (head and name table).
- com.google.fonts/check/044
- 🍞 PASS All font version fields match.
🍞 PASS: Font has correct post table version (2 for TTF, 3 for OTF)?
- com.google.fonts/check/015
- 🍞 PASS Font has post table version 2.
🍞 PASS: Description strings in the name table must not contain copyright info.
- com.google.fonts/check/031
- 🍞 PASS Description strings in the name table do not contain any copyright string.
🍞 PASS: Name table entries should not contain line-breaks.
- com.google.fonts/check/057
- 🍞 PASS Name table entries are all single-line (no line-breaks found).
🍞 PASS: Does full font name begin with the font family name?
- com.google.fonts/check/068
- 🍞 PASS Full font name begins with the font family name.
🍞 PASS: Font follows the family naming recommendations?
- com.google.fonts/check/071
- 🍞 PASS Font follows the family naming recommendations.
🍞 PASS: Name table strings must not contain the string 'Reserved Font Name'.
- com.google.fonts/check/152
- 🍞 PASS None of the name table strings contain "Reserved Font Name".
🍞 PASS: Checking Vertical Metric Linegaps.
- com.google.fonts/check/041
- 🍞 PASS OS/2 sTypoLineGap and hhea lineGap are both 0.
🍞 PASS: MaxAdvanceWidth is consistent with values in the Hmtx and Hhea tables?
- com.google.fonts/check/073
- 🍞 PASS MaxAdvanceWidth is consistent with values in the Hmtx and Hhea tables.
🍞 PASS: Does the font have a DSIG table?
- com.google.fonts/check/045
- 🍞 PASS Digital Signature (DSIG) exists.
🍞 PASS: Whitespace and non-breaking space have the same width?
- com.google.fonts/check/050
- 🍞 PASS Whitespace and non-breaking space have the same width.
🍞 PASS: Is there a "kern" table declared in the font?
- com.google.fonts/check/066
- 🍞 PASS Font does not declare an optional "kern" table.
🍞 PASS: Is there any unused data at the end of the glyf table?
- com.google.fonts/check/069
- 🍞 PASS There is no unused data at the end of the glyf table.
🍞 PASS: Check for points out of bounds.
- com.google.fonts/check/075
- 🍞 PASS All glyph paths have coordinates within bounds!
🍞 PASS: Does the number of glyphs in the loca table match the maxp table?
- com.google.fonts/check/180
- 🍞 PASS 'loca' table matches numGlyphs in 'maxp' table.
Summary
💔 ERROR | 🔥 FAIL | 💤 SKIP | ℹ️ INFO | 🍞 PASS | |
---|---|---|---|---|---|
0 | 2 | 8 | 55 | 4 | 64 |
0% | 2% | 6% | 41% | 3% | 48% |
🔥 FAIL MS-FonVal: The isFixedPitch field is nonzero, but hmtx shows the font as proportional
Seems like a false positive to me. The font is clearly a monospace. When I inspect the hmtx table, only the following glyphs are non-monospace
<hmtx>
<mtx name="acutecomb" width="0" lsb="-466"/>
<mtx name="caroncomb.alt" width="0" lsb="-395"/>
<mtx name="dotbelowcomb" width="0" lsb="-451"/>
<mtx name="f_f" width="1480" lsb="139"/>
<mtx name="f_f_i" width="2220" lsb="139"/>
<mtx name="f_f_l" width="2220" lsb="139"/>
<mtx name="fi" width="1480" lsb="139"/>
<mtx name="fl" width="1480" lsb="139"/>
<mtx name="gravecomb" width="0" lsb="-466"/>
<mtx name="hookabovecomb" width="0" lsb="-392"/>
<mtx name="periodcentered.loclCAT" width="0" lsb="-90"/>
<mtx name="periodcentered.loclCAT.alt1" width="0" lsb="-91"/>
<mtx name="tildecomb" width="0" lsb="-543"/>
<mtx name="uni018F" width="702" lsb="64"/>
<mtx name="uni01C4" width="1480" lsb="120"/>
<mtx name="uni01C5" width="1480" lsb="120"/>
<mtx name="uni01C6" width="1480" lsb="106"/>
<mtx name="uni01C7" width="1480" lsb="144"/>
<mtx name="uni01C7.alt1" width="1480" lsb="143"/>
<mtx name="uni01C8" width="1480" lsb="144"/>
<mtx name="uni01C8.alt1" width="1480" lsb="143"/>
<mtx name="uni01C9" width="1480" lsb="155"/>
<mtx name="uni01CA" width="1480" lsb="99"/>
<mtx name="uni01CA.alt1" width="1480" lsb="99"/>
<mtx name="uni01CB" width="1480" lsb="99"/>
<mtx name="uni01CB.alt1" width="1480" lsb="99"/>
<mtx name="uni01CC" width="1480" lsb="98"/>
<mtx name="uni0302" width="0" lsb="-518"/>
<mtx name="uni03020300" width="0" lsb="-518"/>
<mtx name="uni03020301" width="0" lsb="-518"/>
<mtx name="uni03020303" width="0" lsb="-545"/>
<mtx name="uni03020309" width="0" lsb="-518"/>
<mtx name="uni0304" width="0" lsb="-518"/>
<mtx name="uni0306" width="0" lsb="-524"/>
<mtx name="uni03060300" width="0" lsb="-524"/>
<mtx name="uni03060301" width="0" lsb="-524"/>
<mtx name="uni03060303" width="0" lsb="-545"/>
<mtx name="uni03060309" width="0" lsb="-524"/>
<mtx name="uni0307" width="0" lsb="-451"/>
<mtx name="uni0308" width="0" lsb="-562"/>
<mtx name="uni030A" width="0" lsb="-477"/>
<mtx name="uni030B" width="0" lsb="-535"/>
<mtx name="uni030C" width="0" lsb="-518"/>
<mtx name="uni030F" width="0" lsb="-562"/>
<mtx name="uni0311" width="0" lsb="-524"/>
<mtx name="uni031B" width="0" lsb="-417"/>
<mtx name="uni031B.alt" width="0" lsb="-451"/>
<mtx name="uni0324" width="0" lsb="-562"/>
<mtx name="uni0326" width="0" lsb="-431"/>
<mtx name="uni0327" width="0" lsb="-432"/>
<mtx name="uni0327.alt" width="0" lsb="-426"/>
<mtx name="uni0328" width="0" lsb="-500"/>
<mtx name="uni0328.alt" width="0" lsb="-520"/>
<mtx name="uni032E" width="0" lsb="-524"/>
<mtx name="uni0331" width="0" lsb="-518"/>
<mtx name="uni0335" width="0" lsb="-542"/>
<mtx name="uni0336" width="0" lsb="-612"/>
<mtx name="uni0337" width="0" lsb="-539"/>
<mtx name="uni0337.alt" width="0" lsb="-539"/>
<mtx name="uni0338" width="0" lsb="-643"/>
</hmtx>
They're all either marks or ligatures.
Perhaps we should remove this test from FontValidator. @davelab6 thoughts?
Checked on 8/27/18:
Fontbakery report
[23] Family checks
🔥 FAIL: Check font has a license.
🍞 PASS: Checking all files are in the same directory.
🍞 PASS: Fonts have equal unicode encodings?
🍞 PASS: Make sure all font files have the same version value.
🍞 PASS: Fonts have consistent PANOSE proportion?
🍞 PASS: Fonts have consistent PANOSE family type?
🍞 PASS: Fonts have consistent underline thickness?
💤 SKIP: Does DESCRIPTION file contain broken links?
💤 SKIP: Is this a proper HTML snippet?
💤 SKIP: DESCRIPTION.en_us.html must have more than 200 bytes.
💤 SKIP: DESCRIPTION.en_us.html must have less than 1000 bytes.
💤 SKIP: Font designer field in METADATA.pb must not be 'unknown'.
💤 SKIP: METADATA.pb: Ensure designer simple short name.
💤 SKIP: METADATA.pb: Fontfamily is listed on Google Fonts API?
💤 SKIP: METADATA.pb: check if fonts field only has unique "full_name" values.
💤 SKIP: METADATA.pb: check if fonts field only contains unique style:weight pairs.
💤 SKIP: METADATA.pb license is "APACHE2", "UFL" or "OFL"?
💤 SKIP: METADATA.pb should contain at least "menu" and "latin" subsets.
💤 SKIP: METADATA.pb subsets should be alphabetically ordered.
💤 SKIP: METADATA.pb: Copyright notice is the same in all fonts?
💤 SKIP: Check that METADATA.pb family values are all the same.
💤 SKIP: METADATA.pb: According Google Fonts standards, families should have a Regular style.
💤 SKIP: METADATA.pb: Regular should be 400.
[110] MajorMonoDisplay.ttf
💔 ERROR: Checking with Microsoft Font Validator.
Unknown command line option: '-file'
🔥 FAIL: Checking file is named canonically.
🔥 FAIL: "License URL matches License text on name table?
🔥 FAIL: Font enables smart dropout control in "prep" table instructions?
gftools fix-nonhinting
script.The following glyphs do not have the recommended number of contours:
Glyph name: uniF000 Counters detected: 0 Expected: 14
Glyph name: uniF001 Counters detected: 2 Expected: 3
Glyph name: question Counters detected: 3 Expected: 2
Glyph name: B Counters detected: 1 Expected: 2 or 3
Glyph name: D Counters detected: 1 Expected: 2
Glyph name: G Counters detected: 2 Expected: 1
Glyph name: M Counters detected: 2 Expected: 1
Glyph name: R Counters detected: 4 Expected: 1 or 2
Glyph name: V Counters detected: 2 Expected: 1
Glyph name: X Counters detected: 3 Expected: 1
Glyph name: Z Counters detected: 2 Expected: 1
Glyph name: b Counters detected: 3 Expected: 2
Glyph name: e Counters detected: 1 Expected: 2
Glyph name: g Counters detected: 1 Expected: 2 or 3
Glyph name: i Counters detected: 1 Expected: 2
Glyph name: j Counters detected: 1 Expected: 2
Glyph name: r Counters detected: 2 Expected: 1
Glyph name: dieresis Counters detected: 4 Expected: 2
Glyph name: uni00AD Counters detected: 0 Expected: 1
Glyph name: questiondown Counters detected: 1 Expected: 2
Glyph name: Adieresis Counters detected: 6 Expected: 4
Glyph name: Edieresis Counters detected: 5 Expected: 3
Glyph name: Idieresis Counters detected: 5 Expected: 3
Glyph name: Eth Counters detected: 1 Expected: 2
Glyph name: Odieresis Counters detected: 6 Expected: 4
Glyph name: Udieresis Counters detected: 5 Expected: 3
Glyph name: adieresis Counters detected: 6 Expected: 4
Glyph name: ae Counters detected: 2 Expected: 3
Glyph name: egrave Counters detected: 2 Expected: 3
Glyph name: eacute Counters detected: 2 Expected: 3
Glyph name: ecircumflex Counters detected: 2 Expected: 3
Glyph name: edieresis Counters detected: 5 Expected: 4
Glyph name: idieresis Counters detected: 5 Expected: 3
Glyph name: odieresis Counters detected: 6 Expected: 4
Glyph name: divide Counters detected: 5 Expected: 3
Glyph name: udieresis Counters detected: 5 Expected: 3
Glyph name: ydieresis Counters detected: 5 Expected: 3
Glyph name: uniE0FF Counters detected: 0 Expected: 7
Glyph name: Cdotaccent Counters detected: 3 Expected: 2
Glyph name: cdotaccent Counters detected: 3 Expected: 2
Glyph name: Dcaron Counters detected: 2 Expected: 3
Glyph name: Dcroat Counters detected: 1 Expected: 2
Glyph name: emacron Counters detected: 2 Expected: 3
Glyph name: ebreve Counters detected: 2 Expected: 3
Glyph name: Edotaccent Counters detected: 3 Expected: 2
Glyph name: ecaron Counters detected: 2 Expected: 3
Glyph name: Gcircumflex Counters detected: 3 Expected: 2
Glyph name: gcircumflex Counters detected: 2 Expected: 3 or 4
Glyph name: Gbreve Counters detected: 3 Expected: 2
Glyph name: gbreve Counters detected: 2 Expected: 3 or 4
Glyph name: Gdotaccent Counters detected: 4 Expected: 2
Glyph name: uni0122 Counters detected: 3 Expected: 2
Glyph name: hbar Counters detected: 2 Expected: 1
Glyph name: iogonek Counters detected: 1 Expected: 2 or 3
Glyph name: Idotaccent Counters detected: 3 Expected: 2
Glyph name: Ldot Counters detected: 1 Expected: 2
Glyph name: ldot Counters detected: 1 Expected: 2
Glyph name: Ohungarumlaut Counters detected: 2 Expected: 4
Glyph name: oe Counters detected: 2 Expected: 3
Glyph name: Racute Counters detected: 5 Expected: 3
Glyph name: racute Counters detected: 3 Expected: 2
Glyph name: uni0156 Counters detected: 5 Expected: 3
Glyph name: uni0157 Counters detected: 3 Expected: 2
Glyph name: Rcaron Counters detected: 5 Expected: 3
Glyph name: rcaron Counters detected: 3 Expected: 2
Glyph name: Wcircumflex Counters detected: 3 Expected: 2
Glyph name: Ydieresis Counters detected: 5 Expected: 3
Glyph name: Zacute Counters detected: 3 Expected: 2
Glyph name: Zdotaccent Counters detected: 4 Expected: 2
Glyph name: zdotaccent Counters detected: 3 Expected: 2
Glyph name: Zcaron Counters detected: 3 Expected: 2
Glyph name: uni01C5 Counters detected: 3 Expected: 4
Glyph name: uni01C8 Counters detected: 2 Expected: 3
Glyph name: uni01C9 Counters detected: 2 Expected: 3
Glyph name: uni01CB Counters detected: 2 Expected: 3
Glyph name: uni01CC Counters detected: 2 Expected: 3
Glyph name: Gcaron Counters detected: 3 Expected: 2
Glyph name: gcaron Counters detected: 2 Expected: 3 or 4
Glyph name: aeacute Counters detected: 3 Expected: 4
Glyph name: uni0205 Counters detected: 3 Expected: 4
Glyph name: uni0206 Counters detected: 1 Expected: 2
Glyph name: uni0207 Counters detected: 2 Expected: 3
Glyph name: uni020B Counters detected: 1 Expected: 2
Glyph name: uni020C Counters detected: 2 Expected: 4
Glyph name: uni020E Counters detected: 2 Expected: 3
Glyph name: uni0210 Counters detected: 6 Expected: 4
Glyph name: uni0211 Counters detected: 4 Expected: 3
Glyph name: uni0212 Counters detected: 5 Expected: 3
Glyph name: uni022A Counters detected: 7 Expected: 5
Glyph name: uni022B Counters detected: 7 Expected: 5
Glyph name: uni0230 Counters detected: 1 Expected: 4
Glyph name: uni0231 Counters detected: 5 Expected: 4
Glyph name: approxequal Counters detected: 1 Expected: 2
Glyph name: lessequal Counters detected: 1 Expected: 2
Glyph name: greaterequal Counters detected: 1 Expected: 2
Glyph name: dotaccent Counters detected: 2 Expected: 1
Glyph name: f_f_i Counters detected: 3 Expected: 1, 2 or 4
Glyph name: uni0307 Counters detected: 2 Expected: 1
Glyph name: uni0308 Counters detected: 4 Expected: 2
Glyph name: dotbelowcomb Counters detected: 2 Expected: 1
Glyph name: uni0324 Counters detected: 4 Expected: 2
Glyph name: colonmonetary Counters detected: 2 Expected: 1 or 3
Glyph name: peseta Counters detected: 1 Expected: 2, 3 or 4
Glyph name: eogonek Counters detected: 1 Expected: 2
Glyph name: uni0123 Counters detected: 2 Expected: 3 or 4
Glyph name: Wgrave Counters detected: 3 Expected: 2
Glyph name: Wacute Counters detected: 3 Expected: 2
Glyph name: Wdieresis Counters detected: 6 Expected: 3
Glyph name: wdieresis Counters detected: 5 Expected: 3
Glyph name: uni1EA0 Counters detected: 4 Expected: 3
Glyph name: uni1EA1 Counters detected: 4 Expected: 3
Glyph name: uni1EAC Counters detected: 5 Expected: 4
Glyph name: uni1EAD Counters detected: 5 Expected: 4
Glyph name: uni1EB6 Counters detected: 5 Expected: 4
Glyph name: uni1EB7 Counters detected: 5 Expected: 4
Glyph name: uni1EB8 Counters detected: 3 Expected: 2
Glyph name: uni1EBB Counters detected: 2 Expected: 3
Glyph name: uni1EBD Counters detected: 2 Expected: 3
Glyph name: uni1EBF Counters detected: 3 Expected: 4
Glyph name: uni1EC1 Counters detected: 3 Expected: 4
Glyph name: uni1EC3 Counters detected: 3 Expected: 4
Glyph name: uni1EC5 Counters detected: 3 Expected: 4
Glyph name: uni1EC6 Counters detected: 4 Expected: 3
Glyph name: uni1EC7 Counters detected: 1 Expected: 4
Glyph name: uni1ECA Counters detected: 3 Expected: 2
Glyph name: uni1ECC Counters detected: 4 Expected: 3
Glyph name: uni1ECD Counters detected: 4 Expected: 3
Glyph name: uni1ECE Counters detected: 2 Expected: 3
Glyph name: uni1ED0 Counters detected: 3 Expected: 4
Glyph name: uni1ED8 Counters detected: 1 Expected: 4
Glyph name: uni1ED9 Counters detected: 5 Expected: 4
Glyph name: uni1EE3 Counters detected: 4 Expected: 3
Glyph name: uni1EE4 Counters detected: 3 Expected: 2
Glyph name: uni1EE5 Counters detected: 3 Expected: 2
Glyph name: uni1EF0 Counters detected: 3 Expected: 2
Glyph name: uni1EF1 Counters detected: 3 Expected: 2
Glyph name: uni1EF4 Counters detected: 3 Expected: 2
Glyph name: uni1EF5 Counters detected: 3 Expected: 2
Glyph name: uniEFFD Counters detected: 0 Expected: 9 or 7
💤 SKIP: Checking OS/2 usWeightClass.
💤 SKIP: Check copyright namerecords match license file.
💤 SKIP: Checks METADATA.pb font.name field matches family name declared on the name table.
💤 SKIP: Checks METADATA.pb font.post_script_name matches postscript name declared on the name table.
💤 SKIP: METADATA.pb font.full_name value matches fullname declared on the name table?
💤 SKIP: METADATA.pb font.name value should be same as the family name declared on the name table.
💤 SKIP: METADATA.pb font.full_name and font.post_script_name fields have equivalent values ?
💤 SKIP: METADATA.pb font.filename and font.post_script_name fields have equivalent values?
💤 SKIP: METADATA.pb font.name field contains font name in right format?
💤 SKIP: METADATA.pb font.full_name field contains font name in right format?
💤 SKIP: METADATA.pb font.filename field contains font name in right format?
💤 SKIP: METADATA.pb font.post_script_name field contains font name in right format?
💤 SKIP: Copyright notice on METADATA.pb matches canonical pattern?
💤 SKIP: Copyright notice on METADATA.pb should not contain 'Reserved Font Name'.
💤 SKIP: METADATA.pb: Copyright notice shouldn't exceed 500 chars.
💤 SKIP: METADATA.pb: Filename is set canonically?
💤 SKIP: METADATA.pb font.style "italic" matches font internals?
💤 SKIP: METADATA.pb font.style "normal" matches font internals?
💤 SKIP: METADATA.pb font.name and font.full_name fields match the values declared on the name table?
💤 SKIP: METADATA.pb: Check if fontname is not camel cased.
💤 SKIP: METADATA.pb: Check font name is the same as family name.
💤 SKIP: METADATA.pb: Check that font weight has a canonical value.
💤 SKIP: Checking OS/2 usWeightClass matches weight specified at METADATA.pb.
💤 SKIP: METADATA.pb weight matches postScriptName.
💤 SKIP: METADATA.pb: Font styles are named canonically?
💤 SKIP: Version number has increased since previous release on Google Fonts?
💤 SKIP: Glyphs are similiar to Google Fonts version?
💤 SKIP: TTFAutohint x-height increase value is same as in previous release on Google Fonts?
💤 SKIP: Checking OS/2 fsSelection value.
💤 SKIP: Checking post.italicAngle value.
💤 SKIP: Checking head.macStyle value.
💤 SKIP: Check font has same encoded glyphs as version hosted on fonts.google.com
💤 SKIP: Copyright field for this font on METADATA.pb matches all copyright notice entries on the name table ?
💤 SKIP: Font has all mandatory 'name' table entries ?
💤 SKIP: Check name table: FONT_FAMILY_NAME entries.
💤 SKIP: Check name table: FONT_SUBFAMILY_NAME entries.
💤 SKIP: Check name table: FULL_FONT_NAME entries.
💤 SKIP: Check name table: POSTSCRIPT_NAME entries.
💤 SKIP: Check name table: TYPOGRAPHIC_FAMILY_NAME entries.
💤 SKIP: Check name table: TYPOGRAPHIC_SUBFAMILY_NAME entries.
💤 SKIP: Check a static ttf can be generated from a variable font.
💤 SKIP: FontForge validation outputs error messages?
💤 SKIP: FontForge checks.
💤 SKIP: Is there kerning info for non-ligated sequences?
💤 SKIP: Is there a caret position declared for every ligature?
💤 SKIP: The variable font 'wght' (Weight) axis coordinate must be 400 on the 'Regular' instance.
💤 SKIP: The variable font 'wdth' (Width) axis coordinate must be 100 on the 'Regular' instance.
💤 SKIP: The variable font 'slnt' (Slant) axis coordinate must be zero on the 'Regular' instance.
💤 SKIP: The variable font 'ital' (Italic) axis coordinate must be zero on the 'Regular' instance.
💤 SKIP: The variable font 'opsz' (Optical Size) axis coordinate should be between 9 and 13 on the 'Regular' instance.
💤 SKIP: The variable font 'wght' (Weight) axis coordinate must be 700 on the 'Bold' instance.
ℹ️ INFO: Font has old ttfautohint applied?
ℹ️ INFO: EPAR table present in font?
ℹ️ INFO: Check for font-v versioning
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"
ℹ️ INFO: Font contains all required tables?
🍞 PASS: Fonts have equal numbers of glyphs?
🍞 PASS: Fonts have equal glyph names?
🍞 PASS: Checking OS/2 fsType.
🍞 PASS: Substitute copyright, registered and trademark symbols in name table entries.
🍞 PASS: Description strings in the name table must not exceed 200 characters.
🍞 PASS: Version format is correct in 'name' table?
🍞 PASS: Is 'gasp' table set to optimize rendering?
🍞 PASS: Make sure family name does not begin with a digit.
🍞 PASS: Font has all expected currency sign characters?
🍞 PASS: Are there non-ASCII characters in ASCII-only NAME table entries?
🍞 PASS: Is font em size (ideally) equal to 1000?
🍞 PASS: Length of copyright notice must not exceed 500 characters.
🍞 PASS: Familyname must be unique according to namecheck.fontdata.com
🍞 PASS: Checking OS/2 usWinAscent & usWinDescent.
🍞 PASS: Checking OS/2 Metrics match hhea Metrics.
🍞 PASS: Checking with ftxvalidator.
🍞 PASS: Checking with ots-sanitize.
🍞 PASS: Font contains .notdef as first glyph?
🍞 PASS: Font contains glyphs for whitespace characters?
🍞 PASS: Font has **proper** whitespace glyph names?
🍞 PASS: Whitespace glyphs have ink?
🍞 PASS: Are there unwanted tables?
🍞 PASS: Glyph names are all valid?
🍞 PASS: Font contains unique glyph names?
🍞 PASS: Checking with fontTools.ttx
🍞 PASS: Check glyphs have unique unicode codepoints.
🍞 PASS: Check all glyphs have codepoints assigned.
🍞 PASS: Checking unitsPerEm value is reasonable.
🍞 PASS: Checking font version fields (head and name table).
🍞 PASS: Check if OS/2 xAvgCharWidth is correct.
🍞 PASS: Font has correct post table version (2 for TTF, 3 for OTF)?
🍞 PASS: Description strings in the name table must not contain copyright info.
🍞 PASS: Name table entries should not contain line-breaks.
🍞 PASS: Does full font name begin with the font family name?
🍞 PASS: Font follows the family naming recommendations?
🍞 PASS: Name table strings must not contain the string 'Reserved Font Name'.
🍞 PASS: MaxAdvanceWidth is consistent with values in the Hmtx and Hhea tables?
🍞 PASS: Does the font have a DSIG table?
🍞 PASS: Whitespace and non-breaking space have the same width?
🍞 PASS: Is there a "kern" table declared in the font?
🍞 PASS: Is there any unused data at the end of the glyf table?
🍞 PASS: Check for points out of bounds.
🍞 PASS: Does the number of glyphs in the loca table match the maxp table?
Summary
The text was updated successfully, but these errors were encountered: