Auf dieser Seite

QFontInfo Class

Die Klasse „QFontInfo“ liefert allgemeine Informationen zu Schriftarten. Mehr...

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

Hinweis: Alle Funktionen dieser Klasse sind reentrant.

Öffentliche Funktionen

QFontInfo(const QFont &font)
QFontInfo(const QFontInfo &fi)
QFontInfo(QFontInfo &&)
~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)
(since 6.9) QList<QFontVariableAxis> variableAxes() const
int weight() const
QFontInfo &operator=(const QFontInfo &fi)

Ausführliche Beschreibung

Die Klasse „QFontInfo“ stellt dieselben Zugriffsfunktionen bereit wie „ QFont “, z. B. „ family()“, „ pointSize()“, „ italic()“, „ weight()“, „ fixedPitch()“, „ styleHint()“ usw. Während die Zugriffsfunktionen von „ QFont “ jedoch die Werte zurückgeben, die festgelegt wurden, gibt ein „QFontInfo“-Objekt die Werte zurück, die für die Schriftart gelten, die tatsächlich zum Zeichnen des Textes verwendet wird.

Wenn das Programm beispielsweise eine 25-pt-Courier-Schriftart auf einem Rechner anfordert, auf dem eine nicht skalierbare 24-pt-Courier-Schriftart vorhanden ist, verwendet „ QFont “ (normalerweise) die 24-pt-Courier-Schriftart für die Darstellung. In diesem Fall gibt „ QFont::pointSize()“ den Wert 25 und „ QFontInfo::pointSize()“ den Wert 24 zurück.

Es gibt drei Möglichkeiten, ein QFontInfo-Objekt zu erstellen.

  1. Der Aufruf des QFontInfo-Konstruktors mit einem „ QFont “ erstellt ein Schriftart-Info-Objekt für eine bildschirmkompatible Schriftart, d. h., die Schriftart darf keine Druckerschriftart sein. Wird die Schriftart später geändert, wird das Schriftart-Info-Objekt nicht aktualisiert.

    (Hinweis: Wenn Sie eine Druckerschrift verwenden, sind die zurückgegebenen Werte möglicherweise ungenau. Da Druckerschriften nicht immer verfügbar sind, wird die am besten passende Bildschirmschrift verwendet, wenn eine Druckerschrift angegeben wird.)

  2. QWidget::fontInfo() gibt die Schriftartinformationen für die Schriftart eines Widgets zurück. Dies entspricht dem Aufruf von QFontInfo(widget->font()). Wird die Schriftart des Widgets später geändert, wird das Schriftart-Informationsobjekt nicht aktualisiert.
  3. QPainter::fontInfo() gibt die Schriftartinformationen für die aktuelle Schriftart eines Painters zurück. Wird die Schriftart des Painters später geändert, wird das Schriftart-Info-Objekt nicht aktualisiert.

Prüfen, ob eine Schriftart vorhanden ist

Manchmal kann es sinnvoll sein, vor der Verwendung einer Schriftart zu prüfen, ob diese vorhanden ist. Am gründlichsten geschieht dies mit ` exactMatch()`:

const QFont segoeFont(QLatin1String("Segoe UI"));
if (QFontInfo(segoeFont).exactMatch()) {
    // Use the font...
}

Diese tiefgehende Suche nach Schriftfamilien kann jedoch auf einigen Plattformen rechenintensiv sein. ` QFontDatabase::families().contains() ` ist eine schnellere, aber weniger gründliche Alternative:

const QLatin1String segoeUiFamilyName("Segoe UI");
if (QFontDatabase::families().contains(segoeUiFamilyName)) {
    const QFont segoeFont(segoeUiFamilyName);
    // Use the font...
}

Sie ist weniger gründlich, da es sich nicht um eine vollständige Suche handelt: Einige Aliase von Schriftfamilien fehlen möglicherweise in der Liste. Dieser Ansatz führt jedoch zu schnelleren Startzeiten der Anwendung und sollte daher nach Möglichkeit immer bevorzugt werden.

Siehe auch QFont, QFontMetrics und QFontDatabase.

Dokumentation zu Member-Funktionen

QFontInfo::QFontInfo(const QFont &font)

Erstellt ein Schriftart-Info-Objekt für „ font “.

Die Schriftart muss bildschirmkompatibel sein, d. h. es muss sich um eine Schriftart handeln, die Sie beim Zeichnen von Text in ` widgets ` oder ` pixmaps` verwenden, nicht um ` QPicture ` oder ` QPrinter`.

Das Schriftart-Info-Objekt enthält die Informationen zu der Schriftart, die zum Zeitpunkt ihrer Erstellung im Konstruktor übergeben wurde, und wird nicht aktualisiert, wenn die Attribute der Schriftart später geändert werden.

Verwenden Sie ` QPainter::fontInfo()``, um die Schriftartinformationen beim Zeichnen abzurufen. Dies liefert auch dann korrekte Ergebnisse, wenn auf einem nicht bildschirmkompatiblen Zeichen-Device gezeichnet wird.

Siehe auch ` Checking for the existence of a font`.

QFontInfo::QFontInfo(const QFontInfo &fi)

Erstellt eine Kopie von „ fi “.

[constexpr noexcept default] QFontInfo::QFontInfo(QFontInfo &&)

Erstellt eine Instanz von „ QFontInfo “ mithilfe von „Move“.

[noexcept] QFontInfo::~QFontInfo()

Löscht das Schriftart-Info-Objekt.

bool QFontInfo::bold() const

Gibt „ true “ zurück, wenn „ weight()“ einen Wert zurückgeben würde, der größer ist als „ QFont::Normal “; andernfalls wird „ false “ zurückgegeben.

Siehe auch weight() und QFont::bold().

bool QFontInfo::exactMatch() const

Gibt „ true “ zurück, wenn die gefundene Fenstersystem-Schriftart genau mit der durch die Schriftart angegebenen übereinstimmt; andernfalls wird „ false “ zurückgegeben.

Siehe auch QFont::exactMatch().

QString QFontInfo::family() const

Gibt den Namen der Schriftfamilie der gefundenen Systemschrift des Fensters zurück.

Siehe auch „ QFont::family()“ und „ Checking for the existence of a font “.

bool QFontInfo::fixedPitch() const

Gibt den Wert für die feste Zeichenhöhe der Schriftart des Matched-Window-Systems zurück.

Siehe auch „ QFont::fixedPitch()“.

bool QFontInfo::italic() const

Gibt den kursiven Wert der gefundenen Schrifttype des Fenstersystems zurück.

Siehe auch „ QFont::italic()“.

int QFontInfo::pixelSize() const

Gibt die Pixelgröße der entsprechenden Systemschriftart zurück.

Siehe auch „ QFont::pointSize()“.

int QFontInfo::pointSize() const

Gibt die Punktgröße der entsprechenden Systemschriftart des Fensters zurück.

Siehe auch „ pointSizeF()“ und „ QFont::pointSize()“.

qreal QFontInfo::pointSizeF() const

Gibt die Punktgröße der entsprechenden Systemschriftart des Fensters zurück.

Siehe auch „ QFont::pointSizeF()“.

QFont::Style QFontInfo::style() const

Gibt den Stilwert der gefundenen Systemschriftart des Fensters zurück.

Siehe auch „ QFont::style()“.

QFont::StyleHint QFontInfo::styleHint() const

Gibt den Stil der übereinstimmenden Systemschriftart des Fensters zurück.

Gibt derzeit nur den in „ QFont “ festgelegten Stilhinweis zurück.

Siehe auch „ QFont::styleHint()“ und „ QFont::StyleHint “.

QString QFontInfo::styleName() const

Gibt auf Systemen, die dies unterstützen, den Stilnamen der übereinstimmenden Systemschriftart zurück.

Siehe auch „ QFont::styleName()“.

[noexcept] void QFontInfo::swap(QFontInfo &other)

Ersetzt diese Instanz der Schriftartinformationen durch „ other “. Dieser Vorgang ist sehr schnell und schlägt niemals fehl.

[since 6.9] QList<QFontVariableAxis> QFontInfo::variableAxes() const

Wenn es sich bei der Schriftart um eine variable Schriftart handelt, gibt diese Funktion die Liste der von der Schriftart unterstützten Achsen zurück.

Weitere Informationen zu variablen Achsen finden Sie unter setVariableAxis().

Diese Funktion wurde in Qt 6.9 eingeführt.

int QFontInfo::weight() const

Gibt die Schriftstärke der gefundenen Systemschriftart zurück.

Siehe auch „ QFont::weight()“ und „ bold()“.

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

Weist die Schriftartinformationen aus „ fi “ zu.

© 2026 The Qt Company Ltd. Documentation contributions included herein are the copyrights of their respective owners. The documentation provided herein is licensed under the terms of the GNU Free Documentation License version 1.3 as published by the Free Software Foundation. Qt and respective logos are trademarks of The Qt Company Ltd. in Finland and/or other countries worldwide. All other trademarks are property of their respective owners.