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

Add check for slnt values are within a common but unintuitive range #2572

Closed
davelab6 opened this issue Jul 1, 2019 · 3 comments
Closed
Assignees
Labels
Milestone

Comments

@davelab6
Copy link
Contributor

davelab6 commented Jul 1, 2019

Observed behaviour

I just saw a VF that has a slnt axis that is currently ranged from 0.0 to 15.0 but sadly https://docs.microsoft.com/en-us/typography/opentype/spec/dvaraxistag_slnt says,

Note that the scale for the Slant axis is interpreted as the angle of slant in counter-clockwise degrees from upright. This means that a typical, right-leaning oblique design will have a negative slant value. This matches the scale used for the italicAngle field in the post table.

That means the range should be 0.0 to -15.0

Expected behaviour

We should check for slnt axes with positive values and WARN if they are encountered, because such values are intended for 'back slanted' designs.

@davelab6 davelab6 added this to the 0.7.10 milestone Jul 1, 2019
@m4rc1e
Copy link
Collaborator

m4rc1e commented Jul 4, 2019

Found this in google/fonts#1908

cc @thundernixon

@thundernixon
Copy link
Contributor

@davelab6 (You are correct – thank you for bringing this to my attention! I'm just not exactly sure where the best place is to ask questions around this spec, so maybe you could point me in the right direction).

I suspect this will cause a lot of user confusion, particularly because the CSS spec for font-style: oblique assumes a clockwise measurement:

Note: the OpenType slnt axis is defined with a positive angle meaning a counter-clockwise slant, the opposite direction to CSS. The CSS implementation will take this into account when using variations to produce oblique faces.

https://drafts.csswg.org/css-fonts-4/#font-style-prop

This can't really change in the CSS spec, because many things in CSS follow a clockwise orientation, such as "top-right-bottom-left" values for margin, padding, borders, etc.

Also, of course, for anyone writing in a left-to-right language or familiar with analog clocks, it's hard to predict that a negative value would make letters slant rightward.

I imagine a primary difficulty with changing the OT spec is that many fonts have already been produced with this unintuitive value for italicAngle... Still, now that end-users will have direct control over slant for fonts with this axis, this negative-value convention will be so obnoxious for anyone making a variable font axis UI. Do sliders for slnt start at 0, all the way to the right? Or do those get flipped, to put negative values to the right? What if one vendor flips this, but others stick with the easier implementation? It will likely be an uphill UX battle for each software vendor and probably for many type designers.

How unchangeable is the OT spec? Would a change like this have to wait for OT 1.9 or 2.0? Is there somewhere better I can complain about this?

felipesanches added a commit to felipesanches/fontbakery that referenced this issue Aug 9, 2019
felipesanches added a commit to felipesanches/fontbakery that referenced this issue Aug 9, 2019
The variable font 'slnt' (Slant) axis coordinate
specifies positive values in its range?
(issue fonttools#2572)
felipesanches added a commit to felipesanches/fontbakery that referenced this issue Aug 9, 2019
- **[com.google.fonts/check/wdth_valid_range]** => com.google.fonts/check/varfont/wdth_valid_range
- **[com.google.fonts/check/wght_valid_range]** => com.google.fonts/check/varfont/wght_valid_range
(issue fonttools#2572)
felipesanches added a commit to felipesanches/fontbakery that referenced this issue Aug 9, 2019
- **[com.google.fonts/check/wdth_valid_range]** => com.google.fonts/check/varfont/wdth_valid_range
- **[com.google.fonts/check/wght_valid_range]** => com.google.fonts/check/varfont/wght_valid_range
(issue fonttools#2572)
felipesanches added a commit that referenced this issue Aug 9, 2019
felipesanches added a commit that referenced this issue Aug 9, 2019
The variable font 'slnt' (Slant) axis coordinate
specifies positive values in its range?
(issue #2572)
felipesanches added a commit that referenced this issue Aug 9, 2019
- **[com.google.fonts/check/wdth_valid_range]** => com.google.fonts/check/varfont/wdth_valid_range
- **[com.google.fonts/check/wght_valid_range]** => com.google.fonts/check/varfont/wght_valid_range
(issue #2572)
@felipesanches
Copy link
Collaborator

Screenshot at 2019-08-09 05:41:53

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

No branches or pull requests

4 participants