Reviewed by Darin Adler.
[WebKit-https.git] / WebCore / platform / graphics / win / FontPlatformDataWin.cpp
index b3210de..beedb41 100644 (file)
@@ -128,12 +128,13 @@ static int CALLBACK enumStylesCallback(const LOGFONT* logFont, const TEXTMETRIC*
     return 1;
 }
 
-FontPlatformData::FontPlatformData(HFONT font, float size, bool bold, bool oblique)
+FontPlatformData::FontPlatformData(HFONT font, float size, bool bold, bool oblique, bool useGDI)
     : m_font(font)
     , m_size(size)
     , m_cgFont(0)
     , m_syntheticBold(false)
     , m_syntheticOblique(false)
+    , m_useGDI(useGDI)
 {
     HDC hdc = GetDC(0);
     SaveDC(hdc);
@@ -149,7 +150,7 @@ FontPlatformData::FontPlatformData(HFONT font, float size, bool bold, bool obliq
         GetOutlineTextMetricsW(hdc, bufferSize, metrics);
         WCHAR* faceName = (WCHAR*)((uintptr_t)metrics + (uintptr_t)metrics->otmpFaceName);
 
-        if (bold || oblique) {
+        if (!useGDI && (bold || oblique)) {
             LOGFONT logFont;
 
             int len = min((int)wcslen(faceName), LF_FACESIZE - 1);
@@ -202,6 +203,7 @@ FontPlatformData::FontPlatformData(CGFontRef font, float size, bool bold, bool o
     , m_cgFont(font)
     , m_syntheticBold(bold)
     , m_syntheticOblique(oblique)
+    , m_useGDI(false)
 {
 }