From dbfd24e295941bdbd656ed82cf57d7e3ca169373 Mon Sep 17 00:00:00 2001 From: Bowon Ryu Date: Wed, 21 May 2025 19:47:44 +0900 Subject: [PATCH] Fix minor render scale issues Integerizing the min line size makes the result more unnatural, so I change it to a simple calculation. And as I kept adding complex formulas to compensate for the real error of layout size, the final result became the same as width / scale. I will keep this state until I find a better way. Change-Id: Ica8e456567db14d7a0ce2848521b35a85494edc6 Signed-off-by: Bowon Ryu --- .../internal/text/async-text/async-text-loader-impl.cpp | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/dali-toolkit/internal/text/async-text/async-text-loader-impl.cpp b/dali-toolkit/internal/text/async-text/async-text-loader-impl.cpp index 31af9d6b16..3714843f98 100644 --- a/dali-toolkit/internal/text/async-text/async-text-loader-impl.cpp +++ b/dali-toolkit/internal/text/async-text/async-text-loader-impl.cpp @@ -937,8 +937,8 @@ AsyncTextRenderInfo AsyncTextLoader::Render(AsyncTextParameters& parameters) bool isRenderScale = parameters.renderScale > 1.0f ? true : false; if(isRenderScale) { - float width = (layoutSize.width / parameters.renderScale) * (layoutSize.width / ((layoutSize.width / parameters.renderScale) * parameters.renderScale)); - float height = (layoutSize.height / parameters.renderScale) * (layoutSize.height / ((layoutSize.height / parameters.renderScale) * parameters.renderScale)); + float width = layoutSize.width / parameters.renderScale; + float height = layoutSize.height / parameters.renderScale; renderInfo.size = Size(width, height); } else @@ -1116,7 +1116,7 @@ Size AsyncTextLoader::SetupRenderScale(AsyncTextParameters& parameters, bool& ca parameters.renderScaleHeight = parameters.textHeight; parameters.textWidth = ConvertToEven(ceil(parameters.textWidth * parameters.renderScale)); parameters.textHeight = ConvertToEven(ceil(parameters.textHeight * parameters.renderScale)); - parameters.minLineSize = ConvertToEven(ceil(parameters.minLineSize * parameters.renderScale)); + parameters.minLineSize = parameters.minLineSize * parameters.renderScale; cachedNaturalSize = false; return Size::ZERO; } @@ -1142,7 +1142,7 @@ Size AsyncTextLoader::SetupRenderScale(AsyncTextParameters& parameters, bool& ca parameters.renderScaleHeight = parameters.textHeight; parameters.textWidth = ConvertToEven(ceil(parameters.textWidth * parameters.renderScale)); parameters.textHeight = ConvertToEven(ceil(parameters.textHeight * parameters.renderScale)); - parameters.minLineSize = ConvertToEven(ceil(parameters.minLineSize * parameters.renderScale)); + parameters.minLineSize = parameters.minLineSize * parameters.renderScale; // The texture in RenderScale needs to be resized because it exceeds the control size. if(!widthEllipsized && naturalSize.width > parameters.textWidth) -- 2.34.1