Don't support subpixel positioning for color fonts
This comes at a price and it does not really make sense for emojis. Change-Id: I57148bff48a48bb81a03203626df25646c9acb6a Reviewed-by: Eirik Aavitsland <eirik.aavitsland@qt.io> (cherry picked from commit fd9c9788f73cb088229701dd92443aa04005a4a3) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
This commit is contained in:
parent
ca1b4baf09
commit
2e3439dc94
@ -54,7 +54,7 @@ public:
|
|||||||
bool canRender(const QChar *string, int len) const override;
|
bool canRender(const QChar *string, int len) const override;
|
||||||
|
|
||||||
int synthesized() const override { return synthesisFlags; }
|
int synthesized() const override { return synthesisFlags; }
|
||||||
bool supportsHorizontalSubPixelPositions() const override { return true; }
|
bool supportsHorizontalSubPixelPositions() const override { return !isColorFont(); }
|
||||||
bool supportsVerticalSubPixelPositions() const override { return false; }
|
bool supportsVerticalSubPixelPositions() const override { return false; }
|
||||||
|
|
||||||
QFixed lineThickness() const override;
|
QFixed lineThickness() const override;
|
||||||
|
@ -152,8 +152,9 @@ private:
|
|||||||
QFixed emSquareSize() const override;
|
QFixed emSquareSize() const override;
|
||||||
bool supportsHorizontalSubPixelPositions() const override
|
bool supportsHorizontalSubPixelPositions() const override
|
||||||
{
|
{
|
||||||
return default_hint_style == HintLight ||
|
return !isColorFont()
|
||||||
default_hint_style == HintNone;
|
&& (default_hint_style == HintLight ||
|
||||||
|
default_hint_style == HintNone);
|
||||||
}
|
}
|
||||||
|
|
||||||
bool supportsVerticalSubPixelPositions() const override
|
bool supportsVerticalSubPixelPositions() const override
|
||||||
|
@ -688,7 +688,8 @@ QImage QWindowsFontEngineDirectWrite::alphaMapForGlyph(glyph_t glyph,
|
|||||||
bool QWindowsFontEngineDirectWrite::supportsHorizontalSubPixelPositions() const
|
bool QWindowsFontEngineDirectWrite::supportsHorizontalSubPixelPositions() const
|
||||||
{
|
{
|
||||||
DWRITE_RENDERING_MODE renderMode = hintingPreferenceToRenderingMode(fontDef);
|
DWRITE_RENDERING_MODE renderMode = hintingPreferenceToRenderingMode(fontDef);
|
||||||
return (renderMode != DWRITE_RENDERING_MODE_GDI_CLASSIC
|
return (!isColorFont()
|
||||||
|
&& renderMode != DWRITE_RENDERING_MODE_GDI_CLASSIC
|
||||||
&& renderMode != DWRITE_RENDERING_MODE_GDI_NATURAL
|
&& renderMode != DWRITE_RENDERING_MODE_GDI_NATURAL
|
||||||
&& renderMode != DWRITE_RENDERING_MODE_ALIASED);
|
&& renderMode != DWRITE_RENDERING_MODE_ALIASED);
|
||||||
}
|
}
|
||||||
|
Loading…
x
Reference in New Issue
Block a user