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.
Refactor a big part of the code.
I tried to create multiple class so they all have only one or few responsibility (font_parser still has a lot, but it is still the only one in this case).
Changes
There are now 2 kind of font face. "Variable" is for variable font and "Normal" for the rest.
ABCFontFace.get_best_family_name
/ABCFontFace.get_best_exact_name
. The user can also query a family name from a BCP47 tag viaABCFontFace.get_family_name_from_lang
/ABCFontFace.get_exact_name_from_lang
Also, the user can choose between 2 strategy (FontSelectionStrategyLibass and FontSelectionStrategyVSFilter)
need_faux_bold
attribute toFontResult
Also, there are a lot of test that have been done. Now, we have a coverage of ~93% of the code (on the latest version, 2.1.4, it was 81%).