static FontCascade dragLabelFont(int size, bool bold, FontRenderingMode renderingMode) { FontCascade result; NONCLIENTMETRICS metrics; metrics.cbSize = sizeof(metrics); SystemParametersInfo(SPI_GETNONCLIENTMETRICS, metrics.cbSize, &metrics, 0); FontCascadeDescription description; description.setWeight(bold ? FontWeightBold : FontWeightNormal); description.setOneFamily(metrics.lfSmCaptionFont.lfFaceName); description.setSpecifiedSize((float)size); description.setComputedSize((float)size); description.setRenderingMode(renderingMode); result = FontCascade(description, 0, 0); result.update(0); return result; }
static FontCascade makeFont(const WebFontDescription& description) { AtomicString::init(); String fontFamilyString(description.family, description.familyLength); FontCascadeDescription f; f.setOneFamily(fontFamilyString); f.setSpecifiedSize(description.size); f.setComputedSize(description.size); f.setIsItalic(description.italic); f.setWeight(description.bold ? FontWeightBold : FontWeightNormal); f.setIsAbsoluteSize(true); FontSmoothingType smoothingType; if (SUCCEEDED(WebPreferences::sharedStandardPreferences()->fontSmoothing(&smoothingType))) f.setRenderingMode(smoothingType == FontSmoothingTypeWindows ? AlternateRenderingMode : NormalRenderingMode); FontCascade font(f, 0, 0); font.update(0); return font; }