diff --git a/src/gui/text/unix/qfontconfigdatabase.cpp b/src/gui/text/unix/qfontconfigdatabase.cpp index 46e8f5724a..975a583220 100644 --- a/src/gui/text/unix/qfontconfigdatabase.cpp +++ b/src/gui/text/unix/qfontconfigdatabase.cpp @@ -16,7 +16,6 @@ #include #include -#include #include @@ -547,6 +546,11 @@ static void populateFromPattern(FcPattern *pattern, } +static bool isDprScaling() +{ + return !qFuzzyCompare(qApp->devicePixelRatio(), 1.0); +} + QFontconfigDatabase::~QFontconfigDatabase() { FcConfigDestroy(FcConfigGetCurrent()); @@ -651,7 +655,7 @@ QFontEngine::HintStyle defaultHintStyleFromMatch(QFont::HintingPreference hintin break; } - if (QHighDpiScaling::isActive()) + if (isDprScaling()) return QFontEngine::HintNone; int hint_style = 0; @@ -958,7 +962,7 @@ QFont QFontconfigDatabase::defaultFont() const void QFontconfigDatabase::setupFontEngine(QFontEngineFT *engine, const QFontDef &fontDef) const { bool antialias = !(fontDef.styleStrategy & QFont::NoAntialias); - bool forcedAntialiasSetting = !antialias || QHighDpiScaling::isActive(); + bool forcedAntialiasSetting = !antialias || isDprScaling(); const QPlatformServices *services = QGuiApplicationPrivate::platformIntegration()->services(); bool useXftConf = false; diff --git a/src/gui/text/windows/qwindowsfontdatabase.cpp b/src/gui/text/windows/qwindowsfontdatabase.cpp index 7f7dada056..adc06a6c2a 100644 --- a/src/gui/text/windows/qwindowsfontdatabase.cpp +++ b/src/gui/text/windows/qwindowsfontdatabase.cpp @@ -10,7 +10,6 @@ #include #include -#include #include #include @@ -57,7 +56,7 @@ static inline bool useDirectWrite(QFont::HintingPreference hintingPreference, return hintingPreference == QFont::PreferNoHinting || hintingPreference == QFont::PreferVerticalHinting - || (QHighDpiScaling::isActive() && hintingPreference == QFont::PreferDefaultHinting); + || (!qFuzzyCompare(qApp->devicePixelRatio(), 1.0) && hintingPreference == QFont::PreferDefaultHinting); } #endif // !QT_NO_DIRECTWRITE diff --git a/src/gui/text/windows/qwindowsfontenginedirectwrite.cpp b/src/gui/text/windows/qwindowsfontenginedirectwrite.cpp index 04a7a44f27..5946dfe59d 100644 --- a/src/gui/text/windows/qwindowsfontenginedirectwrite.cpp +++ b/src/gui/text/windows/qwindowsfontenginedirectwrite.cpp @@ -12,7 +12,6 @@ #include #include #include -#include #include #if QT_CONFIG(directwrite3) @@ -166,7 +165,7 @@ static DWRITE_MEASURING_MODE renderModeToMeasureMode(DWRITE_RENDERING_MODE rende static DWRITE_RENDERING_MODE hintingPreferenceToRenderingMode(const QFontDef &fontDef) { QFont::HintingPreference hintingPreference = QFont::HintingPreference(fontDef.hintingPreference); - if (QHighDpiScaling::isActive() && hintingPreference == QFont::PreferDefaultHinting) { + if (!qFuzzyCompare(qApp->devicePixelRatio(), 1.0) && hintingPreference == QFont::PreferDefaultHinting) { // Microsoft documentation recommends using asymmetric rendering for small fonts // at pixel size 16 and less, and symmetric for larger fonts. hintingPreference = fontDef.pixelSize > 16.0