QFontInfo Class
QFontInfo クラスは、フォントに関する一般的な情報を提供します。詳細...
Header: | #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 のフォント情報を割り当てます。
本ドキュメントに含まれる文書の著作権は、それぞれの所有者に帰属します。 本書で提供されるドキュメントは、Free Software Foundation が発行したGNU Free Documentation License version 1.3に基づいてライセンスされています。 Qtおよびそれぞれのロゴは、フィンランドおよびその他の国におけるThe Qt Company Ltd.の 商標です。その他すべての商標は、それぞれの所有者に帰属します。