7.7 KiB
QA Notes – checking & polishing Fira Code for Google Fonts
- autohint static TTFs
- check extrapolated outlines for issues
Checks to resolve
======================================================================================
Waiting on others
🔥 FAIL: Copyright notices match canonical pattern in fonts
- com.google.fonts/check/font_copyright
- 🔥 FAIL Name Table entry: Copyright notices should match a pattern similar to: 'Copyright 2017 The Familyname Project Authors (git url)' But instead we have got: 'Copyright 2012-2015 The Mozilla Foundation, Telefonica S.A., and Nikita Prokopov (https://github.com/tonsky/FiraCode)'
-
additionally, it's unclear how the original copyright on Fira Mono & Fira Code should best be integrated to credit all designers involved
-
file issue on fontbakery (https://github.com/googlefonts/fontbakery/issues/2419)
-
confirm that current approach is fine (https://github.com/google/fonts/issues/1460#issuecomment-476713822) (seems okay, based on Hangouts discussion)
[119] FiraCode-Light.ttf
🔥 FAIL: Checking file is named canonically.
- com.google.fonts/check/canonical_filename
- 🔥 FAIL This is a variable font, but it is using a naming scheme typical of a static font.
- 🔥 FAIL Please change the font filename to use one of the following valid suffixes for variable fonts: VF, Italic-VF, Roman-VF
- ask if/when this is changing (via hangouts) – Marc: "We’ll batch the vfs once they’ve implemented it"
======================================================================================
Edits and corrected FontBakery checks
⚠ WARN: Stricter unitsPerEm criteria for Google Fonts.
- com.google.fonts/check/unitsperem_strict
- ⚠ WARN Even though unitsPerEm (1000) in this font is reasonable. It is strongly advised to consider changing it to 2000, since it will likely improve the quality of Variable Fonts by avoiding excessive rounding of coordinates on interpolations.
- scale UPM to 2000
🔥 FAIL: Are there non-ASCII characters in ASCII-only NAME table entries?
- com.google.fonts/check/name/ascii_only_entries
- 🔥 FAIL There are 1 strings containing non-ASCII characters in the ASCII-only NAME table entries.
- ℹ INFO Bad string at [nameID 0, 'utf_16_be']: 'b'Copyright © 2015 by Nikita Prokopov''
- remove © symbol
[31] Family checks
🔥 FAIL: METADATA.pb: According Google Fonts standards, families should have a Regular style.
- com.google.fonts/check/metadata/has_regular
- 🔥 FAIL This family lacks a Regular (style: normal and weight: 400) as required by Google Fonts standards.
- this issue is already filed with fontbakery (https://github.com/googlefonts/fontbakery/issues/2378)
🔥 FAIL: Checking OS/2 usWinAscent & usWinDescent.
- com.google.fonts/check/family/win_ascent_and_descent
- 🔥 FAIL OS/2.usWinAscent value should be equal or greater than 1050, but got 935 instead [code: ascent]
- 🔥 FAIL OS/2.usWinDescent value should be equal or greater than 500, but got 265 instead [code: descent]
- run script to correct vertical metrics, recheck
add issueissue exists to gf-docs to update vertical metrics to recommendation at https://github.com/googlefonts/fontbakery/issues/2164#issuecomment-436595886 (will track / manage separately)
🔥 FAIL: Glyph names are all valid?
- com.google.fonts/check/valid_glyphnames
- 🔥 FAIL The following glyph names do not comply with naming conventions: ['numbersign_numbersign_numbersign.liga', 'numbersign_numbersign_numbersign_numbersign.liga', 'numbersign_underscore_parenleft.liga', 'backslash_backslash_backslash.rem', 'numbersign_numbersign_numbersign.liga.rem', 'numbersign_numbersign_numbersign_numbersign.liga.rem', 'semicolon_semicolon_semicolon.rem', 'quadrantUpperLeftAndLowerLeftAndLowerRight', 'quadrantUpperLeftAndUpperRightAndLowerLeft', 'quadrantUpperLeftAndUpperRightAndLowerRight', 'quadrantUpperRightAndLowerLeftAndLowerRight', 'whiteSquareWithUpperLeftQuadrant', 'whiteSquareWithLowerLeftQuadrant', 'whiteSquareWithLowerRightQuadrant', 'whiteSquareWithUpperRightQuadrant', 'asciitilde_asciitilde_greater.liga', 'ampersand_ampersand_ampersand.rem', 'asciitilde_asciitilde_asciitilde.rem'] A glyph name may be up to 31 characters in length, must be entirely comprised of characters from the following set: A-Z a-z 0-9 .(period) (underscore). and must not start with a digit or period. There are a few exceptions such as the special character ".notdef". The glyph names "twocents", "a1", and "" are all valid, while "2cents" and ".twocents" are not.
- issue filed at https://github.com/tonsky/FiraCode/issues/730 – I'm guessing this won't cause any real issues on the web fonts.
- I'll leave these glyphs as they are for now, and let @tonsky handle it if it seems to be the cause of an actual user issue
🔥 FAIL: Variable font weight coordinates must be multiples of 100.
- com.google.fonts/check/varfont_weight_instances
- 🔥 FAIL Found an variable font instance with 'wght'=450.0. This should instead be a multiple of 100.
-
(fontmake also started to fail, as "Retina" instance was given a custom param of
weightClass: 900
) -
uncheck "Retina" instance as
is active
instance -
file issue with FontBakery to ask Dave/Marc about this
450
weight "Retina" instance (https://github.com/googlefonts/fontbakery/issues/2420)- -
change if you find a better approach to keep Retina without disrupting builds / Regular weight
- To set up the instance in GlyhpsApp such that it exports a font as expected: "Retina" gets a custom parameter of
weightClass: 450
, and a glyphs menu-weight of "Normal." Tested in axis-praxis, it seems to work well. All instances have aweightClass
custom parameter.
- To set up the instance in GlyhpsApp such that it exports a font as expected: "Retina" gets a custom parameter of
🔥 FAIL: Checking OS/2 usWeightClass.
- com.google.fonts/check/usweightclass
- 🔥 FAIL OS/2 usWeightClass expected value for 'Light' is 300 but this font has 400.
- explore to find why this would be happening ...
- Encode Sans gets an OS/2 usWeightClass of
100
, matching its default instance.
- Encode Sans gets an OS/2 usWeightClass of
Solution
- Custom Parameters of
Axis Location
needed to be set in source masters (https://github.com/googlei18n/fontmake/issues/540)