QFontInfo Class

Die Klasse QFontInfo liefert allgemeine Informationen über Schriftarten. Mehr...

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

Hinweis: Alle Funktionen in dieser Klasse sind reentrant.

Öffentliche Funktionen

QFontInfo(const QFont &font)
QFontInfo(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
QFontInfo &operator=(const QFontInfo &fi)

Detaillierte Beschreibung

Die Klasse QFontInfo bietet die gleichen Zugriffsfunktionen wie QFont, z. B. family(), pointSize(), italic(), weight(), fixedPitch(), styleHint() usw. Aber während die Zugriffsfunktionen von QFont die eingestellten Werte zurückgeben, 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 25pt Courier-Schriftart auf einem Rechner anfordert, der eine nicht skalierbare 24pt Courier-Schriftart hat, wird QFont (normalerweise) die 24pt Courier-Schriftart zum Rendern verwenden. 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 erzeugt ein Font-Info-Objekt für einen bildschirmkompatiblen Font, d.h. der Font kann kein Druckerfont sein. Wenn die Schriftart später geändert wird, wird das Font-Info-Objekt nicht aktualisiert.

    (Hinweis: Wenn Sie eine Druckerschriftart verwenden, können die zurückgegebenen Werte ungenau sein. Druckerschriften sind nicht immer zugänglich, so dass die nächstgelegene Bildschirmschriftart verwendet wird, wenn eine Druckerschriftart angegeben wird).

  2. QWidget::fontInfo() gibt die Schriftartinformationen für die Schriftart eines Widgets zurück. Dies ist äquivalent zum Aufruf von QFontInfo(widget->font()). Wenn die Schriftart des Widgets später geändert wird, wird das Font-Info-Objekt nicht aktualisiert.
  3. QPainter::fontInfo() gibt die Schriftartinformation für die aktuelle Schriftart eines Malers zurück. Wenn die Schriftart des Malers später geändert wird, wird das Font-Info-Objekt nicht aktualisiert.

Prüfen auf die Existenz einer Schriftart

Manchmal kann es nützlich sein, zu prüfen, ob eine Schriftart existiert, bevor man versucht, sie zu verwenden. Die gründlichste Art, dies zu tun, ist die Verwendung von exactMatch():

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

Diese tiefgehende Suche nach Familien kann jedoch auf einigen Plattformen teuer 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, weil es sich nicht um eine vollständige Suche handelt: Einige Schriftfamilien-Aliase können in der Liste fehlen. Dieser Ansatz führt jedoch zu schnelleren Startzeiten der Anwendung und sollte daher, wenn möglich, immer bevorzugt werden.

Siehe auch QFont, QFontMetrics, und QFontDatabase.

Dokumentation der Mitgliedsfunktionen

QFontInfo::QFontInfo(const QFont &font)

Konstruiert ein Font-Info-Objekt für font.

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

Das Font-Info-Objekt enthält die Informationen für den Font, die zum Zeitpunkt der Erstellung im Konstruktor übergeben werden, und wird nicht aktualisiert, wenn die Attribute des Fonts später geändert werden.

Verwenden Sie QPainter::fontInfo(), um die Schriftinformationen beim Malen zu erhalten. Dies führt zu korrekten Ergebnissen auch beim Malen auf nicht bildschirmkompatiblen Geräten.

Siehe auch Checking for the existence of a font.

QFontInfo::QFontInfo(const QFontInfo &fi)

Konstruiert eine Kopie von fi.

[noexcept] QFontInfo::~QFontInfo()

Zerstört das Schrift-Info-Objekt.

bool QFontInfo::bold() const

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

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

bool QFontInfo::exactMatch() const

Gibt true zurück, wenn die übereinstimmende Systemschriftart des Fensters genau die gleiche ist wie die durch die Schriftart angegebene; andernfalls wird false zurückgegeben.

Siehe auch QFont::exactMatch().

QString QFontInfo::family() const

Gibt den Familiennamen der passenden Window-System-Schriftart zurück.

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

bool QFontInfo::fixedPitch() const

Gibt den Wert für den festen Pitch der entsprechenden Window-System-Schriftart zurück.

Siehe auch QFont::fixedPitch().

bool QFontInfo::italic() const

Liefert den Kursivwert der entsprechenden Schriftart des Fenstersystems.

Siehe auch QFont::italic().

int QFontInfo::pixelSize() const

Gibt die Pixelgröße der angepassten Systemschriftart des Fensters zurück.

Siehe auch QFont::pointSize().

int QFontInfo::pointSize() const

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

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

qreal QFontInfo::pointSizeF() const

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

Siehe auch QFont::pointSizeF().

QFont::Style QFontInfo::style() const

Liefert den Stilwert der passenden Fenstersystemschriftart.

Siehe auch QFont::style().

QFont::StyleHint QFontInfo::styleHint() const

Gibt den Stil der passenden Systemschriftart zurück.

Derzeit wird nur der in QFont gesetzte Stil-Hinweis zurückgegeben.

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

QString QFontInfo::styleName() const

Liefert den Stilnamen der passenden Window-System-Schriftart auf Systemen, die dies unterstützen.

Siehe auch QFont::styleName().

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

Tauscht diese Schriftinstanz mit other aus. Dieser Vorgang ist sehr schnell und schlägt nie fehl.

int QFontInfo::weight() const

Gibt die Gewichtung der passenden Window-System-Schriftart zurück.

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

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

Weist die Schriftartinfo in fi zu.

© 2025 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.