Skip to content
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

Missing info about how google generates static fonts from variable fonts (Roboto) #53

Open
naturboy opened this issue Sep 16, 2022 · 1 comment

Comments

@naturboy
Copy link

Questions I couldn't find an answer to in the documentation:

  • How does GF decide if a Font is variable or not? When you take a look at the Roboto entry in the GF-Repository (https://github.com/google/fonts/tree/main/apache/roboto) There are clearly Variable Fonts in the directory and referenced in the Metadata.pb but it is not listed as variable font on google fonts it self (https://fonts.google.com/variablefonts?vfquery=roboto) and the API is also doesn’t respond with a variable font.
  • How does Google decide which Fallbacks of an axis are rendered for static purposes? Example: Roboto Condensed exists as its own family on GF but has not font family directory or Metadata.pb file in the Google repository. It clearly must be rendered from the variable font because if it just would be the static directory than there is no explanation why the Medium variant is missing for it on Google fonts but on the other hand this leaves open the question how the weight and width fallbacks are selected for roboto in general because for example the wdth axis has a SemiCondensed variant between Condensed and Normal. Roboto Condensed is also rendered in far less wght variants compared to Roboto.
    Another question that I have come up with is whether the GF-Repository (https://github.com/google/fonts ) is the source of truth and if so which branch it is because at the current state in time it seems like it’s not totally in sync with the actual state that is live. Does a different source of truth exist and if so where can I find it?
@RosaWagner
Copy link
Contributor

RosaWagner commented Sep 16, 2022

GF doesn't decide if a font is variable or not, the font is either variable or not (from the format point of view). So the live version of Roboto is not variable yet :)

What is in the github repo, is the last updated version, and then it takes time before it gets live, because of the billions of websites affected by that update. Lot of validation and QA processes, especially for very popular fonts. In short, google/fonts repo is not directly linked to the API (fortunately).

In a general way, as a user, you have access to 3 different versions of a font:

  • Live version on GF is the one distributed to users
  • Version in github is the last updated to come (or not according to QA result)
  • Version in designer's upstream repo is the most up to date or in progress

The medium variant is missing because the old static version of it was not existing when that version was produced. All VFs have a a medium instance because it is interpolated/generated automatically.

For static fallback definition, you may want to look at the Axis Registry (explained in this chapter: https://googlefonts.github.io/gf-guide/variable.html#axis-registry).

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants