dwrite: Use aliased outline threshold for GDI target.

This commit is contained in:
Nikolay Sivov 2015-08-13 18:56:38 +03:00 committed by Alexandre Julliard
parent 204d46c674
commit 433b7c04c7
1 changed files with 12 additions and 2 deletions

View File

@ -308,6 +308,7 @@ static HRESULT WINAPI rendertarget_DrawGlyphRun(IDWriteBitmapRenderTarget1 *ifac
IDWriteGlyphRunAnalysis *analysis;
DWRITE_RENDERING_MODE rendermode;
DWRITE_TEXTURE_TYPE texturetype;
IDWriteFontFace1 *fontface1;
RECT target, bounds;
HRESULT hr;
@ -319,8 +320,17 @@ static HRESULT WINAPI rendertarget_DrawGlyphRun(IDWriteBitmapRenderTarget1 *ifac
if (!This->dib.ptr)
return S_OK;
hr = IDWriteFontFace_GetRecommendedRenderingMode(run->fontFace, run->fontEmSize,
This->ppdip, measuring_mode, params, &rendermode);
hr = IDWriteFontFace_QueryInterface(run->fontFace, &IID_IDWriteFontFace1, (void**)&fontface1);
if (hr == S_OK) {
hr = IDWriteFontFace1_GetRecommendedRenderingMode(fontface1, run->fontEmSize, This->ppdip * 96.0f,
This->ppdip * 96.0f, NULL, run->isSideways, DWRITE_OUTLINE_THRESHOLD_ALIASED, measuring_mode,
&rendermode);
IDWriteFontFace1_Release(fontface1);
}
else
hr = IDWriteFontFace_GetRecommendedRenderingMode(run->fontFace, run->fontEmSize,
This->ppdip, measuring_mode, params, &rendermode);
if (FAILED(hr))
return hr;