QGIS API Documentation  2.99.0-Master (5169e0d)
qgsfontutils.h
Go to the documentation of this file.
1 /***************************************************************************
2  qgsfontutils.h
3  ---------------------
4  begin : June 5, 2013
5  copyright : (C) 2013 by Larry Shaffer
6  email : larrys at dakotacarto dot com
7  ***************************************************************************
8  * *
9  * This program is free software; you can redistribute it and/or modify *
10  * it under the terms of the GNU General Public License as published by *
11  * the Free Software Foundation; either version 2 of the License, or *
12  * (at your option) any later version. *
13  * *
14  ***************************************************************************/
15 
16 #ifndef QGSFONTUTILS_H
17 #define QGSFONTUTILS_H
18 
19 #include <QFont>
20 #include <QString>
21 #include <QDomElement>
22 
23 #include "qgis_core.h"
24 
28 class CORE_EXPORT QgsFontUtils
29 {
30  public:
31 
35  static bool fontMatchOnSystem( const QFont &f );
36 
42  static bool fontFamilyOnSystem( const QString &family );
43 
50  static bool fontFamilyHasStyle( const QString &family, const QString &style );
51 
58  static bool fontFamilyMatchOnSystem( const QString &family, QString *chosen = nullptr, bool *match = nullptr );
59 
67  static bool updateFontViaStyle( QFont &f, const QString &fontstyle, bool fallback = false );
68 
72  static QString standardTestFontFamily();
73 
80  static bool loadStandardTestFonts( const QStringList &loadstyles );
81 
88  static QFont getStandardTestFont( const QString &style = "Roman", int pointsize = 12 );
89 
98  static QDomElement toXmlElement( const QFont &font, QDomDocument &document, const QString &elementName );
99 
109  static bool setFromXmlElement( QFont &font, const QDomElement &element );
110 
121  static bool setFromXmlChildNode( QFont &font, const QDomElement &element, const QString &childNode );
122 
129  static QString translateNamedStyle( const QString &namedStyle );
130 
137  static QString untranslateNamedStyle( const QString &namedStyle );
138 
148  static QString asCSS( const QFont &font, double pointToPixelMultiplier = 1.0 );
149 };
150 
151 #endif // QGSFONTUTILS_H