diff options
author | Rüdiger Timm <rt@openoffice.org> | 2006-05-05 07:57:09 +0000 |
---|---|---|
committer | Rüdiger Timm <rt@openoffice.org> | 2006-05-05 07:57:09 +0000 |
commit | 5f4957f32f4b434a8e9322c5cab52b432fb9e33e (patch) | |
tree | 57161adbbfbcfced5dc2dd8ab0efb78b2e2bd5d4 /psprint | |
parent | 89f0243cd14f173b7868f0fd62ef80a1c7db35d5 (diff) |
INTEGRATION: CWS vcl57 (1.17.2); FILE MERGED
2006/04/07 13:00:30 pl 1.17.2.1: #i64109# fix performance issue entered with i61841
Diffstat (limited to 'psprint')
-rw-r--r-- | psprint/source/fontmanager/fontconfig.cxx | 42 |
1 files changed, 14 insertions, 28 deletions
diff --git a/psprint/source/fontmanager/fontconfig.cxx b/psprint/source/fontmanager/fontconfig.cxx index 3d9e19d1c214..bd1d91309297 100644 --- a/psprint/source/fontmanager/fontconfig.cxx +++ b/psprint/source/fontmanager/fontconfig.cxx @@ -4,9 +4,9 @@ * * $RCSfile: fontconfig.cxx,v $ * - * $Revision: 1.17 $ + * $Revision: 1.18 $ * - * last change: $Author: obo $ $Date: 2006-03-29 11:21:45 $ + * last change: $Author: rt $ $Date: 2006-05-05 08:57:09 $ * * The Contents of this file are made available subject to * the terms of GNU Lesser General Public License Version 2.1. @@ -337,6 +337,8 @@ bool PrintFontManager::initFontconfig() FC_FILE, FC_OUTLINE, FC_INDEX, + FC_EMBEDDED_BITMAP, + FC_ANTIALIAS, (void *) NULL ); FcPattern* pPattern = rWrapper.FcPatternCreate(); FcFontSet* pFSet = rWrapper.FcFontList( pConfig, pPattern, pOSet ); @@ -357,32 +359,16 @@ bool PrintFontManager::initFontconfig() int nCollectionEntry = -1; FcBool outline = false, embitmap = true, antialias = true; - FcResult eFileRes = rWrapper.FcPatternGetString( pFSet->fonts[i], FC_FILE, 0, &file ); - FcResult eFamilyRes = rWrapper.FcPatternGetString( pFSet->fonts[i], FC_FAMILY, 0, &family ); - FcResult eStyleRes = rWrapper.FcPatternGetString( pFSet->fonts[i], FC_STYLE, 0, &style ); - FcResult eSlantRes = rWrapper.FcPatternGetInteger( pFSet->fonts[i], FC_SLANT, 0, &slant ); - FcResult eWeightRes = rWrapper.FcPatternGetInteger( pFSet->fonts[i], FC_WEIGHT, 0, &weight ); - FcResult eSpacRes = rWrapper.FcPatternGetInteger( pFSet->fonts[i], FC_SPACING, 0, &spacing ); - FcResult eOutRes = rWrapper.FcPatternGetBool( pFSet->fonts[i], FC_OUTLINE, 0, &outline ); - FcResult eIndexRes = rWrapper.FcPatternGetInteger( pFSet->fonts[i], FC_INDEX, 0, &nCollectionEntry ); - - FcResult eEmbeddedBitmap = FcResultNoMatch; - FcResult eAntialias = FcResultNoMatch; - - if (eFamilyRes == FcResultMatch) - { - FcPattern *pMatch = rWrapper.FcPatternCreate(); - rWrapper.FcPatternAddString(pMatch, FC_FAMILY, family); - rWrapper.FcConfigSubstitute( NULL, pMatch, FcMatchPattern ); - FcResult eResult; - if (FcPattern* pResult = rWrapper.FcFontSetMatch( NULL, &pFSet, 1, pMatch, &eResult )) - { - eEmbeddedBitmap = rWrapper.FcPatternGetBool( pResult, FC_EMBEDDED_BITMAP, 0, &embitmap ); - eAntialias = rWrapper.FcPatternGetBool( pResult, FC_ANTIALIAS, 0, &antialias ); - rWrapper.FcPatternDestroy(pResult); - } - rWrapper.FcPatternDestroy(pMatch); - } + FcResult eFileRes = rWrapper.FcPatternGetString( pFSet->fonts[i], FC_FILE, 0, &file ); + FcResult eFamilyRes = rWrapper.FcPatternGetString( pFSet->fonts[i], FC_FAMILY, 0, &family ); + FcResult eStyleRes = rWrapper.FcPatternGetString( pFSet->fonts[i], FC_STYLE, 0, &style ); + FcResult eSlantRes = rWrapper.FcPatternGetInteger( pFSet->fonts[i], FC_SLANT, 0, &slant ); + FcResult eWeightRes = rWrapper.FcPatternGetInteger( pFSet->fonts[i], FC_WEIGHT, 0, &weight ); + FcResult eSpacRes = rWrapper.FcPatternGetInteger( pFSet->fonts[i], FC_SPACING, 0, &spacing ); + FcResult eOutRes = rWrapper.FcPatternGetBool( pFSet->fonts[i], FC_OUTLINE, 0, &outline ); + FcResult eIndexRes = rWrapper.FcPatternGetInteger( pFSet->fonts[i], FC_INDEX, 0, &nCollectionEntry ); + FcResult eEmbeddedBitmap = rWrapper.FcPatternGetBool( pFSet->fonts[i], FC_EMBEDDED_BITMAP, 0, &embitmap ); + FcResult eAntialias = rWrapper.FcPatternGetBool( pFSet->fonts[i], FC_ANTIALIAS, 0, &antialias ); if( eFileRes != FcResultMatch || eFamilyRes != FcResultMatch || eOutRes != FcResultMatch ) continue; |