VivaRado / Advent

Advent Pro Var
SIL Open Font License 1.1
10 stars 4 forks source link

Mastering for Google fonts (Round 1) #22

Open VivaRado opened 2 years ago

VivaRado commented 2 years ago

@m4rc1e Any chance picking this up this year?

VivaRado commented 2 years ago

Need to change Andreas Kalpakidis to vivarado and push latest version to Gfonts. Please advise.

Should I designate https://github.com/google/fonts/tree/main/catalog/designers/andreaskalpakidis to be changed to vivarado? then this should probably follow: https://github.com/google/fonts/blob/bc09b2c5cc6066c7ab7c1b11e6b6c0a598609d44/ofl/adventpro/METADATA.pb

VivaRado commented 2 years ago

Then pull request the new TTFs to be added here? Please advise. https://github.com/google/fonts/tree/bc09b2c5cc6066c7ab7c1b11e6b6c0a598609d44/ofl/adventpro

VivaRado commented 2 years ago

Advise on actions to push from this repo, not from a fork. Thank you.

davelab6 commented 2 years ago

@VivaRado were you able to the gfregressions tool and see what teh differences are if we upgrade it 'in place'?

VivaRado commented 2 years ago

@davelab6 I would have done this but then I started talking about 35kb SYFF fonts on the chain with @eliheuer The web version is not running so I guess I would have to do lots of hoop jumping to get it running, I am on linux.

yanone commented 2 years ago

@VivaRado I'm assigned to update Advent Pro. What do I need to know?

VivaRado commented 2 years ago

Static Font Files Update:

These are the weights of the old font, now on google fonts ofl here Old and...

...here New are the new sources that will replace those.

In terms of matching whats what, so there are no alterations for existing users,

Old New
AdventPro-Bold.ttf AdventPro-Bold.otf
AdventPro-ExtraLight.ttf AdventPro-ExtraLight.otf
AdventPro-Light.ttf AdventPro-Light.otf
AdventPro-Medium.ttf AdventPro-Medium.otf
AdventPro-SemiBold.ttf AdventPro-SemiBold.otf
AdventPro-Thin.ttf AdventPro-Thin.otf

More Static Font Files and Variable:

In addition to those weights there are many other weights that have to go in, AND a variable version, or a few of them.

The adventpro-def-VF.ttf is the definitive that includes all the variations: weight, width and ital.

Designer information and free Google advertising:

Then, the designer information should be changed, I am still contemplating on this subject because I need two things to happen during this update. I need @vivarado visible in the contributors of the google fonts repo, and in the designer information, cause what is all this for if we can't shamelessly self-promote our company )))

Regressions:

This means @yanone if you can guide my hand on what to do, be specific, gross in detail, and guide me on how to properly pull request a fork of fonts, In place replace the existing fonts as @davelab6 stated nicely "in place" - assuming they pass gfregressions, that does not run on the web for some reason, and I didn't attempt installing on debian, meaning, some help here would be appreciated if the task is easy, if it's tedious, please state that and ill milestone it and get back to you when done so we can move forward, no need to burden you with it, still suggestions and guidance would be appreciated on what I'm regressing against.

I guess that is it, thank you all!

yanone commented 2 years ago

Sorry, I commented using the wrong user account. Let's try again:

Thank you.

Nowadays, Google Fonts processes Variable Fonts only, and the GF API will automatically instantiate static instances as fallbacks for older browsers. Certain conditions need to be met in the VF to ensure the correct mapping of existing static fonts to VF named instances.

Furthermore, the ital axis is not directly supported at the moment. What we do is split the VF into separate Roman and Italic fonts, and the GF API will transparently serve either one depending on the desired ital axis value. The only implication as far as user experience goes will be that Italics can only be chosen either/or, not interpolated continuously. (This is a limitation that exists for the time being and may possibly disappear in the future, upon when we could issue a font update including the original ital axis.) If you want a continuous slider and the Italic glyphs are indeed outline-compatible, the slnt axis should be used instead, which is fully supported today.

Your generated fonts don't need to change for that. We can use fontTools to instantiate two single-use VFs with ital=0 and ital=1 to onboard to Google Fonts.

So typically I would go over the fonts technically, weed out minor problems here and there myself and PR changes back to you. And I would ask and discuss with you when I see the need for bigger changes before touching anything.

Normally I would do the PRs to Google Fonts myself, both for the fonts as well as the designer info, as that's part of the work I get paid for. So unless you’re super eager to do it yourself, there's no need for you to bother, and I won't bother writing the process down for you. (It has already been covered in our docs: https://googlefonts.github.io/gf-guide/)

Please provide me with a description text for the VivaRado designer profile along with a square-shaped PNG avatar and the various outlets you'd like to link out to. You can reach me at post@yanone.de.

As for the fonts, sit back tight and wait either for a PR of mine to your repo or for questions on how to proceed with any certain issue I might find.

yanone commented 2 years ago

I made my changes: https://github.com/VivaRado/Advent/pull/23 Please review and merge this PR.

Afterwards, please address the following 2 issues:

Otherwise it's great work. Only minor fixes are needed, and only one new glyph needs to be added that requires actual drawing (LATIN CAPITAL LETTER SHARP S).

Please let me know when you're done making these changes. But whatever you do, please merge the PR first.

Many thanks Yanone

yanone commented 2 years ago

The packaging of fonts is best done using the gftools packager which automates a PR to google/fonts, outlined here: https://googlefonts.github.io/gf-guide/package.html

Designer info should be PR'd to google/fonts manually to https://github.com/google/fonts/tree/main/catalog/designers. Docs are here: https://googlefonts.github.io/gf-guide/profile.html

Since we’re constantly trying to improve our documentation, it's best that I don't explain any further. If you find the documentation to be misleading or incomplete, please let us know so we can improve it.

VivaRado commented 2 years ago

Missing glyphs where added, all sources updated, fontmake makes variable ok. I have a question about maybe symlinking /sources/advent_pro with /font_source/UFOs/latest/advent_pro so the repo does not have repeating files. Will that be an issue?

yanone commented 2 years ago

Not for me, if it works. Especially where sources are located is up to you, and the same is true for binaries.

The aforementioned packager pulls font binaries from a hard-coded location defined in its yaml file, that's all we need to know.

So if you ask me, you don't need symlinking sources at all. The font repository layout is a recommendation, not a rule. I'd say do what works best for you. As in: remove the duplication altogether if you like. The /sources folder isn't required.

VivaRado commented 2 years ago

I moved the yaml in font_sources/UFOs/, ok I am looking in the docs and as I understand a METADATA.pb file is needed that I can get with gftools add-font script and gftools packager? Do I need a static and variable?

VivaRado commented 2 years ago

I would assume METADATA.pb would look something like this but Italics omitted (google does not support it). This is manually made not generated:

archive: https://github.com/VivaRado/Advent/archive/refs/tags/v2.0.0-test.zip
branch: master
files:
  Advent-2.0.0-test/OFL.txt: OFL.txt
  Advent-2.0.0-test/adventpro.ttf: adventpro.ttf

name: "AdventPro"
designer: "VivaRado, Andreas Kalpakidis"
license: "OFL"
category: "DISPLAY"
category: "SANS_SERIF"
date_added: "2022-10-22"
fonts {
  name: "AdventPro"
  style: "normal"
  weight: 400
  filename: "AdventPro[wght, wdth].ttf"
  post_script_name: "AdventPro"
  full_name: "AdventPro"
  copyright: "Copyright (c) VivaRado, Andreas Kalpakidis (support@vivarado.com) and Advent Pro Project Authors to the extent of their contribution (https://github.com/VivaRado/Advent)"
}
subsets: "latin"
subsets: "latin-ext"
subsets: "greek"
subsets: "menu"
axes {
  tag: "wght"
  min_value: 100.0
  max_value: 900.0
}
axes {
  tag: "wdth"
  min_value: 100.0
  max_value: 200.0
}
axes {
  tag: "ital"
  min_value: 0
  max_value: 1
}
source {
  repository_url: "https://github.com/VivaRado/Advent"
  commit: "6d84ff25fbdd480f3b6914c6336574ccd8c81f23"
}
primary_script: "Latin"
yanone commented 2 years ago

The METADATA.pb file is automatically generated by gftools packager during PR. We never touch it manually, unless there is a miscalculation of the primary_script field, in which case we manually commit a change to the PR during review.

yanone commented 2 years ago

Shall we have a call so I can walk you through the procedures?