From 04a11271101f4bdc7597c3354844f8450a0c2005 Mon Sep 17 00:00:00 2001 From: extio-de Date: Thu, 1 Jan 2026 18:45:36 +0100 Subject: [PATCH] fix(renderer): adjust line height calculation in G2DDrawFont for improved text rendering --- data/i18n/i18n.yaml | 4 ++-- .../game_engine/renderer/g2d/bo/rendering/G2DDrawFont.java | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/data/i18n/i18n.yaml b/data/i18n/i18n.yaml index 6af0158..3f25ae8 100644 --- a/data/i18n/i18n.yaml +++ b/data/i18n/i18n.yaml @@ -15,7 +15,7 @@ languages: test-2: "world" test-3: "Welcome to Exo's Game Engine Demo!" test-4: "Select Theme" - test-5: "This is a message\\n\\n123...\\n\\nHave a nice day!" + test-5: "This is a message\\n123...\\nHave a nice day!" test-6: "OK" test-7: "Toggle Audio" test-8: "ScrollArea Demo" @@ -26,7 +26,7 @@ languages: test-2: "welt" test-3: "Willkommen zu Exo's Spieleengine Demo!" test-4: "Design auswählen" - test-5: "Dies ist eine Nachricht\\n\\n123...\\n\\nSchönen Tag noch!" + test-5: "Dies ist eine Nachricht\\n123...\\nSchönen Tag noch!" test-6: "Ok" test-7: "Audio umschalten" test-8: "ScrollArea Demo" diff --git a/src/main/java/de/extio/game_engine/renderer/g2d/bo/rendering/G2DDrawFont.java b/src/main/java/de/extio/game_engine/renderer/g2d/bo/rendering/G2DDrawFont.java index 9c10eb5..d2a20b1 100644 --- a/src/main/java/de/extio/game_engine/renderer/g2d/bo/rendering/G2DDrawFont.java +++ b/src/main/java/de/extio/game_engine/renderer/g2d/bo/rendering/G2DDrawFont.java @@ -91,7 +91,7 @@ public class G2DDrawFont extends G2DAbstractRenderingBo implements DrawFontRende graphics.setColor(this.color == null ? this.rendererData.getThemeManager().getCurrentTheme().getTextNormal().toColor() : this.color.toAwtColor()); final var lines = this.text.contains("\n") ? this.text.split("\n", -1) : new String[] { this.text }; - final var lineHeight = getTextDimensions("M", graphics, this.size, 1.0).getY() + (int) (Math.max(FONT_SIZE_MIN, this.size) * 0.4 * scaleFactor); + final var lineHeight = getTextDimensions("M", graphics, this.size, 1.0).getY() + (int) (Math.max(FONT_SIZE_MIN, this.size) * 0.5); final CoordI2[] lineDims = new CoordI2[lines.length]; int maxLineWidth = 0; for (int i = 0; i < lines.length; i++) {