vcl/inc/fontattributes.hxx                  |   19 ----
 vcl/inc/unx/fontmanager.hxx                 |   62 ++--------------
 vcl/inc/unx/genpspgraphics.h                |    4 -
 vcl/qa/cppunit/physicalfontfamily.cxx       |    3 
 vcl/qt5/QtFrame.cxx                         |   39 ++++------
 vcl/qt5/QtGraphics_Text.cxx                 |   19 ++--
 vcl/unx/generic/fontmanager/fontconfig.cxx  |   40 ++++++----
 vcl/unx/generic/fontmanager/fontmanager.cxx |  108 ++++++++--------------------
 vcl/unx/generic/gdi/freetypetextrender.cxx  |   39 +++++-----
 vcl/unx/generic/print/genpspgraphics.cxx    |   27 -------
 vcl/unx/gtk3/salnativewidgets-gtk.cxx       |   68 +++++++++--------
 11 files changed, 152 insertions(+), 276 deletions(-)

New commits:
commit 444e246535a7cf56b94143823845ec4bd2628236
Author:     Khaled Hosny <kha...@libreoffice.org>
AuthorDate: Tue Aug 1 16:38:14 2023 +0000
Commit:     خالد حسني <kha...@libreoffice.org>
CommitDate: Wed Aug 2 11:58:01 2023 +0200

    vcl: Drop the PrintFont -> FastPrintFontInfo -> FontAttributes indirection
    
    We want FontAttributes at the end, so lets have them up front instead of
    the intermediary structures.
    
    Change-Id: Iafdf17f4a7615f0c3d972e6080cebea0183840b7
    Reviewed-on: https://gerrit.libreoffice.org/c/core/+/155191
    Tested-by: Jenkins
    Reviewed-by: خالد حسني <kha...@libreoffice.org>

diff --git a/vcl/inc/unx/fontmanager.hxx b/vcl/inc/unx/fontmanager.hxx
index 8010c17aabd8..a81975f21931 100644
--- a/vcl/inc/unx/fontmanager.hxx
+++ b/vcl/inc/unx/fontmanager.hxx
@@ -59,31 +59,6 @@ class PPDParser;
 
 typedef int fontID;
 
-struct FastPrintFontInfo
-{
-    fontID                         m_nID; // FontID
-
-    // font attributes
-    OUString                       m_aFamilyName;
-    OUString                       m_aStyleName;
-    FontFamily                     m_eFamilyStyle;
-    FontItalic                     m_eItalic;
-    FontWidth                      m_eWidth;
-    FontWeight                     m_eWeight;
-    FontPitch                      m_ePitch;
-    rtl_TextEncoding               m_aEncoding;
-
-    FastPrintFontInfo()
-        : m_nID(0)
-        , m_eFamilyStyle(FAMILY_DONTKNOW)
-        , m_eItalic(ITALIC_DONTKNOW)
-        , m_eWidth(WIDTH_DONTKNOW)
-        , m_eWeight(WEIGHT_DONTKNOW)
-        , m_ePitch(PITCH_DONTKNOW)
-        , m_aEncoding(RTL_TEXTENCODING_DONTKNOW)
-    {}
-};
-
 // a class to manage printable fonts
 
 class VCL_PLUGIN_PUBLIC PrintFontManager
@@ -93,15 +68,7 @@ class VCL_PLUGIN_PUBLIC PrintFontManager
 
     struct VCL_DLLPRIVATE PrintFont
     {
-        // font attributes
-        OUString          m_aFamilyName;
-        OUString          m_aStyleName;
-        FontFamily        m_eFamilyStyle;
-        FontItalic        m_eItalic;
-        FontWidth         m_eWidth;
-        FontWeight        m_eWeight;
-        FontPitch         m_ePitch;
-        rtl_TextEncoding  m_aEncoding;
+        FontAttributes    m_aFontAttributes;
 
         int               m_nDirectory;       // atom containing system 
dependent path
         OString           m_aFontFile;        // relative to directory
@@ -137,13 +104,6 @@ class VCL_PLUGIN_PUBLIC PrintFontManager
 
     static FontFamily matchFamilyName( std::u16string_view rFamily );
 
-    const PrintFont* getFont( fontID nID ) const
-    {
-        auto it = m_aFonts.find( nID );
-        return it == m_aFonts.end() ? nullptr : &it->second;
-    }
-    static void fillPrintFontInfo(const PrintFont& rFont, FastPrintFontInfo& 
rInfo);
-
     OString getDirectory( int nAtom ) const;
     int getDirectoryAtom( const OString& rDirectory );
 
@@ -184,12 +144,15 @@ public:
 
     void initialize();
 
+    const PrintFont* getFont( fontID nID ) const
+    {
+        auto it = m_aFonts.find( nID );
+        return it == m_aFonts.end() ? nullptr : &it->second;
+    }
+
     // returns the ids of all managed fonts.
     void getFontList( std::vector< fontID >& rFontIDs );
 
-    // get fast font info for a specific font
-    bool getFontFastInfo( fontID nFontID, FastPrintFontInfo& rInfo ) const;
-
     // routines to get font info in small pieces
 
     // get a specific fonts system dependent filename
@@ -211,16 +174,15 @@ public:
     <p>
     <code>matchFont</code> matches a pattern of font characteristics
     and returns the closest match if possible. If a match was found
-    the <code>FastPrintFontInfo</code> passed in as parameter
-    will be update to the found matching font.
+    it will update rDFA to the found matching font.
     </p>
     <p>
     implementation note: currently the function is only implemented
     for fontconfig.
     </p>
 
-    @param rInfo
-    out of the FastPrintFontInfo structure the following
+    @param rDFA
+    out of the FontAttributes structure the following
     fields will be used for the match:
     <ul>
     <li>family name</li>
@@ -235,7 +197,7 @@ public:
     locale will be used for font matching also; e.g. "Sans" can result
     in different fonts in e.g. english and japanese
      */
-    void matchFont( FastPrintFontInfo& rInfo, const css::lang::Locale& rLocale 
);
+    bool matchFont(FontAttributes& rDFA, const css::lang::Locale& rLocale);
 
     static std::unique_ptr<FontConfigFontOptions> getFontOptions(const 
FontAttributes& rFontAttributes, int nSize);
 
diff --git a/vcl/inc/unx/genpspgraphics.h b/vcl/inc/unx/genpspgraphics.h
index 81734cd9988f..2a9c6aefcfda 100644
--- a/vcl/inc/unx/genpspgraphics.h
+++ b/vcl/inc/unx/genpspgraphics.h
@@ -24,7 +24,6 @@
 #include <vcl/vclenum.hxx>
 #include <config_cairo_canvas.h>
 
-#include <unx/fontmanager.hxx>
 #include <salgdi.hxx>
 #include <sallayout.hxx>
 
@@ -61,9 +60,6 @@ public:
 
     void                    Init(psp::JobData* pJob);
 
-    // helper methods
-    static FontAttributes   Info2FontAttributes(const psp::FastPrintFontInfo&);
-
     // override all pure virtual methods
     virtual SalGraphicsImpl* GetImpl() const override
     {
diff --git a/vcl/qt5/QtFrame.cxx b/vcl/qt5/QtFrame.cxx
index 5c9947922f47..179d4369a242 100644
--- a/vcl/qt5/QtFrame.cxx
+++ b/vcl/qt5/QtFrame.cxx
@@ -1028,37 +1028,32 @@ static Color toColor(const QColor& rColor)
 
 static bool toVclFont(const QFont& rQFont, const css::lang::Locale& rLocale, 
vcl::Font& rVclFont)
 {
-    psp::FastPrintFontInfo aInfo;
-    QFontInfo qFontInfo(rQFont);
-
-    OUString sFamilyName = toOUString(rQFont.family());
-    aInfo.m_aFamilyName = sFamilyName;
-    aInfo.m_eItalic = QtFontFace::toFontItalic(qFontInfo.style());
-    aInfo.m_eWeight = QtFontFace::toFontWeight(qFontInfo.weight());
-    aInfo.m_eWidth = QtFontFace::toFontWidth(rQFont.stretch());
+    FontAttributes aFA;
+    QtFontFace::fillAttributesFromQFont(rQFont, aFA);
 
-    psp::PrintFontManager::get().matchFont(aInfo, rLocale);
+    bool bFound = psp::PrintFontManager::get().matchFont(aFA, rLocale);
     SAL_INFO("vcl.qt", "font match result for '"
-                           << sFamilyName << "': "
-                           << (aInfo.m_nID != 0 ? OUString::Concat("'") + 
aInfo.m_aFamilyName + "'"
-                                                : OUString("failed")));
+                           << rQFont.family() << "': "
+                           << (bFound ? OUString::Concat("'") + 
aFA.GetFamilyName() + "'"
+                                      : OUString("failed")));
 
-    if (aInfo.m_nID == 0)
+    if (!bFound)
         return false;
 
+    QFontInfo qFontInfo(rQFont);
     int nPointHeight = qFontInfo.pointSize();
     if (nPointHeight <= 0)
         nPointHeight = rQFont.pointSize();
 
-    vcl::Font aFont(aInfo.m_aFamilyName, Size(0, nPointHeight));
-    if (aInfo.m_eWeight != WEIGHT_DONTKNOW)
-        aFont.SetWeight(aInfo.m_eWeight);
-    if (aInfo.m_eWidth != WIDTH_DONTKNOW)
-        aFont.SetWidthType(aInfo.m_eWidth);
-    if (aInfo.m_eItalic != ITALIC_DONTKNOW)
-        aFont.SetItalic(aInfo.m_eItalic);
-    if (aInfo.m_ePitch != PITCH_DONTKNOW)
-        aFont.SetPitch(aInfo.m_ePitch);
+    vcl::Font aFont(aFA.GetFamilyName(), Size(0, nPointHeight));
+    if (aFA.GetWeight() != WEIGHT_DONTKNOW)
+        aFont.SetWeight(aFA.GetWeight());
+    if (aFA.GetWidthType() != WIDTH_DONTKNOW)
+        aFont.SetWidthType(aFA.GetWidthType());
+    if (aFA.GetItalic() != ITALIC_DONTKNOW)
+        aFont.SetItalic(aFA.GetItalic());
+    if (aFA.GetPitch() != PITCH_DONTKNOW)
+        aFont.SetPitch(aFA.GetPitch());
 
     rVclFont = aFont;
     return true;
diff --git a/vcl/qt5/QtGraphics_Text.cxx b/vcl/qt5/QtGraphics_Text.cxx
index f189a04e005d..c7486da26d2e 100644
--- a/vcl/qt5/QtGraphics_Text.cxx
+++ b/vcl/qt5/QtGraphics_Text.cxx
@@ -28,7 +28,6 @@
 #include <unx/geninst.h>
 #include <unx/fontmanager.hxx>
 #include <unx/glyphcache.hxx>
-#include <unx/genpspgraphics.h>
 
 #include <sallayout.hxx>
 #include <font/PhysicalFontCollection.hxx>
@@ -94,23 +93,23 @@ void 
QtGraphics::GetDevFontList(vcl::font::PhysicalFontCollection* pPFC)
     FreetypeManager& rFontManager = FreetypeManager::get();
     psp::PrintFontManager& rMgr = psp::PrintFontManager::get();
     ::std::vector<psp::fontID> aList;
-    psp::FastPrintFontInfo aInfo;
 
     rMgr.getFontList(aList);
-    for (auto const& elem : aList)
+    for (auto const& nFontId : aList)
     {
-        if (!rMgr.getFontFastInfo(elem, aInfo))
+        auto const* pFont = rMgr.getFont(nFontId);
+        if (!pFont)
             continue;
 
         // normalize face number to the FreetypeManager
-        int nFaceNum = rMgr.getFontFaceNumber(aInfo.m_nID);
-        int nVariantNum = rMgr.getFontFaceVariation(aInfo.m_nID);
+        int nFaceNum = rMgr.getFontFaceNumber(nFontId);
+        int nVariantNum = rMgr.getFontFaceVariation(nFontId);
 
         // inform FreetypeManager about this font provided by the PsPrint 
subsystem
-        FontAttributes aDFA = GenPspGraphics::Info2FontAttributes(aInfo);
-        aDFA.IncreaseQualityBy(4096);
-        const OString& rFileName = rMgr.getFontFileSysPath(aInfo.m_nID);
-        rFontManager.AddFontFile(rFileName, nFaceNum, nVariantNum, 
aInfo.m_nID, aDFA);
+        FontAttributes aFA = pFont->m_aFontAttributes;
+        aFA.IncreaseQualityBy(4096);
+        const OString& rFileName = rMgr.getFontFileSysPath(nFontId);
+        rFontManager.AddFontFile(rFileName, nFaceNum, nVariantNum, nFontId, 
aFA);
     }
 
     if (bUseFontconfig)
diff --git a/vcl/unx/generic/fontmanager/fontconfig.cxx 
b/vcl/unx/generic/fontmanager/fontconfig.cxx
index 57af5949bfe1..ad9bf6c268ab 100644
--- a/vcl/unx/generic/fontmanager/fontconfig.cxx
+++ b/vcl/unx/generic/fontmanager/fontconfig.cxx
@@ -706,17 +706,18 @@ void PrintFontManager::countFontconfigFonts()
 
             if (xUpdate)
             {
+                auto& rDFA = xUpdate->m_aFontAttributes;
                 // set family name
                 if( eWeightRes == FcResultMatch )
-                    xUpdate->m_eWeight = convertWeight(weight);
+                    rDFA.SetWeight(convertWeight(weight));
                 if( eWidthRes == FcResultMatch )
-                    xUpdate->m_eWidth = convertWidth(width);
+                    rDFA.SetWidthType(convertWidth(width));
                 if( eSpacRes == FcResultMatch )
-                    xUpdate->m_ePitch = convertSpacing(spacing);
+                    rDFA.SetPitch(convertSpacing(spacing));
                 if( eSlantRes == FcResultMatch )
-                    xUpdate->m_eItalic = convertSlant(slant);
+                    rDFA.SetItalic(convertSlant(slant));
                 if( eStyleRes == FcResultMatch )
-                    xUpdate->m_aStyleName = OStringToOUString( 
std::string_view( reinterpret_cast<char*>(style) ), RTL_TEXTENCODING_UTF8 );
+                    rDFA.SetStyleName(OStringToOUString( std::string_view( 
reinterpret_cast<char*>(style) ), RTL_TEXTENCODING_UTF8 ));
                 if( eIndexRes == FcResultMatch )
                     xUpdate->m_nVariationEntry = GetVariationIndex(nEntryId);
 
@@ -1076,12 +1077,12 @@ void 
PrintFontManager::Substitute(vcl::font::FontSelectPattern &rPattern, OUStri
                 OString aDir, aBase, aOrgPath( reinterpret_cast<char*>(file) );
                 splitPath( aOrgPath, aDir, aBase );
                 int nDirID = getDirectoryAtom( aDir );
-                fontID aFont = findFontFileID(nDirID, aBase, 
GetCollectionIndex(nEntryId), GetVariationIndex(nEntryId));
-                if( aFont > 0 )
+                fontID nFontID = findFontFileID(nDirID, aBase, 
GetCollectionIndex(nEntryId), GetVariationIndex(nEntryId));
+                auto const* pFont = getFont(nFontID);
+                if (pFont)
                 {
-                    FastPrintFontInfo aInfo;
-                    bRet = getFontFastInfo( aFont, aInfo );
-                    rPattern.maSearchName = aInfo.m_aFamilyName;
+                    rPattern.maSearchName = 
pFont->m_aFontAttributes.GetFamilyName();
+                    bRet = true;
                 }
             }
 
@@ -1269,8 +1270,9 @@ std::unique_ptr<FontConfigFontOptions> 
PrintFontManager::getFontOptions(const Fo
 }
 
 
-void PrintFontManager::matchFont( FastPrintFontInfo& rInfo, const 
css::lang::Locale& rLocale )
+bool PrintFontManager::matchFont(FontAttributes& rDFA, const 
css::lang::Locale& rLocale)
 {
+    bool bFound = false;
     FontCfgWrapper& rWrapper = FontCfgWrapper::get();
 
     FcConfig* pConfig = FcConfigGetCurrent();
@@ -1282,11 +1284,11 @@ void PrintFontManager::matchFont( FastPrintFontInfo& 
rInfo, const css::lang::Loc
     if (!aLangAttrib.isEmpty())
         FcPatternAddString(pPattern, FC_LANG, reinterpret_cast<FcChar8 const 
*>(aLangAttrib.getStr()));
 
-    OString aFamily = OUStringToOString( rInfo.m_aFamilyName, 
RTL_TEXTENCODING_UTF8 );
+    OString aFamily = OUStringToOString(rDFA.GetFamilyName(), 
RTL_TEXTENCODING_UTF8);
     if( !aFamily.isEmpty() )
         FcPatternAddString(pPattern, FC_FAMILY, reinterpret_cast<FcChar8 const 
*>(aFamily.getStr()));
 
-    addtopattern(pPattern, rInfo.m_eItalic, rInfo.m_eWeight, rInfo.m_eWidth, 
rInfo.m_ePitch);
+    addtopattern(pPattern, rDFA.GetItalic(), rDFA.GetWeight(), 
rDFA.GetWidthType(), rDFA.GetPitch());
 
     FcConfigSubstitute(pConfig, pPattern, FcMatchPattern);
     FcDefaultSubstitute(pPattern);
@@ -1311,11 +1313,15 @@ void PrintFontManager::matchFont( FastPrintFontInfo& 
rInfo, const css::lang::Loc
                 OString aDir, aBase, aOrgPath( reinterpret_cast<char*>(file) );
                 splitPath( aOrgPath, aDir, aBase );
                 int nDirID = getDirectoryAtom( aDir );
-                fontID aFont = findFontFileID(nDirID, aBase,
+                fontID nFontID = findFontFileID(nDirID, aBase,
                                               GetCollectionIndex(nEntryId),
                                               GetVariationIndex(nEntryId));
-                if( aFont > 0 )
-                    getFontFastInfo( aFont, rInfo );
+                auto const* pFont = getFont(nFontID);
+                if (pFont)
+                {
+                    rDFA = pFont->m_aFontAttributes;
+                    bFound = true;
+                }
             }
         }
         // info: destroying the pSet destroys pResult implicitly
@@ -1325,6 +1331,8 @@ void PrintFontManager::matchFont( FastPrintFontInfo& 
rInfo, const css::lang::Loc
 
     // cleanup
     FcPatternDestroy( pPattern );
+
+    return bFound;
 }
 
 /* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/vcl/unx/generic/fontmanager/fontmanager.cxx 
b/vcl/unx/generic/fontmanager/fontmanager.cxx
index 2a6333f6d93e..a3d77c6ae99e 100644
--- a/vcl/unx/generic/fontmanager/fontmanager.cxx
+++ b/vcl/unx/generic/fontmanager/fontmanager.cxx
@@ -81,13 +81,7 @@ static sal_uInt16 getUInt16BE( const sal_uInt8*& pBuffer )
  *  PrintFont implementations
  */
 PrintFontManager::PrintFont::PrintFont()
-:   m_eFamilyStyle(FAMILY_DONTKNOW)
-,   m_eItalic(ITALIC_DONTKNOW)
-,   m_eWidth(WIDTH_DONTKNOW)
-,   m_eWeight(WEIGHT_DONTKNOW)
-,   m_ePitch(PITCH_DONTKNOW)
-,   m_aEncoding(RTL_TEXTENCODING_DONTKNOW)
-,   m_nDirectory(0)
+:   m_nDirectory(0)
 ,   m_nCollectionEntry(0)
 ,   m_nVariationEntry(0)
 {
@@ -514,20 +508,23 @@ bool PrintFontManager::analyzeSfntFile( PrintFont& rFont 
) const
     OString aFile = getFontFile( rFont );
     TrueTypeFont* pTTFont = nullptr;
 
+    auto& rDFA = rFont.m_aFontAttributes;
+    rDFA.SetQuality(512);
+
     auto const e = OpenTTFontFile( aFile.getStr(), rFont.m_nCollectionEntry, 
&pTTFont );
     if( e == SFErrCodes::Ok )
     {
         TTGlobalFontInfo aInfo;
         GetTTGlobalFontInfo( pTTFont, & aInfo );
 
-        if (rFont.m_aFamilyName.isEmpty())
+        if (rDFA.GetFamilyName().isEmpty())
         {
             ::std::vector< OUString > aNames;
             analyzeSfntFamilyName( pTTFont, aNames );
 
             if( !aNames.empty() )
             {
-                rFont.m_aFamilyName = aNames.front();
+                rDFA.SetFamilyName(aNames.front());
                 aNames.erase(aNames.begin());
             }
             else
@@ -540,53 +537,53 @@ bool PrintFontManager::analyzeSfntFile( PrintFont& rFont 
) const
                  if ( dotIndex == -1 )
                      dotIndex = rFont.m_aFontFile.getLength();
 
-                 rFont.m_aFamilyName = 
OStringToOUString(rFont.m_aFontFile.subView(0, dotIndex), aEncoding);
+                 
rDFA.SetFamilyName(OStringToOUString(rFont.m_aFontFile.subView(0, dotIndex), 
aEncoding));
             }
         }
 
         if( !aInfo.usubfamily.isEmpty() )
-            rFont.m_aStyleName = aInfo.usubfamily;
+            rDFA.SetStyleName(aInfo.usubfamily);
 
-        rFont.m_eFamilyStyle = matchFamilyName(rFont.m_aFamilyName);
+        rDFA.SetFamilyType(matchFamilyName(rDFA.GetFamilyName()));
 
         switch( aInfo.weight )
         {
-            case FW_THIN:           rFont.m_eWeight = WEIGHT_THIN; break;
-            case FW_EXTRALIGHT: rFont.m_eWeight = WEIGHT_ULTRALIGHT; break;
-            case FW_LIGHT:          rFont.m_eWeight = WEIGHT_LIGHT; break;
-            case FW_MEDIUM:     rFont.m_eWeight = WEIGHT_MEDIUM; break;
-            case FW_SEMIBOLD:       rFont.m_eWeight = WEIGHT_SEMIBOLD; break;
-            case FW_BOLD:           rFont.m_eWeight = WEIGHT_BOLD; break;
-            case FW_EXTRABOLD:      rFont.m_eWeight = WEIGHT_ULTRABOLD; break;
-            case FW_BLACK:          rFont.m_eWeight = WEIGHT_BLACK; break;
+            case FW_THIN:       rDFA.SetWeight(WEIGHT_THIN); break;
+            case FW_EXTRALIGHT: rDFA.SetWeight(WEIGHT_ULTRALIGHT); break;
+            case FW_LIGHT:      rDFA.SetWeight(WEIGHT_LIGHT); break;
+            case FW_MEDIUM:     rDFA.SetWeight(WEIGHT_MEDIUM); break;
+            case FW_SEMIBOLD:   rDFA.SetWeight(WEIGHT_SEMIBOLD); break;
+            case FW_BOLD:       rDFA.SetWeight(WEIGHT_BOLD); break;
+            case FW_EXTRABOLD:  rDFA.SetWeight(WEIGHT_ULTRABOLD); break;
+            case FW_BLACK:      rDFA.SetWeight(WEIGHT_BLACK); break;
 
             case FW_NORMAL:
-            default:        rFont.m_eWeight = WEIGHT_NORMAL; break;
+            default:            rDFA.SetWeight(WEIGHT_NORMAL); break;
         }
 
         switch( aInfo.width )
         {
-            case FWIDTH_ULTRA_CONDENSED:    rFont.m_eWidth = 
WIDTH_ULTRA_CONDENSED; break;
-            case FWIDTH_EXTRA_CONDENSED:    rFont.m_eWidth = 
WIDTH_EXTRA_CONDENSED; break;
-            case FWIDTH_CONDENSED:          rFont.m_eWidth = WIDTH_CONDENSED; 
break;
-            case FWIDTH_SEMI_CONDENSED: rFont.m_eWidth = WIDTH_SEMI_CONDENSED; 
break;
-            case FWIDTH_SEMI_EXPANDED:      rFont.m_eWidth = 
WIDTH_SEMI_EXPANDED; break;
-            case FWIDTH_EXPANDED:           rFont.m_eWidth = WIDTH_EXPANDED; 
break;
-            case FWIDTH_EXTRA_EXPANDED: rFont.m_eWidth = WIDTH_EXTRA_EXPANDED; 
break;
-            case FWIDTH_ULTRA_EXPANDED: rFont.m_eWidth = WIDTH_ULTRA_EXPANDED; 
break;
+            case FWIDTH_ULTRA_CONDENSED:    
rDFA.SetWidthType(WIDTH_ULTRA_CONDENSED); break;
+            case FWIDTH_EXTRA_CONDENSED:    
rDFA.SetWidthType(WIDTH_EXTRA_CONDENSED); break;
+            case FWIDTH_CONDENSED:          
rDFA.SetWidthType(WIDTH_CONDENSED); break;
+            case FWIDTH_SEMI_CONDENSED:     
rDFA.SetWidthType(WIDTH_SEMI_CONDENSED); break;
+            case FWIDTH_SEMI_EXPANDED:      
rDFA.SetWidthType(WIDTH_SEMI_EXPANDED); break;
+            case FWIDTH_EXPANDED:           rDFA.SetWidthType(WIDTH_EXPANDED); 
break;
+            case FWIDTH_EXTRA_EXPANDED:     
rDFA.SetWidthType(WIDTH_EXTRA_EXPANDED); break;
+            case FWIDTH_ULTRA_EXPANDED:     
rDFA.SetWidthType(WIDTH_ULTRA_EXPANDED); break;
 
             case FWIDTH_NORMAL:
-            default:                        rFont.m_eWidth = WIDTH_NORMAL; 
break;
+            default:                        rDFA.SetWidthType(WIDTH_NORMAL); 
break;
         }
 
-        rFont.m_ePitch = aInfo.pitch ? PITCH_FIXED : PITCH_VARIABLE;
-        rFont.m_eItalic = aInfo.italicAngle == 0 ? ITALIC_NONE : ( 
aInfo.italicAngle < 0 ? ITALIC_NORMAL : ITALIC_OBLIQUE );
+        rDFA.SetPitch(aInfo.pitch ? PITCH_FIXED : PITCH_VARIABLE);
+        rDFA.SetItalic(aInfo.italicAngle == 0 ? ITALIC_NONE : 
(aInfo.italicAngle < 0 ? ITALIC_NORMAL : ITALIC_OBLIQUE));
         // #104264# there are fonts that set italic angle 0 although they are
         // italic; use macstyle bit here
         if( aInfo.italicAngle == 0 && (aInfo.macStyle & 2) )
-            rFont.m_eItalic = ITALIC_NORMAL;
+            rDFA.SetItalic(ITALIC_NORMAL);
 
-        rFont.m_aEncoding = aInfo.microsoftSymbolEncoded ? 
RTL_TEXTENCODING_SYMBOL : RTL_TEXTENCODING_UCS2;
+        rDFA.SetMicrosoftSymbolEncoded(aInfo.microsoftSymbolEncoded);
 
         CloseTTFont( pTTFont );
         bSuccess = true;
@@ -675,29 +672,6 @@ void PrintFontManager::getFontList( ::std::vector< fontID 
>& rFontIDs )
         rFontIDs.push_back(font.first);
 }
 
-void PrintFontManager::fillPrintFontInfo(const PrintFont& rFont, 
FastPrintFontInfo& rInfo)
-{
-    rInfo.m_aFamilyName     = rFont.m_aFamilyName;
-    rInfo.m_aStyleName      = rFont.m_aStyleName;
-    rInfo.m_eFamilyStyle    = rFont.m_eFamilyStyle;
-    rInfo.m_eItalic         = rFont.m_eItalic;
-    rInfo.m_eWidth          = rFont.m_eWidth;
-    rInfo.m_eWeight         = rFont.m_eWeight;
-    rInfo.m_ePitch          = rFont.m_ePitch;
-    rInfo.m_aEncoding       = rFont.m_aEncoding;
-}
-
-bool PrintFontManager::getFontFastInfo( fontID nFontID, FastPrintFontInfo& 
rInfo ) const
-{
-    const PrintFont* pFont = getFont( nFontID );
-    if( pFont )
-    {
-        rInfo.m_nID = nFontID;
-        fillPrintFontInfo( *pFont, rInfo );
-    }
-    return pFont != nullptr;
-}
-
 int PrintFontManager::getFontFaceNumber( fontID nFontID ) const
 {
     int nRet = 0;
diff --git a/vcl/unx/generic/gdi/freetypetextrender.cxx 
b/vcl/unx/generic/gdi/freetypetextrender.cxx
index e8eb6c4febab..b524a45ee73b 100644
--- a/vcl/unx/generic/gdi/freetypetextrender.cxx
+++ b/vcl/unx/generic/gdi/freetypetextrender.cxx
@@ -28,7 +28,7 @@
 #include <vcl/fontcharmap.hxx>
 #include <sal/log.hxx>
 
-#include <unx/genpspgraphics.h>
+#include <unx/fontmanager.hxx>
 #include <unx/geninst.h>
 #include <unx/glyphcache.hxx>
 #include <unx/fc_fontoptions.hxx>
@@ -103,23 +103,24 @@ bool 
FreeTypeTextRenderImpl::AddTempDevFont(vcl::font::PhysicalFontCollection* p
         return false;
 
     FreetypeManager& rFreetypeManager = FreetypeManager::get();
-    for (auto const& elem : aFontIds)
+    for (auto const& nFontId : aFontIds)
     {
         // prepare font data
-        psp::FastPrintFontInfo aInfo;
-        rMgr.getFontFastInfo(elem, aInfo);
-        if (!rFontName.isEmpty())
-            aInfo.m_aFamilyName = rFontName;
+        auto const* pFont = rMgr.getFont(nFontId);
+        if (!pFont)
+            continue;
 
         // inform glyph cache of new font
-        FontAttributes aDFA = GenPspGraphics::Info2FontAttributes(aInfo);
+        FontAttributes aDFA = pFont->m_aFontAttributes;
         aDFA.IncreaseQualityBy(5800);
+        if (!rFontName.isEmpty())
+            aDFA.SetFamilyName(rFontName);
 
-        int nFaceNum = rMgr.getFontFaceNumber(aInfo.m_nID);
-        int nVariantNum = rMgr.getFontFaceVariation(aInfo.m_nID);
+        int nFaceNum = rMgr.getFontFaceNumber(nFontId);
+        int nVariantNum = rMgr.getFontFaceVariation(nFontId);
 
-        const OString& rFileName = rMgr.getFontFileSysPath(aInfo.m_nID);
-        rFreetypeManager.AddFontFile(rFileName, nFaceNum, nVariantNum, 
aInfo.m_nID, aDFA);
+        const OString& rFileName = rMgr.getFontFileSysPath(nFontId);
+        rFreetypeManager.AddFontFile(rFileName, nFaceNum, nVariantNum, 
nFontId, aDFA);
     }
 
     // announce new font to device's font list
@@ -139,22 +140,22 @@ void 
FreeTypeTextRenderImpl::GetDevFontList(vcl::font::PhysicalFontCollection* p
 
     psp::PrintFontManager& rMgr = psp::PrintFontManager::get();
     ::std::vector<psp::fontID> aList;
-    psp::FastPrintFontInfo aInfo;
     rMgr.getFontList(aList);
-    for (auto const& elem : aList)
+    for (auto const& nFontId : aList)
     {
-        if (!rMgr.getFontFastInfo(elem, aInfo))
+        auto const* pFont = rMgr.getFont(nFontId);
+        if (!pFont)
             continue;
 
         // normalize face number to the FreetypeManager
-        int nFaceNum = rMgr.getFontFaceNumber(aInfo.m_nID);
-        int nVariantNum = rMgr.getFontFaceVariation(aInfo.m_nID);
+        int nFaceNum = rMgr.getFontFaceNumber(nFontId);
+        int nVariantNum = rMgr.getFontFaceVariation(nFontId);
 
         // inform FreetypeManager about this font provided by the PsPrint 
subsystem
-        FontAttributes aDFA = GenPspGraphics::Info2FontAttributes(aInfo);
+        FontAttributes aDFA = pFont->m_aFontAttributes;
         aDFA.IncreaseQualityBy(4096);
-        const OString& rFileName = rMgr.getFontFileSysPath(aInfo.m_nID);
-        rFreetypeManager.AddFontFile(rFileName, nFaceNum, nVariantNum, 
aInfo.m_nID, aDFA);
+        const OString& rFileName = rMgr.getFontFileSysPath(nFontId);
+        rFreetypeManager.AddFontFile(rFileName, nFaceNum, nVariantNum, 
nFontId, aDFA);
     }
 
     // announce glyphcache fonts
diff --git a/vcl/unx/generic/print/genpspgraphics.cxx 
b/vcl/unx/generic/print/genpspgraphics.cxx
index 9ffc75826b50..66bf4524748f 100644
--- a/vcl/unx/generic/print/genpspgraphics.cxx
+++ b/vcl/unx/generic/print/genpspgraphics.cxx
@@ -138,22 +138,6 @@ std::unique_ptr<GenericSalLayout> 
GenPspGraphics::GetTextLayout(int nFallbackLev
     return m_aTextRenderImpl.GetTextLayout(nFallbackLevel);
 }
 
-FontAttributes GenPspGraphics::Info2FontAttributes( const 
psp::FastPrintFontInfo& rInfo )
-{
-    FontAttributes aDFA;
-    aDFA.SetFamilyName( rInfo.m_aFamilyName );
-    aDFA.SetStyleName( rInfo.m_aStyleName );
-    aDFA.SetFamilyType( rInfo.m_eFamilyStyle );
-    aDFA.SetWeight( rInfo.m_eWeight );
-    aDFA.SetItalic( rInfo.m_eItalic );
-    aDFA.SetWidthType( rInfo.m_eWidth );
-    aDFA.SetPitch( rInfo.m_ePitch );
-    aDFA.SetMicrosoftSymbolEncoded( rInfo.m_aEncoding == 
RTL_TEXTENCODING_SYMBOL );
-    aDFA.SetQuality(512);
-
-    return aDFA;
-}
-
 namespace vcl
 {
     const char* getLangBoost()
diff --git a/vcl/unx/gtk3/salnativewidgets-gtk.cxx 
b/vcl/unx/gtk3/salnativewidgets-gtk.cxx
index a531a59527db..a3a82edaa1ac 100644
--- a/vcl/unx/gtk3/salnativewidgets-gtk.cxx
+++ b/vcl/unx/gtk3/salnativewidgets-gtk.cxx
@@ -2219,39 +2219,43 @@ vcl::Font pango_to_vcl(const PangoFontDescription* 
font, const css::lang::Locale
     PangoWeight    eWeight    = pango_font_description_get_weight( font );
     PangoStretch eStretch = pango_font_description_get_stretch( font );
 
-    psp::FastPrintFontInfo aInfo;
+    FontAttributes aDFA;
+
     // set family name
-    aInfo.m_aFamilyName = OStringToOUString( aFamily, RTL_TEXTENCODING_UTF8 );
+    aDFA.SetFamilyName(OStringToOUString(aFamily, RTL_TEXTENCODING_UTF8));
+
     // set italic
     switch( eStyle )
     {
-        case PANGO_STYLE_NORMAL:    aInfo.m_eItalic = ITALIC_NONE;break;
-        case PANGO_STYLE_ITALIC:    aInfo.m_eItalic = ITALIC_NORMAL;break;
-        case PANGO_STYLE_OBLIQUE:    aInfo.m_eItalic = ITALIC_OBLIQUE;break;
+        case PANGO_STYLE_NORMAL:    aDFA.SetItalic(ITALIC_NONE);break;
+        case PANGO_STYLE_ITALIC:    aDFA.SetItalic(ITALIC_NORMAL);break;
+        case PANGO_STYLE_OBLIQUE:    aDFA.SetItalic(ITALIC_OBLIQUE);break;
     }
+
     // set weight
     if( eWeight <= PANGO_WEIGHT_ULTRALIGHT )
-        aInfo.m_eWeight = WEIGHT_ULTRALIGHT;
+        aDFA.SetWeight(WEIGHT_ULTRALIGHT);
     else if( eWeight <= PANGO_WEIGHT_LIGHT )
-        aInfo.m_eWeight = WEIGHT_LIGHT;
+        aDFA.SetWeight(WEIGHT_LIGHT);
     else if( eWeight <= PANGO_WEIGHT_NORMAL )
-        aInfo.m_eWeight = WEIGHT_NORMAL;
+        aDFA.SetWeight(WEIGHT_NORMAL);
     else if( eWeight <= PANGO_WEIGHT_BOLD )
-        aInfo.m_eWeight = WEIGHT_BOLD;
+        aDFA.SetWeight(WEIGHT_BOLD);
     else
-        aInfo.m_eWeight = WEIGHT_ULTRABOLD;
+        aDFA.SetWeight(WEIGHT_ULTRABOLD);
+
     // set width
     switch( eStretch )
     {
-        case PANGO_STRETCH_ULTRA_CONDENSED:    aInfo.m_eWidth = 
WIDTH_ULTRA_CONDENSED;break;
-        case PANGO_STRETCH_EXTRA_CONDENSED:    aInfo.m_eWidth = 
WIDTH_EXTRA_CONDENSED;break;
-        case PANGO_STRETCH_CONDENSED:        aInfo.m_eWidth = 
WIDTH_CONDENSED;break;
-        case PANGO_STRETCH_SEMI_CONDENSED:    aInfo.m_eWidth = 
WIDTH_SEMI_CONDENSED;break;
-        case PANGO_STRETCH_NORMAL:            aInfo.m_eWidth = 
WIDTH_NORMAL;break;
-        case PANGO_STRETCH_SEMI_EXPANDED:    aInfo.m_eWidth = 
WIDTH_SEMI_EXPANDED;break;
-        case PANGO_STRETCH_EXPANDED:        aInfo.m_eWidth = 
WIDTH_EXPANDED;break;
-        case PANGO_STRETCH_EXTRA_EXPANDED:    aInfo.m_eWidth = 
WIDTH_EXTRA_EXPANDED;break;
-        case PANGO_STRETCH_ULTRA_EXPANDED:    aInfo.m_eWidth = 
WIDTH_ULTRA_EXPANDED;break;
+        case PANGO_STRETCH_ULTRA_CONDENSED:    
aDFA.SetWidthType(WIDTH_ULTRA_CONDENSED);break;
+        case PANGO_STRETCH_EXTRA_CONDENSED:    
aDFA.SetWidthType(WIDTH_EXTRA_CONDENSED);break;
+        case PANGO_STRETCH_CONDENSED:        
aDFA.SetWidthType(WIDTH_CONDENSED);break;
+        case PANGO_STRETCH_SEMI_CONDENSED:    
aDFA.SetWidthType(WIDTH_SEMI_CONDENSED);break;
+        case PANGO_STRETCH_NORMAL:            
aDFA.SetWidthType(WIDTH_NORMAL);break;
+        case PANGO_STRETCH_SEMI_EXPANDED:    
aDFA.SetWidthType(WIDTH_SEMI_EXPANDED);break;
+        case PANGO_STRETCH_EXPANDED:        
aDFA.SetWidthType(WIDTH_EXPANDED);break;
+        case PANGO_STRETCH_EXTRA_EXPANDED:    
aDFA.SetWidthType(WIDTH_EXTRA_EXPANDED);break;
+        case PANGO_STRETCH_ULTRA_EXPANDED:    
aDFA.SetWidthType(WIDTH_ULTRA_EXPANDED);break;
     }
 
 #if OSL_DEBUG_LEVEL > 1
@@ -2260,14 +2264,16 @@ vcl::Font pango_to_vcl(const PangoFontDescription* 
font, const css::lang::Locale
 #endif
 
     // match font to e.g. resolve "Sans"
-    psp::PrintFontManager::get().matchFont(aInfo, rLocale);
+    bool bFound = psp::PrintFontManager::get().matchFont(aDFA, rLocale);
 
 #if OSL_DEBUG_LEVEL > 1
     SAL_INFO("vcl.gtk3", "font match "
-            << (aInfo.m_nID != 0 ? "succeeded" : "failed")
+            << (bFound ? "succeeded" : "failed")
             << ", name AFTER: \""
-            << aInfo.m_aFamilyName
+            << aDFA.GetFamilyName()
             << "\".");
+#else
+    (void) bFound;
 #endif
 
     int nPangoHeight = pango_font_description_get_size(font) / PANGO_SCALE;
@@ -2280,15 +2286,15 @@ vcl::Font pango_to_vcl(const PangoFontDescription* 
font, const css::lang::Locale
         nPangoHeight = nPangoHeight / nDPIY;
     }
 
-    vcl::Font aFont(aInfo.m_aFamilyName, Size(0, nPangoHeight));
-    if( aInfo.m_eWeight != WEIGHT_DONTKNOW )
-        aFont.SetWeight( aInfo.m_eWeight );
-    if( aInfo.m_eWidth != WIDTH_DONTKNOW )
-        aFont.SetWidthType( aInfo.m_eWidth );
-    if( aInfo.m_eItalic != ITALIC_DONTKNOW )
-        aFont.SetItalic( aInfo.m_eItalic );
-    if( aInfo.m_ePitch != PITCH_DONTKNOW )
-        aFont.SetPitch( aInfo.m_ePitch );
+    vcl::Font aFont(aDFA.GetFamilyName(), Size(0, nPangoHeight));
+    if (aDFA.GetWeight() != WEIGHT_DONTKNOW)
+        aFont.SetWeight(aDFA.GetWeight());
+    if (aDFA.GetWidthType() != WIDTH_DONTKNOW)
+        aFont.SetWidthType(aDFA.GetWidthType());
+    if (aDFA.GetItalic() != ITALIC_DONTKNOW)
+        aFont.SetItalic(aDFA.GetItalic());
+    if (aDFA.GetPitch() != PITCH_DONTKNOW)
+        aFont.SetPitch(aDFA.GetPitch());
     return aFont;
 }
 
commit 0c019cb7c13be75210be824e0f1601d59310a23f
Author:     Khaled Hosny <kha...@libreoffice.org>
AuthorDate: Tue Aug 1 18:20:14 2023 +0300
Commit:     خالد حسني <kha...@libreoffice.org>
CommitDate: Wed Aug 2 11:57:47 2023 +0200

    vcl: Drop unused FontAttributes::GetMapNames()/AddMapName()
    
    Change-Id: I50e06ad24e95cab39009a8affb876ebc920c1c11
    Reviewed-on: https://gerrit.libreoffice.org/c/core/+/155168
    Tested-by: Jenkins
    Reviewed-by: خالد حسني <kha...@libreoffice.org>

diff --git a/vcl/inc/fontattributes.hxx b/vcl/inc/fontattributes.hxx
index 7ae4b4527bf1..2135ba01d436 100644
--- a/vcl/inc/fontattributes.hxx
+++ b/vcl/inc/fontattributes.hxx
@@ -60,12 +60,10 @@ public:
 
     // Device dependent functions
     int                 GetQuality() const                          { return 
mnQuality; }
-    const OUString&     GetMapNames() const                         { return 
maMapNames; }
 
 
     void                SetQuality( int nQuality )                  { 
mnQuality = nQuality; }
     void                IncreaseQualityBy( int nQualityAmount )     { 
mnQuality += nQualityAmount; }
-    void                AddMapName( std::u16string_view );
 
 private:
     // device independent variables
@@ -79,7 +77,6 @@ private:
     bool                mbMicrosoftSymbolEncoded;   // Is font microsoft 
symbol encoded?
 
     // device dependent variables
-    OUString            maMapNames;                 // List of family name 
aliases separated with ';'
     int                 mnQuality;                  // Quality (used when 
similar fonts compete)
 
 };
@@ -89,22 +86,6 @@ inline void FontAttributes::SetMicrosoftSymbolEncoded(const 
bool bMicrosoftSymbo
     mbMicrosoftSymbolEncoded = bMicrosoftSymbolEncoded;
 }
 
-inline void FontAttributes::AddMapName( std::u16string_view aMapName )
-{
-    if( maMapNames.getLength() > 0 )
-    {
-        maMapNames += ";";
-    }
-
-    if (aMapName.size() == 0)
-    {
-        SAL_WARN("vcl.fonts", "New map name is empty");
-        return;
-    }
-
-    maMapNames += aMapName;
-}
-
 #endif // INCLUDED_VCL_INC_FONTATTRIBUTES_HXX
 
 /* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/vcl/inc/unx/fontmanager.hxx b/vcl/inc/unx/fontmanager.hxx
index 21a8d00aa415..8010c17aabd8 100644
--- a/vcl/inc/unx/fontmanager.hxx
+++ b/vcl/inc/unx/fontmanager.hxx
@@ -66,7 +66,6 @@ struct FastPrintFontInfo
     // font attributes
     OUString                       m_aFamilyName;
     OUString                       m_aStyleName;
-    std::vector< OUString >        m_aAliases;
     FontFamily                     m_eFamilyStyle;
     FontItalic                     m_eItalic;
     FontWidth                      m_eWidth;
@@ -96,7 +95,6 @@ class VCL_PLUGIN_PUBLIC PrintFontManager
     {
         // font attributes
         OUString          m_aFamilyName;
-        std::vector<OUString> m_aAliases;
         OUString          m_aStyleName;
         FontFamily        m_eFamilyStyle;
         FontItalic        m_eItalic;
diff --git a/vcl/qa/cppunit/physicalfontfamily.cxx 
b/vcl/qa/cppunit/physicalfontfamily.cxx
index d54ce8be6a1e..a720cda0c568 100644
--- a/vcl/qa/cppunit/physicalfontfamily.cxx
+++ b/vcl/qa/cppunit/physicalfontfamily.cxx
@@ -82,7 +82,6 @@ void VclPhysicalFontFamilyTest::testAddOneFontFace()
 
     FontAttributes aFontAttrs;
     aFontAttrs.SetFamilyName("Test font face");
-    aFontAttrs.AddMapName(u"Alias name");
     aFontAttrs.SetFamilyType(FontFamily::FAMILY_ROMAN);
     aFontAttrs.SetPitch(FontPitch::PITCH_VARIABLE);
     aFontAttrs.SetItalic(FontItalic::ITALIC_NONE);
@@ -108,7 +107,6 @@ void VclPhysicalFontFamilyTest::testAddTwoFontFaces()
 
     FontAttributes aFontAttrs;
     aFontAttrs.SetFamilyName("Test font face");
-    aFontAttrs.AddMapName(u"Alias name");
     aFontAttrs.SetFamilyType(FontFamily::FAMILY_ROMAN);
     aFontAttrs.SetPitch(FontPitch::PITCH_VARIABLE);
     aFontAttrs.SetItalic(FontItalic::ITALIC_NONE);
@@ -119,7 +117,6 @@ void VclPhysicalFontFamilyTest::testAddTwoFontFaces()
     aFamily.AddFontFace(new TestFontFace(aFontAttrs, 1));
 
     aFontAttrs.SetFamilyName("Test font face");
-    aFontAttrs.AddMapName(u"Alias name 2");
     aFontAttrs.SetFamilyType(FontFamily::FAMILY_ROMAN);
     aFontAttrs.SetPitch(FontPitch::PITCH_VARIABLE);
     aFontAttrs.SetItalic(FontItalic::ITALIC_NORMAL);
diff --git a/vcl/unx/generic/fontmanager/fontmanager.cxx 
b/vcl/unx/generic/fontmanager/fontmanager.cxx
index 748017252987..2a6333f6d93e 100644
--- a/vcl/unx/generic/fontmanager/fontmanager.cxx
+++ b/vcl/unx/generic/fontmanager/fontmanager.cxx
@@ -520,12 +520,11 @@ bool PrintFontManager::analyzeSfntFile( PrintFont& rFont 
) const
         TTGlobalFontInfo aInfo;
         GetTTGlobalFontInfo( pTTFont, & aInfo );
 
-        ::std::vector< OUString > aNames;
-        analyzeSfntFamilyName( pTTFont, aNames );
-
-        // set family name from XLFD if possible
         if (rFont.m_aFamilyName.isEmpty())
         {
+            ::std::vector< OUString > aNames;
+            analyzeSfntFamilyName( pTTFont, aNames );
+
             if( !aNames.empty() )
             {
                 rFont.m_aFamilyName = aNames.front();
@@ -544,18 +543,6 @@ bool PrintFontManager::analyzeSfntFile( PrintFont& rFont ) 
const
                  rFont.m_aFamilyName = 
OStringToOUString(rFont.m_aFontFile.subView(0, dotIndex), aEncoding);
             }
         }
-        for (auto const& aAlias : aNames)
-        {
-            if (!aAlias.isEmpty())
-            {
-                if (rFont.m_aFamilyName != aAlias)
-                {
-                    auto al_it = std::find(rFont.m_aAliases.begin(), 
rFont.m_aAliases.end(), aAlias);
-                    if( al_it == rFont.m_aAliases.end() )
-                        rFont.m_aAliases.push_back(aAlias);
-                }
-            }
-        }
 
         if( !aInfo.usubfamily.isEmpty() )
             rFont.m_aStyleName = aInfo.usubfamily;
@@ -698,7 +685,6 @@ void PrintFontManager::fillPrintFontInfo(const PrintFont& 
rFont, FastPrintFontIn
     rInfo.m_eWeight         = rFont.m_eWeight;
     rInfo.m_ePitch          = rFont.m_ePitch;
     rInfo.m_aEncoding       = rFont.m_aEncoding;
-    rInfo.m_aAliases        = rFont.m_aAliases;
 }
 
 bool PrintFontManager::getFontFastInfo( fontID nFontID, FastPrintFontInfo& 
rInfo ) const
diff --git a/vcl/unx/generic/print/genpspgraphics.cxx 
b/vcl/unx/generic/print/genpspgraphics.cxx
index 9f08cf11b5f2..9ffc75826b50 100644
--- a/vcl/unx/generic/print/genpspgraphics.cxx
+++ b/vcl/unx/generic/print/genpspgraphics.cxx
@@ -151,17 +151,6 @@ FontAttributes GenPspGraphics::Info2FontAttributes( const 
psp::FastPrintFontInfo
     aDFA.SetMicrosoftSymbolEncoded( rInfo.m_aEncoding == 
RTL_TEXTENCODING_SYMBOL );
     aDFA.SetQuality(512);
 
-    // add font family name aliases
-    for (auto const& alias : rInfo.m_aAliases)
-        aDFA.AddMapName(alias);
-
-#if OSL_DEBUG_LEVEL > 2
-    if( aDFA.GetMapNames().getLength() > 0 )
-    {
-        SAL_INFO( "vcl.fonts", "using alias names " << aDFA.GetMapNames() << " 
for font family " << aDFA.GetFamilyName() );
-    }
-#endif
-
     return aDFA;
 }
 

Reply via email to