QFontMetrics Class
QFontMetrics クラスは、フォント・メトリクス情報を提供します。詳細...
ヘッダ | #include <QFontMetrics> |
CMake: | find_package(Qt6 REQUIRED COMPONENTS Gui) target_link_libraries(mytarget PRIVATE Qt6::Gui) |
qmake: | QT += gui |
- 継承メンバを含む全メンバ一覧
- QFontMetricsは、Painting ClassesおよびImplicitly Shared Classesの一部です。
注意:このクラスの関数はすべてリエントラントです。
パブリック関数
QFontMetrics(const QFont &font) | |
QFontMetrics(const QFont &font, const QPaintDevice *paintdevice) | |
QFontMetrics(const QFontMetrics &fm) | |
~QFontMetrics() | |
int | ascent() const |
int | averageCharWidth() const |
QRect | boundingRect(QChar ch) const |
QRect | boundingRect(const QString &text) const |
(since 6.3) QRect | boundingRect(const QString &text, const QTextOption &option) const |
QRect | boundingRect(const QRect &rect, int flags, const QString &text, int tabStops = 0, int *tabArray = nullptr) const |
QRect | boundingRect(int x, int y, int width, int height, int flags, const QString &text, int tabStops = 0, int *tabArray = nullptr) const |
int | capHeight() const |
int | descent() const |
QString | elidedText(const QString &text, Qt::TextElideMode mode, int width, int flags = 0) const |
qreal | fontDpi() const |
int | height() const |
(since 6.3) int | horizontalAdvance(const QString &text, const QTextOption &option) const |
int | horizontalAdvance(const QString &text, int len = -1) const |
int | horizontalAdvance(QChar ch) const |
bool | inFont(QChar ch) const |
bool | inFontUcs4(uint ucs4) const |
int | leading() const |
int | leftBearing(QChar ch) const |
int | lineSpacing() const |
int | lineWidth() const |
int | maxWidth() const |
int | minLeftBearing() const |
int | minRightBearing() const |
int | overlinePos() const |
int | rightBearing(QChar ch) const |
QSize | size(int flags, const QString &text, int tabStops = 0, int *tabArray = nullptr) const |
int | strikeOutPos() const |
void | swap(QFontMetrics &other) |
QRect | tightBoundingRect(const QString &text) const |
(since 6.3) QRect | tightBoundingRect(const QString &text, const QTextOption &option) const |
int | underlinePos() const |
int | xHeight() const |
bool | operator!=(const QFontMetrics &other) const |
QFontMetrics & | operator=(QFontMetrics &&other) |
QFontMetrics & | operator=(const QFontMetrics &fm) |
bool | operator==(const QFontMetrics &other) const |
詳細説明
QFontMetrics 関数は、指定されたフォントの文字と文字列のサイズを計算します。このクラスはQFontMetricsF の整数ベースバージョンで、すべての数値を最も近い整数に丸めます。こ れは、 分数 メ ト リ ッ ク を持つすべての フ ォ ン ト に対 し て、 その結果が不正確にな る こ と を意味 し ます。たいていの場合、QFontMetricsF を代わりに使うべきです。
QFontMetrics オブジェクトを作成する方法は 3 つあります:
- QFontMetrics コンストラクタをQFont で呼び出すと、スクリーン互換フォント用のフォント・メトリクス・オブジェクトが作成されます。フォントを後で変更しても、フォント・メトリクス・オブジェクトは更新されません。
(注: プリンタ・フォントを使用した場合、返される値は不正確かもしれません。プリンタ・フォントは常にアクセスできるとは限らないので、プリンタ・フォントが提供された場合は、最も近いスクリーン・フォントが使用されます)。
- QWidget::fontMetrics() は、ウィジェットのフォントのフォント・メトリクスを返します。これはQFontMetrics(widget->font())と同等です。ウィジェットのフォントが後で変更されても、フォント・メトリクス・オブジェクトは更新されません。
- QPainter::fontMetrics() は、ペインターの現在のフォントのフォント・メトリクスを返します。ペインターのフォントが後で変更されても、フォント・メトリクス・オブジェクトは更新されません。
いったん作成されると、このオブジェクトは、フォント、そのキャラクタ、およびフォントでレンダリングされた文字列の個々のメトリクスにアクセスするための関数を提供します。
フ ォ ン ト を操作す る 関数はいくつかあ り ます :ascent () ・descent () ・height () ・leading () ・lineSpacing () は、 フ ォ ン ト の基本的なサ イ ズ ・ プ ロ パテ ィ を返 し ます。underlinePos(),overlinePos(),strikeOutPos(),lineWidth() 関数は、文字の下線、上線、取り消し線のプロパティを返します。これらの関数はすべて高速です。
また、フォント内のグリフの集合を操作する関数もいくつかあります:minLeftBearing(),minRightBearing(),maxWidth()。これらは必然的に遅くなるので、できれば避けることをお勧めします。
各文字について、horizontalAdvance(),leftBearing(),rightBearing() を取得し、inFont() を使ってそれがフォント内にあるかどうかを調べることができます。また、その文字を文字列として扱い、文字列関数を使用することもできます。
文字列関数には、文字列の送り幅をピクセル単位(プリンタの場合はポイント単位)で返すhorizontalAdvance ()、レンダリングされた文字列を含むのに十分な大きさの矩形を返すboundingRect ()、その矩形のサイズを返すsize ()があります。
注意: 先行幅は、実際にレンダリングされるテキストの幅とは異なる場合があります。これは、文字列の原点から文字を追加する位置までの距離を指します。テキストにははみ出しがあったり(たとえば斜体フォントの場合)、文字と文字の間にパディングがあったりするため、進み幅はテキストの実際のレンダリングよりも小さくなったり大きくなったりします。これをテキストの右寄せと呼びます。
例
QFont font("times", 24); QFontMetrics fm(font); int pixelsWide = fm.horizontalAdvance("What's the advance width of this text?"); int pixelsHigh = fm.height();
QFont 、QFontInfo 、QFontDatabaseも参照 。
メンバ関数ドキュメント
[explicit]
QFontMetrics::QFontMetrics(const QFont &font)
font に対する フ ォ ン ト メ ト リ ッ ク オブジ ェ ク ト を構築 し ます。
フ ォ ン ト メ ト リ ッ ク は、font の作成に用い ら れた paintdevice と 互換です。
フォント・メトリクス・オブジェクトは、作成時にコンストラクタで渡されたフォントの情報を保持し、フォントの属性が後で変更されても更新されません。
QFontMetrics(constQFont &,QPaintDevice *) を使用して、特定のペイント・デバイスと互換性のあるフォント・メトリクスを取得します。
QFontMetrics::QFontMetrics(const QFont &font, const QPaintDevice *paintdevice)
font とpaintdevice に対す る フ ォ ン ト メ ト リ ッ ク オブジ ェ ク ト を構築 し ます。
フ ォ ン ト の メ ト リ ッ ク は、 渡 さ れた paintdevice と 互換です。paintdevice がnullptr
の場合、 メ ト リ ッ ク は画面互換にな り ます。 すなわち、widgets かpixmaps でテ キ ス ト を描 く ために フ ォ ン ト を使用す る と き に得 ら れ る メ ト リ ッ ク であ り 、QPicture かQPrinter では得られません。
フ ォ ン ト メ ト リ ッ ク オブジ ェ ク ト は、 コ ス ト ラ ク タ で渡された フ ォ ン ト の情報を、 それが生成 さ れた時点で保持 し ます。
QFontMetrics::QFontMetrics(const QFontMetrics &fm)
fm のコピーを作成する。
[noexcept]
QFontMetrics::~QFontMetrics()
フ ォ ン ト メ ト リ ッ ク オブジ ェ ク ト を破棄 し 、 割 り 当て ら れてい る すべての リ ソ ース を解放 し ます。
int QFontMetrics::ascent() const
フォントのアセントを返します。
フォントのアセントとは、ベースラインから文字が伸びる最も高い位置までの距離のことです。実際には、フォントデザイナーの中にはこのルールを破る人もいます。たとえば、文字の上に複数のアクセントを置いたり、特定の文字に対応させたりする場合などです。
descent()も参照のこと 。
int QFontMetrics::averageCharWidth() const
フォント内のグリフの平均幅を返す。
QRect QFontMetrics::boundingRect(QChar ch) const
文字ch を座標系の原点に描画 し た と き に、 イ ン ク で覆われ る 矩形を返 し ます。
外接矩形は (0, 0) よ り も 左へ広が る こ と があ り (た と えば斜体フ ォ ン ト の場合)、 テ キ ス ト 出力は外接矩形内のすべてのピ ク セルを覆 う こ と があ る こ と に留意 し て く だ さ い。空白キ ャ ラ ク タ の場合、 矩形は通常空にな り ます。
矩形は通常、基準線の上にも下にも広がることに注意してください。
警告 返される矩形の幅は、文字の事前幅ではありません。代わりに boundingRect(constQString &) またはhorizontalAdvance() を使用してください。
horizontalAdvance()も参照 。
QRect QFontMetrics::boundingRect(const QString &text) const
text で指定した文字列内の文字の外接矩形を返します。外接矩形は常に、テキストが (0, 0) で描画された場合に少なくともカバーするピクセルの集合をカバーします。
外接矩形は、 斜体フ ォ ン ト の場合等、 (0, 0) よ り も 左へ広が る こ と があ り 、 返 さ れ る 矩形の幅は、horizontalAdvance() メ ソ ッ ド が返す幅 と は異な る 可能性があ る こ と に留意 し て く だ さ い。
文字列の事前幅を知りたい場合(文字列を横に並べたい場合)には、代わりにhorizontalAdvance() を使用します。
改行文字は、改行文字としてではなく通常の文字として処理されます。
外接矩形の高さは、少なくともheight() が返す値と同じ大きさになります。
horizontalAdvance()、height()、QPainter::boundingRect()、tightBoundingRect()も参照 。
[since 6.3]
QRect QFontMetrics::boundingRect(const QString &text, const QTextOption &option) const
option を用いてレイアウトされた、text で指定された文字列内の文字の外接矩形を返します。外接矩形は常に、テキストが (0, 0) で描画された場合に少なくともカバーするピクセルの集合をカバーします。
外接矩形は、 斜体フ ォ ン ト の場合等、 (0, 0) よ り も 左へ広が る こ と があ り 、 返 さ れ る 矩形の幅は、horizontalAdvance() メ ソ ッ ド が返す幅 と は異な る 可能性があ る こ と に留意 し て く だ さ い。
文字列の事前幅を知りたい場合(文字列を横に並べたい場合)には、代わりにhorizontalAdvance() を使用します。
改行文字は、改行文字としてではなく通常の文字として処理されます。
外接矩形の高さは、少なくともheight() が返す値と同じ大きさになります。
この関数は Qt 6.3 で導入されました。
horizontalAdvance(),height(),QPainter::boundingRect(),tightBoundingRect()も参照してください 。
QRect QFontMetrics::boundingRect(const QRect &rect, int flags, const QString &text, int tabStops = 0, int *tabArray = nullptr) const
これはオーバーロードされた関数である。
text で指定 さ れた文字列内のキ ャ ラ ク タ の外接矩形を返 し ます。 こ れは、 テ キ ス ト を (0, 0) で描画 し た と き に覆 う ピ ク セルの集合です。描画、 ひいては外接矩形は、 矩形rect に拘束 さ れます。
引数flags は、 以下のフラグのビ ッ ト 単位の OR です:
- Qt::AlignLeft アラビア語とヘブライ語の場合は右寄せになりますが、それ以外は左寄せになります。
- Qt::AlignRight ア ラ ビ ア文字 と ヘブ ラ イ 文字の場合は左揃えにな り ますが、 それ以外は右揃えにな り ます。
- Qt::AlignJustify 両端揃えテキストを作成します。
- Qt::AlignHCenter 水平に中央揃えします。
- Qt::AlignTop は上枠に揃えます。
- Qt::AlignBottom は下ボーダーに揃えます。
- Qt::AlignVCenter 縦中央揃え
- Qt::AlignCenter (== )
Qt::AlignHCenter | Qt::AlignVCenter
- Qt::TextSingleLine テキスト内の改行文字を無視します。
- Qt::TextExpandTabs タブを展開します(下記参照)。
- Qt::TextShowMnemonic すなわち下線。
- Qt::TextWordWrap すなわち下線。
Qt::Horizontal alignment のデフォルトは で、 vertical alignment のデフォルトは です。Qt::AlignLeft Qt::AlignTop
水平アライメントフラグまたは垂直アライメントフラグのいくつかが設定されている場合、結果のアライメントは不定です。
Qt::TextExpandTabs がflags で設定 さ れてい る 場合 :tabArray が非 NULL の と き は、 タ ブに対す る ピ ク セル位置の 0 終端シーケ ン ス を指定 し ます。 そ う でない と き は、tabStops が非ゼ ロ の と き は、 タ ブ間隔 (ピ ク セル単位) と し て用い ら れます。
こ の外接矩形は、 斜体フ ォ ン ト の場合等、 (0, 0) よ り も 左へ広が る こ と があ り 、 テ キ ス ト 出力がその外接矩形内のすべてのピ ク セルを覆 う こ と があ る こ と に留意 し て く だ さ い。
改行キ ャ ラ ク タ は改行 と し て処理 さ れます。
実際の文字の高 さ は異な る も のの、 "Yes" と "yes" の外接矩形の高 さ は同 じ です。
こ の関数が返す外接矩形は、 も っ と 単純な boundingRect() 関数で算出 さ れ る も の よ り も 若干大き く な り ます。こ の関数は、 複数行テ キ ス ト が正 し く 整列す る ために必要な、maximum left とright のフ ォ ン ト ベーシ ョ ン を用います。ま た、 個々の文字の高 さ で はな く fontHeight() ・lineSpacing() を用いて高 さ を算出 し ます。
horizontalAdvance(),QPainter::boundingRect(),Qt::Alignmentも参照 。
QRect QFontMetrics::boundingRect(int x, int y, int width, int height, int flags, const QString &text, int tabStops = 0, int *tabArray = nullptr) const
これはオーバーロードされた関数である。
与えられたtext の外接矩形を,x とy の座標,width とheight で指定された矩形内に返します.
Qt::TextExpandTabs がflags で設定 さ れてお り 、 かつtabArray が NULL でない と き は、 タ ブに対す る ピ ク セル位置の 0 終端シーケ ン ス を指定 し ます。 そ う でない と き は、tabStops が 0 でない と き は、 タ ブ間隔 (ピ ク セル単位) と し て用い ら れます。
int QFontMetrics::capHeight() const
フォントのキャップの高さを返します。
フォントのキャップハイトとは、ベースラインからの大文字の高さのことです。具体的には、O のような丸い文字や A のような尖った文字とは対照的に、H や I のような平らな大文字の高さです。
ascent()も参照 。
int QFontMetrics::descent() const
フォントの下降点を返します。
下降値とは、ベースラインから文字が伸びる最も低い点までの距離のことです。実際には、フォントデザイナーの中には、特定の文字に対応するためにこのルールを破る人もいるので、この値が小さすぎる可能性もあります (まれですが)。
ascent()も参照 。
QString QFontMetrics::elidedText(const QString &text, Qt::TextElideMode mode, int width, int flags = 0) const
文字列text がwidth よりも幅が広い場合、その文字列の消去バージョン(つまり、"... "を含む文字列)を返す。そうでない場合は、元の文字列を返す。
mode パラメータは、テキストを左側(例:"...tech")、中央(例:"Tr...ch")、または右側(例:"Trol...")のいずれにエラ イドするかを指定する。
width は文字数ではなくピクセル数で指定する。
引数flags はオプションで、現在は値としてQt::TextShowMnemonic のみをサポートしている。
エ リ ド マ ー ク はlayoutdirection に従います。 た と えば、 右書 き レ イ ア ウ ト の場合、mode がQt::ElideLeft
の と き はテ キ ス ト の右側に、mode がQt::ElideRight
の と き はテ キ ス ト の左側に位置 し ます。
qreal QFontMetrics::fontDpi() const
フォントの DPI を返します。
int QFontMetrics::height() const
フォントの高さを返す。
leading() およびlineSpacing()も参照 。
[since 6.3]
int QFontMetrics::horizontalAdvance(const QString &text, const QTextOption &option) const
option を使ってレイアウトされたtext の水平方向の進み具合をピクセル単位で返す。
進みは、text の後に続く文字を描画するのに適切な距離です。
この関数は Qt 6.3 で導入されました。
boundingRect()も参照してください 。
int QFontMetrics::horizontalAdvance(const QString &text, int len = -1) const
text の最初のlen 文字の水平方向の進み量をピクセル単位で返す。len が負(デフォルト)の場合、文字列全体が使用される。len がかなり短い場合でも、text の全長が分析される。
これは、text の後に続く文字を描画するのに適切な距離である。
boundingRect()も参照のこと 。
int QFontMetrics::horizontalAdvance(QChar ch) const
これはオーバーロードされた関数である。
文字ch の水平方向の進み具合をピクセル単位で返す。これは、ch の後に続く文字を描画するのに適切な距離である。
メトリクスの一部は画像に記述されています。中央の暗い長方形は、各文字の論理的な horizontalAdvance() をカバーしています。外側の淡い長方形は、各文字のleftBearing() とrightBearing() をカバーしている。この特定のフォントの "f "の方位は両方とも負で、"o "の方位は両方とも正であることに注意。
警告: 警告 : こ の関数は、 ア ラ ビ ア文字のキ ャ ラ ク タ や、 文字列の途中のノンスペーシングマークに対しては不正確な結果を生成し ます。対話型テキストコントロールを実装する場合は、代わりにQTextLayout を使用してください。
boundingRect()も参照して ください。
bool QFontMetrics::inFont(QChar ch) const
文字ch が フ ォ ン ト 内で有効なキ ャ ラ ク タ であ る な らtrue
を返し、 そ う でないならfalse
を返す。
bool QFontMetrics::inFontUcs4(uint ucs4) const
UCS-4/UTF-32 でエン コ ーデ ィ ン グ さ れたキ ャ ラ ク タucs4 が フ ォ ン ト 内で有効なキ ャ ラ ク タ であ る な らtrue
を返し、 そ う でないな らfalse
を返す。
int QFontMetrics::leading() const
leading関数は、フォントのleadingを返します。
これは自然な行間です。
height() およびlineSpacing()も参照 。
int QFontMetrics::leftBearing(QChar ch) const
フォント内の文字ch の左方位を返す。
左方位は、文字の論理原点から、文字の左端のピクセルの右方向の距離です。この値は、文字のピクセルが論理原点よりも左側にある場合は負になります。
このメトリックのグラフィカルな説明についてはhorizontalAdvance() を参照のこと。
rightBearing()、minLeftBearing()、horizontalAdvance()も参照のこと 。
int QFontMetrics::lineSpacing() const
ある基準線から次の基準線までの距離を返す。
この値は常にleading()+height() に等しい。
int QFontMetrics::lineWidth() const
下線と取り消し線の幅を、フォントのポイントサイズで調整して返します。
underlinePos()、overlinePos() およびstrikeOutPos()も参照 。
int QFontMetrics::maxWidth() const
フォント内で最も幅の広い文字の幅を返します。
int QFontMetrics::minLeftBearing() const
フォントの最小左ベアリングを返します。
これは、フォント内のすべてのキャラクタの中で最小のleftBearing(char) です。
フォントが大きい場合、この関数は非常に遅くなる可能性があることに注意。
minRightBearing() およびleftBearing()も参照 。
int QFontMetrics::minRightBearing() const
フォントの最小右方位を返します。
これは、フォント内のすべてのキャラクタの中で最小のrightBearing(char) です。
フォントが大きい場合、この関数は非常に遅くなる可能性があることに注意。
minLeftBearing() およびrightBearing()も参照 。
int QFontMetrics::overlinePos() const
ベースラインからオーバーラインを引くべき位置までの距離を返します。
underlinePos()、strikeOutPos() およびlineWidth()も参照 。
int QFontMetrics::rightBearing(QChar ch) const
フォント内の文字ch の右方位を返す。
右方位は、後続の文字の論理原点から、その文字の右端のピクセルの左方向の距離です。この値は、文字のピクセルが文字のhorizontalAdvance() の右側に広がっている場合は負になります。
このメトリックのグラフィカルな説明についてはhorizontalAdvance() を参照のこと。
leftBearing()、minRightBearing()、horizontalAdvance()も参照のこと 。
QSize QFontMetrics::size(int flags, const QString &text, int tabStops = 0, int *tabArray = nullptr) const
text のサイズをピクセル単位で返す。
flags 引数は、以下のフラグのビット OR です:
- Qt::TextSingleLine 改行文字を無視する。
- Qt::TextExpandTabs タブを展開する(下記参照)
- Qt::TextShowMnemonic すなわち下線。
- Qt::TextWordWrap すなわち下線。
Qt::TextExpandTabs がflags で設定されている場合:tabArray が NULL でない場合、0 終端のタブ用ピクセル位置シーケンスを指定する。そうでない場合、tabStops が 0 でない場合、タブ間隔(ピクセル単位)として使用される。
改行文字は改行文字として処理される。
実際の文字の高さは異なるが、"Yes "と "yes "の外接矩形の高さは同じである。
boundingRect()も参照のこと 。
int QFontMetrics::strikeOutPos() const
ベースラインから三振ラインを引くべき位置までの距離を返す。
underlinePos(),overlinePos(),lineWidth()も参照 。
[noexcept]
void QFontMetrics::swap(QFontMetrics &other)
こ の フ ォ ン ト メ ト リ ッ ク の イ ン ス タ ン ス をother と 交換 し ます。この操作は非常に高速で、失敗することはない。
QRect QFontMetrics::tightBoundingRect(const QString &text) const
text で指定 さ れた文字列内のキ ッ チ と し た外接矩形を返 し ます。外接矩形は常に、テキストが (0, 0) で描画された場合にカバーするであろうピクセル集合を少なくともカバーします。
外接矩形は、 斜体フ ォ ン ト の場合等、 (0, 0) よ り も 左へ広が る こ と があ り 、 返 さ れ る 矩形の幅は、horizontalAdvance() メ ソ ッ ド が返す幅 と は異な る 可能性があ る こ と に留意 し て く だ さ い。
文字列の事前幅を知りたい場合(文字列を横に並べたい場合)には、代わりにhorizontalAdvance() を使用します。
改行文字は、改行文字としてではなく通常の文字として処理されます。
horizontalAdvance()、height()、boundingRect()も参照のこと 。
[since 6.3]
QRect QFontMetrics::tightBoundingRect(const QString &text, const QTextOption &option) const
option を用いて配置された、text で指定された文字列内の文字を囲む、きつい外接矩形を返します。外接矩形は常に、テキストが (0, 0) で描画された場合にカバーするであろうピクセル集合を少なくともカバーします。
外接矩形は、 斜体フ ォ ン ト の場合等、 (0, 0) よ り も 左へ広が る こ と があ り 、 返 さ れ る 矩形の幅は、horizontalAdvance() メ ソ ッ ド が返す幅 と は異な る 可能性があ る こ と に留意 し て く だ さ い。
文字列の事前幅を知りたい場合(文字列を横に並べたい場合)は、代わりにhorizontalAdvance() を使用します。
改行文字は改行文字としてではなく、通常の文字として処理されます。
この関数は Qt 6.3 で導入されました。
horizontalAdvance(),height(),boundingRect()も参照してください 。
int QFontMetrics::underlinePos() const
基準線からアンダースコアを引くべき位置までの距離を返す。
overlinePos()、strikeOutPos() およびlineWidth()も参照 。
int QFontMetrics::xHeight() const
フォントの 'x' の高さを返す。これは文字 'x' の高さと同じであることが多いが、 必ずしも同じとは限らない。
bool QFontMetrics::operator!=(const QFontMetrics &other) const
other が こ のオブジ ェ ク ト と 等 し く なければtrue
を返し、 そ う でなければfalse
を返す。
2つのフォントメトリクスは、それらが同じQFont から構築され、それらが構築されたペイントデバイスが互換性があるとみなされる場合、等しいとみなされます。
operator==()も参照 。
[noexcept]
QFontMetrics &QFontMetrics::operator=(QFontMetrics &&other)
Move-other をこのQFontMetrics インスタンスに割り当てる。
QFontMetrics &QFontMetrics::operator=(const QFontMetrics &fm)
フ ォ ン ト の メ ト リ ッ ク を割 り 当て るfm 。
bool QFontMetrics::operator==(const QFontMetrics &other) const
other が こ のオブジ ェ ク ト と 等 し ければtrue
を返し、 そ う でなければfalse
を返す。
2つのフォントメトリクスは、それらが同じQFont から構築され、それらが構築されたペイントデバイスが互換性があるとみなされる場合、等しいとみなされます。
operator!=()も参照 。
© 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.