From 4389d3034b7f980823f73d903c4dbeea7b334be0 Mon Sep 17 00:00:00 2001 From: Uwe Rathmann Date: Tue, 2 May 2023 09:44:29 +0200 Subject: [PATCH] qskTextRenderSize added --- src/common/QskFunctions.cpp | 11 +++++++++++ src/common/QskFunctions.h | 1 + 2 files changed, 12 insertions(+) diff --git a/src/common/QskFunctions.cpp b/src/common/QskFunctions.cpp index 7ca06316..5b40280f 100644 --- a/src/common/QskFunctions.cpp +++ b/src/common/QskFunctions.cpp @@ -162,6 +162,17 @@ qreal qskHorizontalAdvance( const QFontMetricsF& fontMetrics, const QString& tex return fontMetrics.horizontalAdvance( text ); } +QSizeF qskTextRenderSize( const QFontMetricsF& fontMetrics, const QString& text ) +{ + if ( text.isEmpty() ) + return QSizeF( 0.0, 0.0 ); + + QRectF r( 0.0, 0.0, 10e6, 10e6 ); + r = fontMetrics.boundingRect( r, 0, text ); + + return r.size(); +} + qreal qskFuzzyFloor( qreal value, qreal stepSize ) { const double eps = 1.0e-6 * stepSize; diff --git a/src/common/QskFunctions.h b/src/common/QskFunctions.h index f7287bd1..c80c7a3f 100644 --- a/src/common/QskFunctions.h +++ b/src/common/QskFunctions.h @@ -29,6 +29,7 @@ QSK_EXPORT QRectF qskValidOrEmptyInnerRect( QSK_EXPORT qreal qskHorizontalAdvance( const QFont&, const QString& ); QSK_EXPORT qreal qskHorizontalAdvance( const QFontMetricsF&, const QString& ); +QSK_EXPORT QSizeF qskTextRenderSize( const QFontMetricsF&, const QString& ); QSK_EXPORT QRectF qskInterpolatedRect( const QRectF& from, const QRectF& to, qreal progress );