Add TypographicFamilyName to GlyphTypeface and use it for FontCollection #16844
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.
What does the pull request do?
Font files have a primary family name which might include some typeface name (like "Light" or "Bold") as we can see in the XAML below. In addition to that there is a typographic family name which groups all these fonts so then can be resolved with the primary name (in the XAML below that is "Manrope").
This PR adds TypographicFamilyName to the IGlyphTypeface2 interface and uses it in the FontCollection implementations to load fonts via their TypographicFamilyName instead of the regular FamilyName which might include the weight name.
Using this PR users can write e.g, "Manrope" and the font manager will resolve the family name. Previously the font manager wasn't aware of the typographic family name and therefore wasn't able to resolve the expected typeface.
See #16607 for further information about the spec.
What is the current behavior?
What is the updated/expected behavior with this PR?
How was the solution implemented (if it's not obvious)?
Checklist
Breaking changes
Obsoletions / Deprecations
Fixed issues
Fixes: #16607