QFontInfo Class
QFontInfo クラスは、フォントに関する一般的な情報を提供します。詳細...
ヘッダ | #include <QFontInfo> |
CMake: | find_package(Qt6 REQUIRED COMPONENTS Gui) target_link_libraries(mytarget PRIVATE Qt6::Gui) |
qmake: | QT += gui |
- 継承メンバを含む全メンバのリスト
- 非推奨メンバー
- QFontInfoは暗黙的に共有されるクラスの一部です。
注意:このクラスの関数はすべてリエントラントです。
パブリック関数
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) |
詳細説明
QFontInfo クラスは、QFont と同じアクセス関数を提供します。例えば、family()、pointSize()、italic()、weight()、fixedPitch()、styleHint() などです。しかし、QFont アクセス関数が設定された値を返すのに対して、QFontInfo オブジェクトは、テキストを描画するために実際に使用されるフォントに適用される値を返します。
例えば、スケーラブルでない 24pt Courier フォントを持つマシンで、プログラムが 25pt Courier フォントを要求した場合、QFont は(通常)レンダリングに 24pt Courier を使用します。この場合、QFont::pointSize() は 25 を返し、QFontInfo::pointSize() は 24 を返す。
QFontInfo オブジェクトを作成するには 3 つの方法があります。
- QFontInfo コンストラクタをQFont で呼び出すと、スクリーン互換フォントのフォント情報オブジェクトが作成されます。フォントを後で変更しても、フォント情報オブジェクトは更新されません。
(注意:プリンタフォントを使用した場合、返される値は不正確かもしれません。プリンタフォントは常にアクセスできるわけではないので、プリンタフォントが提供された場合は、最も近いスクリーンフォントが使用されます)。
- QWidget::fontInfo() は、ウィジェットのフォントのフォント情報を返します。これはQFontInfo(widget->font())を呼び出すのと同じです。ウィジェットのフォントが後で変更されても、フォント情報オブジェクトは更新されません。
- QPainter::fontInfo() は、ペインターの現在のフォントのフォント情報を返します。ペインターのフォントが後で変更されても、フォント情報オブジェクトは更新されません。
フォントの存在の確認
フォントを使おうとする前に、そのフォントが存在するかどうかをチェックすると便利なことがあります。そのための最も徹底的な方法はexactMatch() を使うことです:
const QFont segoeFont(QLatin1String("Segoe UI")); if (QFontInfo(segoeFont).exactMatch()) { // Use the font... }
しかし、このようなファミリーの深い検索は、プラットフォームによっては高くつくことがあります。QFontDatabase::families().contains()
は、より高速ですが、より徹底的ではありません:
const QLatin1String segoeUiFamilyName("Segoe UI"); if (QFontDatabase::families().contains(segoeUiFamilyName)) { const QFont segoeFont(segoeUiFamilyName); // Use the font... }
完全な検索ではないので、完全ではありません: いくつかのフォントファミリーのエイリアスがリストにないかもしれません。しかし、このアプローチはアプリケーションの起動時間を速くするので、可能であれば常に優先されるべきです。
QFont 、QFontMetrics 、QFontDatabaseも参照してください 。
メンバ関数文書
QFontInfo::QFontInfo(const QFont &font)
font に対する フ ォ ン ト 情報オブジ ェ ク ト を構築 し ます。
フォントはスクリーン互換でなければなりません。つまり、QPicture やQPrinter ではなく、widgets やpixmaps でテキストを描画するときに使用するフォントでなければなりません。
フ ォ ン ト 情報オブジ ェ ク ト は、 コ ス ト ラ ク タ が生成 さ れ る 際に渡 さ れ る フ ォ ン ト の情報を保持 し てお り 、 その後に フ ォ ン ト の属性が変更 さ れて も 更新 さ れません。
描画時にフ ォ ン ト 情報を取得す る にはQPainter::fontInfo () を用います。これにより、スクリーン互換でないペイントデバイスでペイントした場合でも、正しい結果が得られます。
Checking for the existence of a fontも参照してください 。
QFontInfo::QFontInfo(const QFontInfo &fi)
fi のコピーを作成する。
[noexcept]
QFontInfo::~QFontInfo()
フォント情報オブジェクトを破棄する。
bool QFontInfo::bold() const
weight() がQFont::Normal より大きい値を返す場合はtrue
を返し、そうでない場合はfalse
を返す。
weight() およびQFont::bold()も参照のこと 。
bool QFontInfo::exactMatch() const
マッチしたウィンドウシステムフォントがフォントで指定されたものと全く同じであればtrue
を返し、そうでなければfalse
を返します。
QFont::exactMatch()も参照 。
QString QFontInfo::family() const
マッチしたウィンドウシステムフォントのファミリー名を返します。
QFont::family() およびChecking for the existence of a fontも参照 。
bool QFontInfo::fixedPitch() const
マッチしたウィンドウシステムフォントの固定ピッチ値を返す。
QFont::fixedPitch()も参照 。
bool QFontInfo::italic() const
マッチしたウィンドウ・システム・フォントのイタリック値を返します。
QFont::italic()も参照 。
int QFontInfo::pixelSize() const
マッチしたウィンドウ・システム・フォントのピクセル・サイズを返します。
QFont::pointSize()も参照 。
int QFontInfo::pointSize() const
マッチしたウィンドウ・システム・フォントのポイント・サイズを返します。
pointSizeF() およびQFont::pointSize()も参照 。
qreal QFontInfo::pointSizeF() const
マッチしたウィンドウ・システム・フォントのポイント・サイズを返します。
QFont::pointSizeF()も参照 。
QFont::Style QFontInfo::style() const
マッチしたウィンドウ・システム・フォントのスタイル値を返します。
QFont::style()も参照 。
QFont::StyleHint QFontInfo::styleHint() const
マッチしたウィンドウシステムフォントのスタイルを返します。
現在のところ、QFont で設定されたスタイルヒントのみを返します。
QFont::styleHint() およびQFont::StyleHintも参照してください 。
QString QFontInfo::styleName() const
ウィンドウシステムフォントに対応しているシステムで、マッチしたウィンドウシステムフォントのスタイル名を返します。
QFont::styleName()も参照 。
[noexcept]
void QFontInfo::swap(QFontInfo &other)
このフォント情報インスタンスをother と交換する。この操作は非常に高速で、失敗することはない。
int QFontInfo::weight() const
マッチしたウィンドウシステムフォントのウェイトを返します。
QFont::weight() およびbold()も参照 。
QFontInfo &QFontInfo::operator=(const QFontInfo &fi)
フォント情報をfi で割り当てます。
© 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.