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

review for PR of TN master #26

Merged
merged 43 commits into from
Sep 23, 2020
Merged

review for PR of TN master #26

merged 43 commits into from
Sep 23, 2020

Conversation

pichotta
Copy link
Contributor

@m4rc1e
is this TN master branch ready for merge PR?

@m4rc1e
Copy link
Contributor

m4rc1e commented Nov 14, 2019

Thanks @pichotta, I'll take a look now.

@m4rc1e
Copy link
Contributor

m4rc1e commented Nov 14, 2019

Fontbakery report

Fontbakery version: 0.7.15

[4] Alegreya-Italic[wght].ttf
🔥 FAIL: Font has old ttfautohint applied?
--- Rationale ---

This check finds which version of ttfautohint was used, by inspecting name
table entries and then finds which version of ttfautohint is currently
installed in the system.


  • 🔥 FAIL Failed to parse ttfautohint version values: installed = '1.8.3'; used_in_font = '1.8.1.43-b0c9' [code: parse-error]
🔥 FAIL: Are there caret positions declared for every ligature?
--- Rationale ---

All ligatures in a font must have corresponding caret (text cursor) positions
defined in the GDEF table, otherwhise, users may experience issues with caret
rendering.


🔥 FAIL: Is there kerning info for non-ligated sequences?
--- Rationale ---

Fonts with ligatures should have kerning on the corresponding non-ligated
sequences for text where ligatures aren't used (eg
https://github.com/impallari/Raleway/issues/14).


WARN: Stricter unitsPerEm criteria for Google Fonts.
--- Rationale ---

Even though the OpenType spec allows unitsPerEm to be any value between 16 and
16384, the Google Fonts project aims at a narrower set of reasonable values.

The spec suggests usage of powers of two in order to get some performance
improvements on legacy renderers, so those values are acceptable.

But value of 500 or 1000 are also acceptable, with the added benefit that it
makes upm math easier for designers, while the performance hit of not using a
power of two is most likely negligible nowadays.

Another acceptable value is 2000. Since TT outlines are all integers (no
floats), then instances in a VF suffer rounding compromises, and therefore a
1000 UPM is to small because it forces too many such compromises.

Therefore 2000 is a good 'new VF standard', because 2000 is a simple 2x
conversion from existing fonts drawn on a 1000 UPM, and anyone who knows what
10 units can do for 1000 UPM will know what 20 units does too.

Additionally, values above 2048 would result in filesize increases with not
much added benefit.


  • 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. [code: legacy-value]

[4] Alegreya[wght].ttf
🔥 FAIL: Font has old ttfautohint applied?
--- Rationale ---

This check finds which version of ttfautohint was used, by inspecting name
table entries and then finds which version of ttfautohint is currently
installed in the system.


  • 🔥 FAIL Failed to parse ttfautohint version values: installed = '1.8.3'; used_in_font = '1.8.1.43-b0c9' [code: parse-error]
🔥 FAIL: Are there caret positions declared for every ligature?
--- Rationale ---

All ligatures in a font must have corresponding caret (text cursor) positions
defined in the GDEF table, otherwhise, users may experience issues with caret
rendering.


🔥 FAIL: Is there kerning info for non-ligated sequences?
--- Rationale ---

Fonts with ligatures should have kerning on the corresponding non-ligated
sequences for text where ligatures aren't used (eg
https://github.com/impallari/Raleway/issues/14).


WARN: Stricter unitsPerEm criteria for Google Fonts.
--- Rationale ---

Even though the OpenType spec allows unitsPerEm to be any value between 16 and
16384, the Google Fonts project aims at a narrower set of reasonable values.

The spec suggests usage of powers of two in order to get some performance
improvements on legacy renderers, so those values are acceptable.

But value of 500 or 1000 are also acceptable, with the added benefit that it
makes upm math easier for designers, while the performance hit of not using a
power of two is most likely negligible nowadays.

Another acceptable value is 2000. Since TT outlines are all integers (no
floats), then instances in a VF suffer rounding compromises, and therefore a
1000 UPM is to small because it forces too many such compromises.

Therefore 2000 is a good 'new VF standard', because 2000 is a simple 2x
conversion from existing fonts drawn on a 1000 UPM, and anyone who knows what
10 units can do for 1000 UPM will know what 20 units does too.

Additionally, values above 2048 would result in filesize increases with not
much added benefit.


  • 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. [code: legacy-value]

Summary

💔 ERROR 🔥 FAIL ⚠ WARN 💤 SKIP ℹ INFO 🍞 PASS 🔎 DEBUG
0 6 2 127 12 146 0
0% 2% 1% 43% 4% 50% 0%

Note: The following loglevels were omitted in this report:

  • SKIP
  • INFO
  • PASS
  • DEBUG

I'll look into the caret and lig fails later on today.


Regressions

Bracket layers missing on oslash/Oslash glyphs

oslash

Double accents have collisions

doublestack

@cjdunn
Copy link

cjdunn commented Nov 14, 2019

@m4rc1e Hmm, I'm not sure what the problem is with the /Oslash

Currently the var font swaps /Oslash between Bold (has bar) and Extra Bold (has no bar). See screenshots attached.
Oslash_bold
Oslash_ex_bold

This seems to match the live Alegreya fonts on Google Fonts:
https://fonts.google.com/specimen/Alegreya?selection.family=Alegreya
files here:
Alegreya-ExtraBold.ttf.zip
Alegreya-Bold.ttf.zip

Am I missing something?

##############################

Regarding the double accents:
I see what you mean about the collisions. Unfortunately it seems that fontmake doesn't do a good job of handling nested components, ie the /Otildeacute glyph in the Black named instance doesn't match the same glyph in the Black UFO master when it uses components. But when it is decomposed it matches. To me this is a fontmake bug. (see screenshot: background is with components, foreground is decomposed)

Screenshot 2019-11-14 11 28 05

I'll file a bug report for fontmake.

In the mean time, it looks like we'll have to decompose all nested components

@cjdunn
Copy link

cjdunn commented Nov 14, 2019

Here's my fontmake bug report:
googlefonts/fontmake#595

@pichotta
Copy link
Contributor Author

@m4rc1e
submitting another pull request after revisions

m4rc1e added a commit to google/fonts that referenced this pull request Dec 13, 2019
@pichotta
Copy link
Contributor Author

@juandelperal
The weight axis variable font for Alegreya is complete. See Issue #23 Will you accept this pull request to merge the [wght].ttf and the .ufo sources into the master?

@juandelperal
Copy link
Contributor

juandelperal commented Sep 18, 2020

Thanks @pichotta
Thanks for your work!

At a first glance I can see that:

  • There are some problems with glyphs collisions:

Screen Shot 2020-09-18 at 09 24 16

  • Now the SC styles aren't small caps variations. (In the glyphs sources we had glyphs replacements and variations for the SC). Take a look at the custom parameters of the SC instances. They had several replacements: (Update Features, Remove Classes, Replace Class…)
  • Connected with the previews point: the instances names are duplicated: there are 2 regulars, 2 bolds… (Before there was one for the normal family and other for SC subfamily)

Thanks

@strarsis
Copy link

This is awesome! When this PR is merged, will the Google Fonts API automatically provide the Variable font format for Alegraya?

@strarsis
Copy link

@pichotta: The PR is merged! Will this be automatically now used by the Google Fonts API?

@pichotta
Copy link
Contributor Author

@juandelperal
@strarsis
Yes, it will be rolled into the Google Fonts API. Do the most recent commits address the concerns posted above on Sept 18?

@juandelperal
Copy link
Contributor

Great! Thanks for fixing that.
Now merging

@juandelperal juandelperal merged commit eb03318 into huertatipografica:master Sep 23, 2020
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

Successfully merging this pull request may close these issues.

6 participants