diff options
Diffstat (limited to 'Source')
| -rw-r--r-- | Source/WebCore/platform/graphics/SimpleFontData.h | 11 |
1 files changed, 7 insertions, 4 deletions
diff --git a/Source/WebCore/platform/graphics/SimpleFontData.h b/Source/WebCore/platform/graphics/SimpleFontData.h index 93726b7a9..8621ca596 100644 --- a/Source/WebCore/platform/graphics/SimpleFontData.h +++ b/Source/WebCore/platform/graphics/SimpleFontData.h @@ -200,16 +200,19 @@ public: bool applyTransforms(GlyphBufferGlyph* glyphs, GlyphBufferAdvance* advances, size_t glyphCount, TypesettingFeatures typesettingFeatures) const { -#if !PLATFORM(MAC) || __MAC_OS_X_VERSION_MIN_REQUIRED <= 1080 +#if PLATFORM(MAC) && __MAC_OS_X_VERSION_MIN_REQUIRED > 1080 + wkCTFontTransformOptions options = (typesettingFeatures & Kerning ? wkCTFontTransformApplyPositioning : 0) | (typesettingFeatures & Ligatures ? wkCTFontTransformApplyShaping : 0); + return wkCTFontTransformGlyphs(m_platformData.ctFont(), glyphs, reinterpret_cast<CGSize*>(advances), glyphCount, options); +#elif PLATFORM(QT) && QT_VERSION >= 0x050100 + QRawFont::LayoutFlags flags = (typesettingFeatures & Kerning) ? QRawFont::KernedAdvances : QRawFont::SeparateAdvances; + return m_platformData.rawFont().advancesForGlyphIndexes(glyphs, advances, glyphCount, flags); +#else UNUSED_PARAM(glyphs); UNUSED_PARAM(advances); UNUSED_PARAM(glyphCount); UNUSED_PARAM(typesettingFeatures); ASSERT_NOT_REACHED(); return false; -#else - wkCTFontTransformOptions options = (typesettingFeatures & Kerning ? wkCTFontTransformApplyPositioning : 0) | (typesettingFeatures & Ligatures ? wkCTFontTransformApplyShaping : 0); - return wkCTFontTransformGlyphs(m_platformData.ctFont(), glyphs, reinterpret_cast<CGSize*>(advances), glyphCount, options); #endif } |
