font-patcher: Fix scaleGlyph related rounding error #921
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
[why]
Sometimes the patched-in symbols are slightly too big, which shows up in Nerd Font Mono fonts where the destination size is specified exactly.
That issues a warning like:
[how]
For the
scaleGlyph
groups we need to combine the bounding boxes of several symbol glyphs to determine the 'combined' scale we need. Unfortunately when the concrete glyph is finally copied over its size can change minimally.So we need to measure the glyphs in the
scaleGroup
after they have been copied to the to-be-patched font. This is a bit complicated, because we need to know some glyph slot we can use for that.[note]
See also commit
e805b87
font-patcher: Resolve rounding error when rescaling
Fixes: #917
Requirements / Checklist
What does this Pull Request (PR) do?
How should this be manually tested?
Any background context you can provide?
What are the relevant tickets (if any)?
Screenshots (if appropriate or helpful)