Changeset 411

Show
Ignore:
Timestamp:
07/22/08 18:34:30 (5 months ago)
Author:
odole
Message:

2008-07-22 Olivier DOLE <odole@pleyo.com>

Reviewed by Mario Bensi.
Enable bold implementation for embedded fonts.
Fix font crash on acid3 (see #273).

  • WKAL/Concretizations/Fonts/Embedded/BCFontPlatformDataEmbedded.cpp:
    (WKAL::FontPlatformData::FontPlatformData):
    (WKAL::FontPlatformData::~FontPlatformData):
  • WKAL/Concretizations/Fonts/Embedded/BCSimpleFontDataEmbedded.cpp:
    (WKAL::SimpleFontData::smallCapsFontData):
    (WKAL::SimpleFontData::containsCharacters):
  • WKAL/Concretizations/Fonts/Freetype/BCFontPlatformDataFreetype.cpp:
    (WKAL::FontPlatformData::FontPlatformData):
Files:

Legend:

Unmodified
Added
Removed
Modified
Copied
Moved
  • trunk/BAL/ChangeLogOWB

    r410 r411  
     12008-07-22  Olivier DOLE  <odole@pleyo.com> 
     2 
     3        Reviewed by Mario Bensi. 
     4        Enable bold implementation for embedded fonts. 
     5        Fix font crash on acid3 (see #273). 
     6 
     7        * WKAL/Concretizations/Fonts/Embedded/BCFontPlatformDataEmbedded.cpp: 
     8        (WKAL::FontPlatformData::FontPlatformData): 
     9        (WKAL::FontPlatformData::~FontPlatformData): 
     10        * WKAL/Concretizations/Fonts/Embedded/BCSimpleFontDataEmbedded.cpp: 
     11        (WKAL::SimpleFontData::smallCapsFontData): 
     12        (WKAL::SimpleFontData::containsCharacters): 
     13        * WKAL/Concretizations/Fonts/Freetype/BCFontPlatformDataFreetype.cpp: 
     14        (WKAL::FontPlatformData::FontPlatformData): 
     15 
    1162008-07-22  Mario Bensi  <mbensi@pleyo.com> 
    217 
  • trunk/BAL/WKAL/Concretizations/Fonts/Embedded/BCFontPlatformDataEmbedded.cpp

    r243 r411  
    5555    , m_scaledFont(0) 
    5656{ 
    57     if (fontDescription.italic()) 
     57    if (fontDescription.italic()) { 
    5858        m_pixelFont = &NormalItalicPixelFont; 
    59 //     else if (fontDescription.bold()) 
    60 //         m_pixelFont = &NormalBoldPixelFont; 
    61     else  
     59        m_syntheticOblique = true; 
     60    } else if (fontDescription.weight() >= FontWeightBold) { 
     61        m_pixelFont = &NormalBoldPixelFont; 
     62        m_syntheticBold = true; 
     63    } else  
    6264        m_pixelFont = &NormalPixelFont; 
    6365    FontPlatformData::init(); 
     
    103105FontPlatformData::~FontPlatformData() 
    104106{ 
    105     if (m_pixelFont) 
    106         delete m_pixelFont; 
    107     m_pixelFont = NULL; 
    108107} 
    109108 
  • trunk/BAL/WKAL/Concretizations/Fonts/Embedded/BCSimpleFontDataEmbedded.cpp

    r243 r411  
    6262SimpleFontData* SimpleFontData::smallCapsFontData(const FontDescription& fontDescription) const 
    6363{ 
    64     printf("SimpleFontData::smallCapsFontData\n"); 
    6564    if (!m_smallCapsFontData) { 
    6665        FontDescription desc = FontDescription(fontDescription); 
     
    7473bool SimpleFontData::containsCharacters(const UChar* characters, int length) const 
    7574{ 
    76     printf("SimpleFontData::containsCharacters\n"); 
    7775    BalNotImplemented(); 
    7876    return false; 
  • trunk/BAL/WKAL/Concretizations/Fonts/Freetype/BCFontPlatformDataFreetype.cpp

    r376 r411  
    7171 
    7272    FcPattern* pattern = FcPatternCreate(); 
    73     FcPatternReference(pattern); 
    7473     
    7574    if (!FcPatternAddString(pattern, FC_FAMILY, reinterpret_cast<const FcChar8*>(fcfamily))) 
     
    106105    FcResult fcresult; 
    107106    m_pattern = FcFontMatch(config, pattern, &fcresult); 
     107    FcPatternReference(m_pattern); 
    108108    // FIXME: should we set some default font? 
    109109    if (!m_pattern)