QFontInfo Class
La classe QFontInfo fournit des informations générales sur les polices. En savoir plus...
| En-tête : | #include <QFontInfo> |
| CMake : | find_package(Qt6 REQUIRED COMPONENTS Gui) target_link_libraries(mytarget PRIVATE Qt6::Gui) |
| qmake : | QT += gui |
- Liste de tous les membres, y compris les membres hérités
- Membres obsolètes
- QFontInfo fait partie des classes implicitement partagées.
Remarque : toutes les fonctions de cette classe sont réentrantes.
Fonctions publiques
| 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) |
Description détaillée
La classe QFontInfo fournit les mêmes fonctions d’accès que QFont, par exemple family(), pointSize(), italic(), weight(), fixedPitch(), styleHint(), etc. Mais alors que les fonctions d’accès d’ QFont renvoient les valeurs qui ont été définies, un objet QFontInfo renvoie les valeurs qui s’appliquent à la police qui sera effectivement utilisée pour afficher le texte.
Par exemple, lorsque le programme demande une police Courier de 25 pt sur une machine disposant d’une police Courier non redimensionnable de 24 pt, QFont utilisera (normalement) la police Courier de 24 pt pour le rendu. Dans ce cas, QFont::pointSize() renvoie 25 et QFontInfo::pointSize() renvoie 24.
Il existe trois façons de créer un objet QFontInfo.
- L'appel du constructeur de QFontInfo avec une valeur de type « QFont » crée un objet d’information de police pour une police compatible avec l’affichage à l’écran ; en d’autres termes, la police ne peut pas être une police d’imprimante. Si la police est modifiée ultérieurement, l’objet d’information de police n’ est pas mis à jour.
(Remarque : si vous utilisez une police d’imprimante, les valeurs renvoyées peuvent être inexactes. Les polices d’imprimante n’étant pas toujours accessibles, la police d’écran la plus proche est utilisée si une police d’imprimante est fournie.)
- QWidget::fontInfo() renvoie les informations de police pour la police d’un widget. Cela équivaut à appeler QFontInfo(widget->font()). Si la police du widget est modifiée par la suite, l’objet d’information de police n’ est pas mis à jour.
- QPainter::fontInfo() renvoie les informations relatives à la police actuellement utilisée par un « painter ». Si la police du « painter » est modifiée ultérieurement, l’objet d’informations sur la police n’ est pas mis à jour.
Vérification de l’existence d’une police
Il peut parfois être utile de vérifier si une police existe avant de tenter de l’utiliser. La méthode la plus exhaustive pour ce faire consiste à utiliser ` exactMatch()` :
const QFont segoeFont(QLatin1String("Segoe UI"));
if (QFontInfo(segoeFont).exactMatch()) {
// Use the font...
}Cependant, cette recherche approfondie des familles de polices peut s’avérer coûteuse sur certaines plateformes. La fonction ` QFontDatabase::families().contains() ` constitue une alternative plus rapide, mais moins exhaustive :
const QLatin1String segoeUiFamilyName("Segoe UI");
if (QFontDatabase::families().contains(segoeUiFamilyName)) {
const QFont segoeFont(segoeUiFamilyName);
// Use the font...
}Elle est moins exhaustive car il ne s’agit pas d’une recherche complète : certains alias de familles de polices peuvent ne pas figurer dans la liste. Toutefois, cette approche permet de réduire le temps de démarrage de l’application et doit donc toujours être privilégiée dans la mesure du possible.
Voir également QFont, QFontMetrics et QFontDatabase.
Documentation sur les fonctions membres
QFontInfo::QFontInfo(const QFont &font)
Crée un objet d'informations sur la police pour font.
La police doit être compatible avec l'affichage à l'écran, c'est-à-dire une police que vous utilisez pour dessiner du texte dans widgets ou pixmaps, et non dans QPicture ou QPrinter.
L'objet d'informations sur la police contient les informations relatives à la police transmise au constructeur au moment de sa création, et n'est pas mis à jour si les attributs de la police sont modifiés par la suite.
Utilisez ` QPainter::fontInfo()` pour récupérer les informations sur la police lors du traçage. Cela garantira des résultats corrects même lors du traçage sur un périphérique de sortie non compatible avec l'écran.
Voir également Checking for the existence of a font.
QFontInfo::QFontInfo(const QFontInfo &fi)
Crée une copie de fi.
[constexpr noexcept default] QFontInfo::QFontInfo(QFontInfo &&)
Crée par « move » une instance de ` QFontInfo`.
[noexcept] QFontInfo::~QFontInfo()
Supprime l'objet d'informations sur la police.
bool QFontInfo::bold() const
Renvoie true si weight() renverrait une valeur supérieure à QFont::Normal; sinon, renvoie false.
Voir également weight() et QFont::bold().
bool QFontInfo::exactMatch() const
Renvoie « true » si la police du système de fenêtrage correspondante est exactement la même que celle spécifiée par la police ; sinon, renvoie « false ».
Voir également QFont::exactMatch().
QString QFontInfo::family() const
Renvoie le nom de la famille de la police du système de fenêtrage correspondante.
Voir également QFont::family() et Checking for the existence of a font.
bool QFontInfo::fixedPitch() const
Renvoie la valeur de pas fixe de la police du système de fenêtres adaptée.
Voir aussi QFont::fixedPitch().
bool QFontInfo::italic() const
Renvoie la valeur « italique » de la police du système de fenêtrage correspondante.
Voir aussi QFont::italic().
int QFontInfo::pixelSize() const
Renvoie la taille en pixels de la police correspondante du système de fenêtrage.
Voir également QFont::pointSize().
int QFontInfo::pointSize() const
Renvoie la taille en points de la police du système de fenêtrage correspondante.
Voir également pointSizeF() et QFont::pointSize().
qreal QFontInfo::pointSizeF() const
Renvoie la taille en points de la police du système de fenêtrage correspondante.
Voir également QFont::pointSizeF().
QFont::Style QFontInfo::style() const
Renvoie la valeur de style de la police du système de fenêtrage correspondante.
Voir aussi QFont::style().
QFont::StyleHint QFontInfo::styleHint() const
Renvoie le style de la police système de la fenêtre correspondante.
Actuellement, ne renvoie que l'indication de style définie dans ` QFont`.
Voir également QFont::styleHint() et QFont::StyleHint.
QString QFontInfo::styleName() const
Renvoie le nom du style de la police système correspondant, sur les systèmes qui le prennent en charge.
Voir aussi QFont::styleName().
[noexcept] void QFontInfo::swap(QFontInfo &other)
Remplace cette instance d'informations sur la police par other. Cette opération est très rapide et ne rencontre jamais d'échec.
[since 6.9] QList<QFontVariableAxis> QFontInfo::variableAxes() const
Si la police est une police variable, cette fonction renvoie la liste des axes pris en charge par la police.
Voir setVariableAxis() pour plus de détails sur les axes variables.
Cette fonction a été introduite dans Qt 6.9.
int QFontInfo::weight() const
Renvoie l'épaisseur de la police système de la fenêtre correspondante.
Voir également QFont::weight() et bold().
QFontInfo &QFontInfo::operator=(const QFontInfo &fi)
Attribue les informations relatives à la police contenues dans ` fi`.
© 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.