QFontInfo Class

The QFontInfo class provides general information about fonts. More...

Header: #include <QFontInfo>
CMake: find_package(Qt6 COMPONENTS Gui REQUIRED)
target_link_libraries(mytarget PRIVATE Qt6::Gui)
qmake: QT += gui

Note: All functions in this class are reentrant.

Public Functions

QFontInfo(const QFontInfo &fi)
QFontInfo(const QFont &font)
QFontInfo &operator=(const QFontInfo &fi)
~QFontInfo()
bool bold() const
bool exactMatch() const
QString family() const
bool fixedPitch() const
bool italic() const
int pixelSize() const
int pointSize() const
qreal pointSizeF() const
QFont::Style style() const
QFont::StyleHint styleHint() const
QString styleName() const
void swap(QFontInfo &other)
int weight() const

Detailed Description

The QFontInfo class provides the same access functions as QFont, e.g. family(), pointSize(), italic(), weight(), fixedPitch(), styleHint() etc. But whilst the QFont access functions return the values that were set, a QFontInfo object returns the values that apply to the font that will actually be used to draw the text.

For example, when the program asks for a 25pt Courier font on a machine that has a non-scalable 24pt Courier font, QFont will (normally) use the 24pt Courier for rendering. In this case, QFont::pointSize() returns 25 and QFontInfo::pointSize() returns 24.

There are three ways to create a QFontInfo object.

  1. Calling the QFontInfo constructor with a QFont creates a font info object for a screen-compatible font, i.e. the font cannot be a printer font. If the font is changed later, the font info object is not updated.

    (Note: If you use a printer font the values returned may be inaccurate. Printer fonts are not always accessible so the nearest screen font is used if a printer font is supplied.)

  2. QWidget::fontInfo() returns the font info for a widget's font. This is equivalent to calling QFontInfo(widget->font()). If the widget's font is changed later, the font info object is not updated.
  3. QPainter::fontInfo() returns the font info for a painter's current font. If the painter's font is changed later, the font info object is not updated.

See also QFont, QFontMetrics, and QFontDatabase.

Member Function Documentation

QFontInfo::QFontInfo(const QFontInfo &fi)

Constructs a copy of fi.

QFontInfo::QFontInfo(const QFont &font)

Constructs a font info object for font.

The font must be screen-compatible, i.e. a font you use when drawing text in widgets or pixmaps, not QPicture or QPrinter.

The font info object holds the information for the font that is passed in the constructor at the time it is created, and is not updated if the font's attributes are changed later.

Use QPainter::fontInfo() to get the font info when painting. This will give correct results also when painting on paint device that is not screen-compatible.

QFontInfo &QFontInfo::operator=(const QFontInfo &fi)

Assigns the font info in fi.

QFontInfo::~QFontInfo()

Destroys the font info object.

bool QFontInfo::bold() const

Returns true if weight() would return a value greater than QFont::Normal; otherwise returns false.

See also weight() and QFont::bold().

bool QFontInfo::exactMatch() const

Returns true if the matched window system font is exactly the same as the one specified by the font; otherwise returns false.

See also QFont::exactMatch().

QString QFontInfo::family() const

Returns the family name of the matched window system font.

See also QFont::family().

bool QFontInfo::fixedPitch() const

Returns the fixed pitch value of the matched window system font.

See also QFont::fixedPitch().

bool QFontInfo::italic() const

Returns the italic value of the matched window system font.

See also QFont::italic().

int QFontInfo::pixelSize() const

Returns the pixel size of the matched window system font.

See also QFont::pointSize().

int QFontInfo::pointSize() const

Returns the point size of the matched window system font.

See also pointSizeF() and QFont::pointSize().

qreal QFontInfo::pointSizeF() const

Returns the point size of the matched window system font.

See also QFont::pointSizeF().

QFont::Style QFontInfo::style() const

Returns the style value of the matched window system font.

See also QFont::style().

QFont::StyleHint QFontInfo::styleHint() const

Returns the style of the matched window system font.

Currently only returns the style hint set in QFont.

See also QFont::styleHint() and QFont::StyleHint.

QString QFontInfo::styleName() const

Returns the style name of the matched window system font on systems that support it.

See also QFont::styleName().

[since 5.0] void QFontInfo::swap(QFontInfo &other)

Swaps this font info instance with other. This function is very fast and never fails.

This function was introduced in Qt 5.0.

int QFontInfo::weight() const

Returns the weight of the matched window system font.

See also QFont::weight() and bold().