summaryrefslogtreecommitdiff
path: root/vcl/source/glyphs
diff options
context:
space:
mode:
authorJens-Heiner Rechtien <hr@openoffice.org>2007-09-26 14:06:53 +0000
committerJens-Heiner Rechtien <hr@openoffice.org>2007-09-26 14:06:53 +0000
commitb13a8f654bda2e53aa5898630c610776320da4e9 (patch)
treee29a0740ad9deece2f3611cec7da9a9560942b54 /vcl/source/glyphs
parentdefc6fb6d474e767255796ac461de120ca7d4f5c (diff)
INTEGRATION: CWS vcl82 (1.145.2); FILE MERGED
2007/08/22 11:32:24 hdu 1.145.2.1: #i72129# use fontconfig's FcFreeTypeCharIndex to rescue fonts with bad CMAP but got POST tables (thank you CMC for the patch!)
Diffstat (limited to 'vcl/source/glyphs')
-rw-r--r--vcl/source/glyphs/gcach_ftyp.cxx4
1 files changed, 4 insertions, 0 deletions
diff --git a/vcl/source/glyphs/gcach_ftyp.cxx b/vcl/source/glyphs/gcach_ftyp.cxx
index 207bfc40c807..898dd583a9b4 100644
--- a/vcl/source/glyphs/gcach_ftyp.cxx
+++ b/vcl/source/glyphs/gcach_ftyp.cxx
@@ -93,6 +93,7 @@ typedef FT_Vector* FT_Vector_CPtr;
#include <fcntl.h>
#include <sys/stat.h>
#include <sys/mman.h>
+ #include <psprint/fontmanager.hxx>
#elif defined(WNT)
#include <io.h>
#define strncasecmp strnicmp
@@ -1160,6 +1161,9 @@ int FreetypeServerFont::GetRawGlyphIndex( sal_UCS4 aChar ) const
// check if symbol aliasing helps
if( (aChar <= 0x00FF) && mpFontInfo->IsSymbolFont() )
nGlyphIndex = FT_Get_Char_Index( maFaceFT, aChar | 0xF000 );
+ // Finally try the postscript name table
+ if (!nGlyphIndex)
+ nGlyphIndex = psp::PrintFontManager::get().FreeTypeCharIndex( maFaceFT, aChar );
}
mpFontInfo->CacheGlyphIndex( aChar, nGlyphIndex );
}