summaryrefslogtreecommitdiff
path: root/vcl
diff options
context:
space:
mode:
authorChris Sherlock <chris.sherlock79@gmail.com>2015-12-31 14:30:49 +1100
committerChris Sherlock <chris.sherlock79@gmail.com>2015-12-31 11:11:55 +0000
commita74a04f98180edc577d31598bc88990d41ef02c7 (patch)
tree99398ef1ab9af05eb39d4a56d234f901d8368048 /vcl
parent23ae179392ace4d5b23b152675c60722beddfdab (diff)
vcl: create accessor functions for ImplDevFontAttributes
Change-Id: I0494a1db1a1e5c164bd5da2d0a221a8db6c494d6 Reviewed-on: https://gerrit.libreoffice.org/21016 Reviewed-by: Chris Sherlock <chris.sherlock79@gmail.com> Tested-by: Chris Sherlock <chris.sherlock79@gmail.com>
Diffstat (limited to 'vcl')
-rw-r--r--vcl/generic/glyphs/gcach_ftyp.cxx8
-rw-r--r--vcl/generic/print/genpspgraphics.cxx34
-rw-r--r--vcl/inc/outfont.hxx48
-rw-r--r--vcl/quartz/ctfonts.cxx10
-rw-r--r--vcl/quartz/salgdi.cxx4
-rw-r--r--vcl/source/font/PhysicalFontFace.cxx2
-rw-r--r--vcl/source/font/PhysicalFontFamily.cxx14
-rw-r--r--vcl/source/gdi/pdfwriter_impl.cxx18
-rw-r--r--vcl/source/outdev/font.cxx4
-rw-r--r--vcl/unx/generic/gdi/cairotextrender.cxx2
-rw-r--r--vcl/win/gdi/salgdi3.cxx52
11 files changed, 110 insertions, 86 deletions
diff --git a/vcl/generic/glyphs/gcach_ftyp.cxx b/vcl/generic/glyphs/gcach_ftyp.cxx
index 36b967f374c9..e9a0c9e870a2 100644
--- a/vcl/generic/glyphs/gcach_ftyp.cxx
+++ b/vcl/generic/glyphs/gcach_ftyp.cxx
@@ -209,9 +209,9 @@ FtFontInfo::FtFontInfo( const ImplDevFontAttributes& rDevFontAttributes,
mpGlyph2Char( nullptr )
{
// prefer font with low ID
- maDevFontAttributes.mnQuality += 10000 - nFontId;
+ maDevFontAttributes.IncreaseQualityBy( 10000 - nFontId );
// prefer font with matching file names
- maDevFontAttributes.mnQuality += mpFontFile->GetLangBoost();
+ maDevFontAttributes.IncreaseQualityBy( mpFontFile->GetLangBoost() );
}
FtFontInfo::~FtFontInfo()
@@ -423,8 +423,8 @@ ImplFTSFontData::ImplFTSFontData( FtFontInfo* pFI, const ImplDevFontAttributes&
: PhysicalFontFace( rDFA, IFTSFONT_MAGIC ),
mpFtFontInfo( pFI )
{
- mbDevice = false;
- mbOrientation = true;
+ SetBuiltInFontFlag( false );
+ SetOrientationFlag( true );
}
ImplFontEntry* ImplFTSFontData::CreateFontInstance( FontSelectPattern& rFSD ) const
diff --git a/vcl/generic/print/genpspgraphics.cxx b/vcl/generic/print/genpspgraphics.cxx
index 149f687308d3..ea55bf946dfa 100644
--- a/vcl/generic/print/genpspgraphics.cxx
+++ b/vcl/generic/print/genpspgraphics.cxx
@@ -878,7 +878,7 @@ bool GenPspGraphics::AddTempDevFontHelper( PhysicalFontCollection* pFontCollecti
// inform glyph cache of new font
ImplDevFontAttributes aDFA = GenPspGraphics::Info2DevFontAttributes( aInfo );
- aDFA.mnQuality += 5800;
+ aDFA.IncreaseQualityBy( 5800 );
int nFaceNum = rMgr.getFontFaceNumber( aInfo.m_nID );
@@ -921,7 +921,7 @@ void GenPspGraphics::GetFontMetric( ImplFontMetricData *pMetric, int )
{
ImplDevFontAttributes aDFA = Info2DevFontAttributes( aInfo );
static_cast<ImplFontAttributes&>(*pMetric) = aDFA;
- pMetric->mbDevice = aDFA.mbDevice;
+ pMetric->mbDevice = aDFA.IsBuiltInFont();
pMetric->mbScalableFont = true;
pMetric->mbTrueTypeFont = false; // FIXME, needed?
@@ -1093,40 +1093,34 @@ ImplDevFontAttributes GenPspGraphics::Info2DevFontAttributes( const psp::FastPri
aDFA.SetWidthType( rInfo.m_eWidth );
aDFA.SetPitch( rInfo.m_ePitch );
aDFA.SetSymbolFlag( (rInfo.m_aEncoding == RTL_TEXTENCODING_SYMBOL) );
- aDFA.mbSubsettable = rInfo.m_bSubsettable;
- aDFA.mbEmbeddable = rInfo.m_bEmbeddable;
+ aDFA.SetSubsettableFlag( rInfo.m_bSubsettable );
+ aDFA.SetEmbeddableFlag( rInfo.m_bEmbeddable );
switch( rInfo.m_eType )
{
case psp::fonttype::TrueType:
- aDFA.mnQuality = 512;
- aDFA.mbDevice = false;
+ aDFA.SetQuality( 512 );
+ aDFA.SetBuiltInFontFlag( false );
break;
case psp::fonttype::Type1:
- aDFA.mnQuality = 0;
- aDFA.mbDevice = false;
+ aDFA.SetQuality( 0 );
+ aDFA.SetBuiltInFontFlag( false );
break;
default:
- aDFA.mnQuality = 0;
- aDFA.mbDevice = false;
+ aDFA.SetQuality( 0 );
+ aDFA.SetBuiltInFontFlag( false );
break;
}
- aDFA.mbOrientation = true;
+ aDFA.SetOrientationFlag( true );
// add font family name aliases
::std::list< OUString >::const_iterator it = rInfo.m_aAliases.begin();
- bool bHasMapNames = false;
for(; it != rInfo.m_aAliases.end(); ++it )
- {
- if( bHasMapNames )
- aDFA.maMapNames += ";";
- aDFA.maMapNames += *it;
- bHasMapNames = true;
- }
+ aDFA.AddMapName( *it );
#if OSL_DEBUG_LEVEL > 2
- if( bHasMapNames )
+ if( aDFA.HasMapNames() )
{
OString aOrigName(OUStringToOString(aDFA.GetFamilyName(), osl_getThreadTextEncoding()));
OString aAliasNames(OUStringToOString(aDFA.GetAliasNames(), osl_getThreadTextEncoding()));
@@ -1186,7 +1180,7 @@ void GenPspGraphics::AnnounceFonts( PhysicalFontCollection* pFontCollection, con
}
ImplPspFontData* pFD = new ImplPspFontData( aInfo );
- pFD->mnQuality += nQuality;
+ pFD->IncreaseQualityBy( nQuality );
pFontCollection->Add( pFD );
}
diff --git a/vcl/inc/outfont.hxx b/vcl/inc/outfont.hxx
index 00245ffc57fb..88d5d94ca7d2 100644
--- a/vcl/inc/outfont.hxx
+++ b/vcl/inc/outfont.hxx
@@ -82,16 +82,46 @@ private:
class ImplDevFontAttributes : public ImplFontAttributes
{
public:
- bool IsEmbeddable() const { return mbEmbeddable; }
- bool IsSubsettable() const { return mbSubsettable; }
+ int GetQuality() const { return mnQuality; }
+ OUString GetMapNames() const { return maMapNames; }
+
+ bool IsBuiltInFont() const { return mbDevice; }
+ bool CanEmbed() const { return mbEmbeddable; }
+ bool CanSubset() const { return mbSubsettable; }
+ bool CanRotate() const { return mbOrientation; }
+ bool HasMapNames() const { return (maMapNames.getLength() > 0); }
+
+ void SetQuality( int nQuality ) { mnQuality = nQuality; }
+ void IncreaseQualityBy( int nQualityAmount ) { mnQuality += nQualityAmount; }
+ void DecreaseQualityBy( int nQualityAmount ) { mnQuality -= nQualityAmount; }
+ void SetMapNames( OUString aMapNames ) { maMapNames = aMapNames; }
+ void AddMapName( OUString aMapName )
+ {
+ if( maMapNames.getLength() > 0 )
+ {
+ maMapNames += ";";
+ }
+ else
+ {
+ SAL_WARN("vcl.fonts", "New map name is empty");
+ return;
+ }
+
+ maMapNames += aMapName;
+ }
+
+ void SetBuiltInFontFlag( bool bIsBuiltInFont ) { mbDevice = bIsBuiltInFont; }
+ void SetEmbeddableFlag ( bool bEmbeddable ) { mbEmbeddable = bEmbeddable; }
+ void SetSubsettableFlag( bool bSubsettable ) { mbSubsettable = bSubsettable; }
+ void SetOrientationFlag( bool bCanRotate ) { mbOrientation = bCanRotate; }
-public: // TODO: hide members behind accessor methods
- OUString maMapNames; // List of family name aliases separated with ';'
- int mnQuality; // Quality (used when similar fonts compete)
- bool mbOrientation; // true: physical font can be rotated
- bool mbDevice; // true: built in font
- bool mbSubsettable; // true: a subset of the font can be created
- bool mbEmbeddable; // true: the font can be embedded
+private:
+ OUString maMapNames; // List of family name aliases separated with ';'
+ int mnQuality; // Quality (used when similar fonts compete)
+ bool mbOrientation; // true: physical font can be rotated
+ bool mbDevice; // true: built in font
+ bool mbSubsettable; // true: a subset of the font can be created
+ bool mbEmbeddable; // true: the font can be embedded
};
class FontSelectPatternAttributes : public ImplFontAttributes
diff --git a/vcl/quartz/ctfonts.cxx b/vcl/quartz/ctfonts.cxx
index a5882ca717d8..1b7fe09fb999 100644
--- a/vcl/quartz/ctfonts.cxx
+++ b/vcl/quartz/ctfonts.cxx
@@ -277,9 +277,9 @@ ImplDevFontAttributes DevFontFromCTFontDescriptor( CTFontDescriptorRef pFD, bool
{
// all CoreText fonts are device fonts that can rotate just fine
ImplDevFontAttributes rDFA;
- rDFA.mbOrientation = true;
- rDFA.mbDevice = true;
- rDFA.mnQuality = 0;
+ rDFA.SetOrientationFlag( true );
+ rDFA.SetBuiltInFontFlag( true );
+ rDFA.SetQuality( 0 );
// reset the font attributes
rDFA.SetFamilyType( FAMILY_DONTKNOW );
@@ -290,8 +290,8 @@ ImplDevFontAttributes DevFontFromCTFontDescriptor( CTFontDescriptorRef pFD, bool
rDFA.SetSymbolFlag( false );
// all scalable fonts on this platform are subsettable
- rDFA.mbEmbeddable = false;
- rDFA.mbSubsettable = true;
+ rDFA.SetEmbeddableFlag( false );
+ rDFA.SetSubsettableFlag( true );
// get font name
#ifdef MACOSX
diff --git a/vcl/quartz/salgdi.cxx b/vcl/quartz/salgdi.cxx
index 32bbb4fe61a1..f8b9fbff711e 100644
--- a/vcl/quartz/salgdi.cxx
+++ b/vcl/quartz/salgdi.cxx
@@ -694,9 +694,9 @@ void AquaSalGraphics::GetGlyphWidths( const PhysicalFontFace* pFontData, bool bV
rGlyphWidths.clear();
rUnicodeEnc.clear();
- if( !pFontData->IsSubsettable() )
+ if( !pFontData->CanSubset() )
{
- if( pFontData->IsEmbeddable() )
+ if( pFontData->CanEmbed() )
{
// get individual character widths
OSL_FAIL("not implemented for non-subsettable fonts!\n");
diff --git a/vcl/source/font/PhysicalFontFace.cxx b/vcl/source/font/PhysicalFontFace.cxx
index d263cf847a45..f306e4bcd761 100644
--- a/vcl/source/font/PhysicalFontFace.cxx
+++ b/vcl/source/font/PhysicalFontFace.cxx
@@ -158,7 +158,7 @@ bool PhysicalFontFace::IsBetterMatch( const FontSelectPattern& rFSD, FontMatchSt
nMatch += 600;
}
- if( mbDevice )
+ if( IsBuiltInFont() )
nMatch += 1;
int nHeightMatch = 0;
diff --git a/vcl/source/font/PhysicalFontFamily.cxx b/vcl/source/font/PhysicalFontFamily.cxx
index 50ab10eeb8f4..8cc691bb9b36 100644
--- a/vcl/source/font/PhysicalFontFamily.cxx
+++ b/vcl/source/font/PhysicalFontFamily.cxx
@@ -116,10 +116,10 @@ bool PhysicalFontFamily::AddFontFace( PhysicalFontFace* pNewFontFace )
if( maFontFaces.empty() )
{
maFamilyName = pNewFontFace->GetFamilyName();
- maMapNames = pNewFontFace->maMapNames;
+ maMapNames = pNewFontFace->GetMapNames();
meFamily = pNewFontFace->GetFamilyType();
mePitch = pNewFontFace->GetPitch();
- mnMinQuality = pNewFontFace->mnQuality;
+ mnMinQuality = pNewFontFace->GetQuality();
}
else
{
@@ -127,8 +127,8 @@ bool PhysicalFontFamily::AddFontFace( PhysicalFontFace* pNewFontFace )
meFamily = pNewFontFace->GetFamilyType();
if( mePitch == PITCH_DONTKNOW )
mePitch = pNewFontFace->GetPitch();
- if( mnMinQuality > pNewFontFace->mnQuality )
- mnMinQuality = pNewFontFace->mnQuality;
+ if( mnMinQuality > pNewFontFace->GetQuality() )
+ mnMinQuality = pNewFontFace->GetQuality();
}
// set attributes for attribute based font matching
@@ -172,11 +172,11 @@ bool PhysicalFontFamily::AddFontFace( PhysicalFontFace* pNewFontFace )
break;
// ignore duplicate if its quality is worse
- if( pNewFontFace->mnQuality < pFoundFontFace->mnQuality )
+ if( pNewFontFace->GetQuality() < pFoundFontFace->GetQuality() )
return false;
// keep the device font if its quality is good enough
- if( (pNewFontFace->mnQuality == pFoundFontFace->mnQuality) && (pFoundFontFace->mbDevice || !pNewFontFace->mbDevice) )
+ if( (pNewFontFace->GetQuality() == pFoundFontFace->GetQuality()) && (pFoundFontFace->IsBuiltInFont() || !pNewFontFace->IsBuiltInFont()) )
return false;
// replace existing font face with a better one
@@ -277,7 +277,7 @@ void PhysicalFontFamily::UpdateCloneFontList( PhysicalFontCollection& rFontColle
if( bScalable && !pFoundFontFace->IsScalable() )
continue;
- if( bEmbeddable && !pFoundFontFace->IsEmbeddable() && !pFoundFontFace->IsSubsettable() )
+ if( bEmbeddable && !pFoundFontFace->CanEmbed() && !pFoundFontFace->CanSubset() )
continue;
PhysicalFontFace* pClonedFace = pFoundFontFace->Clone();
diff --git a/vcl/source/gdi/pdfwriter_impl.cxx b/vcl/source/gdi/pdfwriter_impl.cxx
index 2d92b5951f13..34298dbed68b 100644
--- a/vcl/source/gdi/pdfwriter_impl.cxx
+++ b/vcl/source/gdi/pdfwriter_impl.cxx
@@ -2274,11 +2274,11 @@ static ImplDevFontAttributes GetDevFontAttributes( const PDFWriterImpl::BuiltinF
aDFA.SetItalic( rBuiltin.m_eItalic );
aDFA.SetWidthType( rBuiltin.m_eWidthType );
- aDFA.mbOrientation = true;
- aDFA.mbDevice = true;
- aDFA.mnQuality = 50000;
- aDFA.mbSubsettable = false;
- aDFA.mbEmbeddable = false;
+ aDFA.SetOrientationFlag( true );
+ aDFA.SetBuiltInFontFlag( true );
+ aDFA.SetQuality( 50000 );
+ aDFA.SetSubsettableFlag( false );
+ aDFA.SetEmbeddableFlag( false );
return aDFA;
}
@@ -2982,7 +2982,7 @@ std::map< sal_Int32, sal_Int32 > PDFWriterImpl::emitSystemFont( const PhysicalFo
assert(pGraphics);
- if( pFont->IsEmbeddable() )
+ if( pFont->CanEmbed() )
{
const unsigned char* pFontData = nullptr;
long nFontLen = 0;
@@ -3004,7 +3004,7 @@ std::map< sal_Int32, sal_Int32 > PDFWriterImpl::emitSystemFont( const PhysicalFo
}
}
}
- else if( pFont->mbSubsettable )
+ else if( pFont->CanSubset() )
{
aSubType = OString( "/TrueType" );
Int32Vector aGlyphWidths;
@@ -8441,7 +8441,7 @@ bool PDFWriterImpl::registerGlyphs( int nGlyphs,
const int nFontGlyphId = pGlyphs[i] & (GF_IDXMASK | GF_ISCHAR | GF_GSUB);
const PhysicalFontFace* pCurrentFont = pFallbackFonts[i] ? pFallbackFonts[i] : pDevFont;
- if( pCurrentFont->mbSubsettable )
+ if( pCurrentFont->CanSubset() )
{
FontSubset& rSubset = m_aSubsets[ pCurrentFont ];
// search for font specific glyphID
@@ -8485,7 +8485,7 @@ bool PDFWriterImpl::registerGlyphs( int nGlyphs,
bVertical,
pGraphics );
}
- else if( pCurrentFont->IsEmbeddable() )
+ else if( pCurrentFont->CanEmbed() )
{
sal_Int32 nFontID = 0;
FontEmbedData::iterator it = m_aEmbeddedFonts.find( pCurrentFont );
diff --git a/vcl/source/outdev/font.cxx b/vcl/source/outdev/font.cxx
index da787d17c111..4a3bffe34d27 100644
--- a/vcl/source/outdev/font.cxx
+++ b/vcl/source/outdev/font.cxx
@@ -81,7 +81,7 @@ vcl::FontInfo OutputDevice::GetDevFont( int nDevFontIndex ) const
aFontInfo.SetWidthType( rData.GetWidthType() );
if( rData.IsScalable() )
aFontInfo.mpImplMetric->mnMiscFlags |= ImplFontMetric::SCALABLE_FLAG;
- if( rData.mbDevice )
+ if( rData.IsBuiltInFont() )
aFontInfo.mpImplMetric->mnMiscFlags |= ImplFontMetric::DEVICE_FLAG;
}
@@ -1782,7 +1782,7 @@ ImplFontMetricData::ImplFontMetricData( const FontSelectPattern& rFontSelData )
{
SetFamilyName( rFontSelData.mpFontData->GetFamilyName() );
SetStyleName( rFontSelData.mpFontData->GetStyleName() );
- mbDevice = rFontSelData.mpFontData->mbDevice;
+ mbDevice = rFontSelData.mpFontData->IsBuiltInFont();
mbKernableFont = true;
}
else
diff --git a/vcl/unx/generic/gdi/cairotextrender.cxx b/vcl/unx/generic/gdi/cairotextrender.cxx
index bf1297e88021..a99b9ee9bbf2 100644
--- a/vcl/unx/generic/gdi/cairotextrender.cxx
+++ b/vcl/unx/generic/gdi/cairotextrender.cxx
@@ -416,7 +416,7 @@ void CairoTextRender::GetDevFontList( PhysicalFontCollection* pFontCollection )
// inform GlyphCache about this font provided by the PsPrint subsystem
ImplDevFontAttributes aDFA = GenPspGraphics::Info2DevFontAttributes( aInfo );
- aDFA.mnQuality += 4096;
+ aDFA.IncreaseQualityBy( 4096 );
const OString& rFileName = rMgr.getFontFileSysPath( aInfo.m_nID );
rGC.AddFontFile( rFileName, nFaceNum, aInfo.m_nID, aDFA );
}
diff --git a/vcl/win/gdi/salgdi3.cxx b/vcl/win/gdi/salgdi3.cxx
index 86689d064e0e..c26d7951c04d 100644
--- a/vcl/win/gdi/salgdi3.cxx
+++ b/vcl/win/gdi/salgdi3.cxx
@@ -798,32 +798,32 @@ static ImplDevFontAttributes WinFont2DevFontAttributes( const ENUMLOGFONTEXW& rE
aDFA.SetStyleName(OUString(reinterpret_cast<const sal_Unicode*>(pStyleName)));
// get device specific font attributes
- aDFA.mbOrientation = (nFontType & RASTER_FONTTYPE) == 0;
- aDFA.mbDevice = (rMetric.tmPitchAndFamily & TMPF_DEVICE) != 0;
+ aDFA.SetOrientationFlag( ((nFontType & RASTER_FONTTYPE) == 0) );
+ aDFA.SetBuiltInFontFlag( ((rMetric.tmPitchAndFamily & TMPF_DEVICE) != 0) );
- aDFA.mbEmbeddable = false;
- aDFA.mbSubsettable = false;
+ aDFA.SetEmbeddableFlag( false );
+ aDFA.SetSubsettableFlag( false );
if( 0 != (rMetric.ntmFlags & (NTM_TT_OPENTYPE | NTM_PS_OPENTYPE))
|| 0 != (rMetric.tmPitchAndFamily & TMPF_TRUETYPE))
- aDFA.mbSubsettable = true;
+ aDFA.SetSubsettableFlag( true );
else if( 0 != (rMetric.ntmFlags & NTM_TYPE1) ) // TODO: implement subsetting for type1 too
- aDFA.mbEmbeddable = true;
+ aDFA.SetEmbeddableFlag( true );
// heuristics for font quality
// - standard-type1 > opentypeTT > truetype > non-standard-type1 > raster
// - subsetting > embedding > none
- aDFA.mnQuality = 0;
+ aDFA.SetQuality( 0 );
if( rMetric.tmPitchAndFamily & TMPF_TRUETYPE )
- aDFA.mnQuality += 50;
+ aDFA.IncreaseQualityBy( 50 );
if( 0 != (rMetric.ntmFlags & (NTM_TT_OPENTYPE | NTM_PS_OPENTYPE)) )
- aDFA.mnQuality += 10;
- if( aDFA.mbSubsettable )
- aDFA.mnQuality += 200;
- else if( aDFA.mbEmbeddable )
- aDFA.mnQuality += 100;
+ aDFA.IncreaseQualityBy( 10 );
+ if( aDFA.CanSubset() )
+ aDFA.IncreaseQualityBy( 200 );
+ else if( aDFA.CanEmbed() )
+ aDFA.IncreaseQualityBy( 100 );
// #i38665# prefer Type1 versions of the standard postscript fonts
- if( aDFA.mbEmbeddable )
+ if( aDFA.CanEmbed() )
{
if( aDFA.GetFamilyName() == "AvantGarde"
|| aDFA.GetFamilyName() == "Bookman"
@@ -835,7 +835,7 @@ static ImplDevFontAttributes WinFont2DevFontAttributes( const ENUMLOGFONTEXW& rE
|| aDFA.GetFamilyName() == "Times"
|| aDFA.GetFamilyName() == "ZapfChancery"
|| aDFA.GetFamilyName() == "ZapfDingbats" )
- aDFA.mnQuality += 500;
+ aDFA.IncreaseQualityBy( 500 );
}
// TODO: add alias names
@@ -1701,15 +1701,15 @@ static bool ImplGetFontAttrFromFile( const OUString& rFontFileURL,
// get FontAttributes from a *fot file
// TODO: use GetTTGlobalFontInfo() to access the font directly
- rDFA.mnQuality = 1000;
- rDFA.mbDevice = true;
+ rDFA.SetQuality( 1000 );
+ rDFA.SetBuiltInFontFlag( true );
rDFA.SetFamilyType(FAMILY_DONTKNOW);
rDFA.SetWidthType(WIDTH_DONTKNOW);
rDFA.SetWeight(WEIGHT_DONTKNOW);
rDFA.SetItalic(ITALIC_DONTKNOW);
rDFA.SetPitch(PITCH_DONTKNOW);
- rDFA.mbSubsettable= true;
- rDFA.mbEmbeddable = false;
+ rDFA.SetSubsettableFlag( true );
+ rDFA.SetEmbeddableFlag( false );
// Create temporary file name
char aFileName[] = "soAAT.fot";
@@ -1794,8 +1794,8 @@ bool WinSalGraphics::AddTempDevFont( PhysicalFontCollection* pFontCollection,
ImplDevFontAttributes aDFA;
aDFA.SetFamilyName(rFontName);
- aDFA.mnQuality = 1000;
- aDFA.mbDevice = true;
+ aDFA.SetQuality( 1000 );
+ aDFA.SetBuiltInFontFlag( true );
// Search Font Name in Cache
if( rFontName.isEmpty() && mpFontAttrCache )
@@ -1825,8 +1825,8 @@ bool WinSalGraphics::AddTempDevFont( PhysicalFontCollection* pFontCollection,
aDFA.SetWeight(WEIGHT_DONTKNOW);
aDFA.SetItalic(ITALIC_DONTKNOW);
aDFA.SetPitch(PITCH_DONTKNOW);
- aDFA.mbSubsettable= true;
- aDFA.mbEmbeddable = false;
+ aDFA.SetSubsettableFlag( true );
+ aDFA.SetEmbeddableFlag( false );
/*
// TODO: improve ImplDevFontAttributes using the "font resource file"
@@ -2430,7 +2430,7 @@ void WinSalGraphics::FreeEmbedFontData( const void* pData, long /*nLen*/ )
const Ucs2SIntMap* WinSalGraphics::GetFontEncodingVector( const PhysicalFontFace* pFont, const Ucs2OStrMap** pNonEncoded, std::set<sal_Unicode> const**)
{
// TODO: even for builtin fonts we get here... why?
- if( !pFont->IsEmbeddable() )
+ if( !pFont->CanEmbed() )
return NULL;
// fill the encoding vector
@@ -2468,7 +2468,7 @@ void WinSalGraphics::GetGlyphWidths( const PhysicalFontFace* pFont,
HFONT hOldFont = 0;
ImplDoSetFont( &aIFSD, fScale, hOldFont );
- if( pFont->IsSubsettable() )
+ if( pFont->CanSubset() )
{
// get raw font file data
const RawFontData xRawFontData( getHDC() );
@@ -2525,7 +2525,7 @@ void WinSalGraphics::GetGlyphWidths( const PhysicalFontFace* pFont,
pMap = 0;
}
}
- else if( pFont->IsEmbeddable() )
+ else if( pFont->CanEmbed() )
{
// get individual character widths
rWidths.clear();