Esempio n. 1
0
FontCacheKey FontDescription::cacheKey(const FontFaceCreationParams& creationParams, FontTraits desiredTraits) const
{
    FontTraits fontTraits = desiredTraits.bitfield() ? desiredTraits : traits();

    unsigned options =
        static_cast<unsigned>(m_syntheticItalic) << 5 | // bit 6
        static_cast<unsigned>(m_syntheticBold) << 4 | // bit 5
        static_cast<unsigned>(m_textRendering) << 2 | // bits 3-4
        static_cast<unsigned>(m_orientation) << 1 | // bit 2
        static_cast<unsigned>(m_subpixelTextPosition); // bit 1

    return FontCacheKey(creationParams, effectiveFontSize(), options | fontTraits.bitfield() << 8);
}
Esempio n. 2
0
FontCacheKey FontDescription::cacheKey(const AtomicString& familyName, FontTraits desiredTraits) const
{
    FontTraits fontTraits = desiredTraits.mask()
        ? desiredTraits
        : traits();

    unsigned options =
        static_cast<unsigned>(m_syntheticItalic) << 7 | // bit 8
        static_cast<unsigned>(m_syntheticBold) << 6 | // bit 7
        static_cast<unsigned>(m_fontSmoothing) << 4 | // bits 5-6
        static_cast<unsigned>(m_textRendering) << 2 | // bits 3-4
        static_cast<unsigned>(m_orientation) << 1 | // bit 2
        static_cast<unsigned>(m_subpixelTextPosition); // bit 1

    return FontCacheKey(familyName, effectiveFontSize(), options | fontTraits.mask() << 8);
}
FontCacheKey FontDescription::cacheKey(const AtomicString& familyName, FontTraitsMask desiredTraits) const
{
    FontTraitsMask traits = desiredTraits
        ? desiredTraits
        : traitsMask();

    unsigned options =
        static_cast<unsigned>(m_syntheticItalic) << 8 | // bit 9
        static_cast<unsigned>(m_syntheticBold) << 7 | // bit 8
        static_cast<unsigned>(m_fontSmoothing) << 5 | // bits 6-7
        static_cast<unsigned>(m_textRendering) << 3 | // bits 4-5
        static_cast<unsigned>(m_orientation) << 2 | // bit 3
        static_cast<unsigned>(m_usePrinterFont) << 1 | // bit 2
        static_cast<unsigned>(m_subpixelTextPosition); // bit 1

    return FontCacheKey(familyName, effectiveFontSize(), options | traits << 9);
}