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

In italic fonts, Caret Slope shouldn't be 1 #3670

Closed
5 tasks
Tracked by #3611
RosaWagner opened this issue Mar 17, 2022 · 1 comment · Fixed by #4019
Closed
5 tasks
Tracked by #3611

In italic fonts, Caret Slope shouldn't be 1 #3670

RosaWagner opened this issue Mar 17, 2022 · 1 comment · Fixed by #4019
Assignees
Labels
New check proposal We expect new check proposals to include a detailed rationale description and a suggested check-id P1 Quick Profile: Universal Checks that evaluate adherence to the best practices shared among the type design community Severity 3
Milestone

Comments

@RosaWagner
Copy link
Contributor

RosaWagner commented Mar 17, 2022

Should be triggered if "Italic" is part of the file name, or NameID2, or NameID17, or italicAngle != 0, or is italic.
The ticked cases indicates where you can already find it.

Caret Slope shouldn't be 1:

WARN
Since those values are calculated by the font editor, which can lead to differences in rounding, I would not check for the exact value, but fail if, in hhea table, caretRise = 1, and if caretRun = 0 which are values for upright fonts, and eventually suggest calculated values (according to italicAngle and UPM).

https://developer.apple.com/fonts/TrueType-Reference-Manual/RM06/Chap6hhea.html

The caretSlopeRise and caretSlopeRun are used to specify the mathematical slope of the proper angle for the caret when displayed with this font. The slope is equal to caretSlopeRise divided by caretSlopeRun. Thus, a rise of 1 and run of 0 will specify a vertical caret (infinite slope). A rise of 0 and run of 1 will specify a horizontal caret (zero slope). Something in-between will be desirable for fonts whose glyphs are obliqued or italic. For example, one could use a rise of 2048 and a run of 270 for a slope of 7.6, which corresponds to an angle of 82.5°. (tan(82.5°) = 7.6)

Currently in Profile

  • in google-font profile
  • in universal profile
  • in opentype profile

Currently in Format

  • in VF check
  • in static check
@RosaWagner RosaWagner added the New check proposal We expect new check proposals to include a detailed rationale description and a suggested check-id label Mar 17, 2022
@vv-monsalve
Copy link
Collaborator

Profiles where it should be included

  • in google-font profile
  • in universal profile
  • in opentype profile

Format

  • in VF check
  • in static check

@RosaWagner RosaWagner added this to the 0.8.12 milestone Sep 22, 2022
@RosaWagner RosaWagner added the Profile: Universal Checks that evaluate adherence to the best practices shared among the type design community label Nov 9, 2022
@yanone yanone mentioned this issue Jan 16, 2023
3 tasks
@felipesanches felipesanches modified the milestones: 0.8.12, 0.8.11 Jan 16, 2023
@yanone yanone linked a pull request Jan 17, 2023 that will close this issue
3 tasks
felipesanches pushed a commit that referenced this issue Jan 19, 2023
Check for hhea.caretSlopeRise and hhea.caretSlopeRun to match post.italicAngle
(issue #3670)
felipesanches pushed a commit that referenced this issue Jan 19, 2023
Check for hhea.caretSlopeRise and hhea.caretSlopeRun to match post.italicAngle
(issue #3670)
felipesanches pushed a commit that referenced this issue Jan 19, 2023
Check for hhea.caretSlopeRise and hhea.caretSlopeRun to match post.italicAngle
(issue #3670)
felipesanches pushed a commit that referenced this issue Jan 19, 2023
Check for hhea.caretSlopeRise and hhea.caretSlopeRun to match post.italicAngle
(issue #3670)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
New check proposal We expect new check proposals to include a detailed rationale description and a suggested check-id P1 Quick Profile: Universal Checks that evaluate adherence to the best practices shared among the type design community Severity 3
Projects
None yet
Development

Successfully merging a pull request may close this issue.

4 participants