xotypeco / big_shoulders

SIL Open Font License 1.1
69 stars 3 forks source link

Vertical Metrics #11

Closed vv-monsalve closed 3 years ago

vv-monsalve commented 4 years ago

When comparing the current static fonts with the one on the API, the vertical metrics are not the same. This sort of change must be avoided when updating a font to ensure fonts do not break existing documents or websites. (https://github.com/googlefonts/gf-docs/tree/master/Spec#scalable-font-production).

Data comparison between the .ttf on the API (string a), and the current static .ttf on the repository (string b):

Screen Shot 2020-05-14 at 12 38 39

Changes to Diacritics on the font are demanding higher values, but, this could be avoided by adjusting the size, weight, slope, or position of them in complex compound glyphs like the Aringacute or the Vietnamese.

Aringacute

xotypeco commented 4 years ago

change in vertical metric comes from a couple of actual design changes:

1) a change change in the overall weight and color of diacritics to improve how it looks and reads.

2) I deleted an overly-fussy set of diacritics for .case and replaced it with a standard set for both uppers and lowers.

note in frame one, ring is lighter and crashes into the character. I changed that to get what you see in frame two. same for the acute, it is steeper and heavier. both changes made to give diacritics a more consistent color and behavior across families—I didn't discover that the crashing ring was a terrible idea until dealing with Inline.

davelab6 commented 4 years ago

This kind of height increase in an update is more typical when Vietnamese support is added. I believe the latest v metrics recommendation from @m4rc1e means that this doesn't cause an issue on the web, only on Android (which uses the bbox rather than v metrics, fml)

vv-monsalve commented 4 years ago

Well, AFAIK @m4rc1e was really against the VM values changing when updating fonts, to avoid breaking anything down on documents or websites that are already using it. If the family is being updated, the line height must visually match the previous release.

m4rc1e commented 4 years ago

@vv-monsalve do the new vertical metrics alter the visual appearance?

I don't mind if the winAscent and winDescent have been changed if fsSelection bit 7 has been enabled.

vv-monsalve commented 4 years ago

@m4rc1e yep, you are right. Bit 7 is enabled and no visual appearance was altered. I couldn't test it yesterday, but doing now on cyreal.org it looks just fine. Closing this here.

m4rc1e commented 4 years ago

@vv-monsalve Did you also check Win Chrome?

vv-monsalve commented 4 years ago

These are the Browser diffs and previews Result Comparative gifs after running a Dispatcher sandox cheks They look ok to me, wdyt?

Big Shoulder Text Black Safari Sierra 11 Desktop_OS_X_High_Sierra_safari_11 1_ Windows 10 Chrome 69 Desktop_Windows_10_chrome_69 0_ Windows 10 Firefox 62 Desktop_Windows_10_firefox_62 0_

vv-monsalve commented 4 years ago

Although, this sample doesn't display critical cases such as Vietnamese characters. A further check might be needed in that context.

xotypeco commented 4 years ago

diffs look great. I broadened some kerning pairs based on what I saw going wrong in the city's COVID-19 video captions, this seems to reflect that OK.

vv-monsalve commented 4 years ago

Vertical Metrics regarding Vietnamese can be tested with a basic HTML with Vietnamese texts, to ensure there would be no clipping, and to check it on Windows browsers. See this as a reference.