obs-text: Fix changing fonts for Qt 6.7+ #12483
Open
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.
Description
Add support for variable font weights to obs-text (the GDI+ Text Source).
Instead of simply checking if a font is bold or not (which in Qt is equivalent to
font.weight() > Medium/font.weight() > 500),Motivation and Context
Fixes #12393
https://doc.qt.io/qt-6.8/qfont.html#Weight-enum
https://learn.microsoft.com/en-us/windows/win32/api/wingdi/ns-wingdi-logfontw
How Has This Been Tested?
Tested locally on Windows 11.
For the most part, this improves user experience when using variable fonts. Some changes, such as between Regular and Medium styles, still do not seem to show a difference, even if the code does not actually call
UpdateFont().Types of changes
Checklist: