From 4757e7b955fa2e249e3ae8ba3b309edafabc2757 Mon Sep 17 00:00:00 2001 From: Bixilon Date: Thu, 15 Jun 2023 14:06:56 +0200 Subject: [PATCH] remove font spacing when shadow --- .../gui/rendering/font/renderer/code/CodePointRenderer.kt | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/src/main/java/de/bixilon/minosoft/gui/rendering/font/renderer/code/CodePointRenderer.kt b/src/main/java/de/bixilon/minosoft/gui/rendering/font/renderer/code/CodePointRenderer.kt index 9ff1b7538..a237ed33c 100644 --- a/src/main/java/de/bixilon/minosoft/gui/rendering/font/renderer/code/CodePointRenderer.kt +++ b/src/main/java/de/bixilon/minosoft/gui/rendering/font/renderer/code/CodePointRenderer.kt @@ -22,6 +22,7 @@ import de.bixilon.minosoft.gui.rendering.font.renderer.CodePointAddResult import de.bixilon.minosoft.gui.rendering.font.renderer.element.TextOffset import de.bixilon.minosoft.gui.rendering.font.renderer.element.TextRenderInfo import de.bixilon.minosoft.gui.rendering.font.renderer.element.TextRenderProperties +import de.bixilon.minosoft.gui.rendering.font.renderer.properties.FormattingProperties.SHADOW_OFFSET import de.bixilon.minosoft.gui.rendering.gui.mesh.GUIVertexConsumer import de.bixilon.minosoft.gui.rendering.gui.mesh.GUIVertexOptions import de.bixilon.minosoft.gui.rendering.util.vec.vec2.Vec2Util.EMPTY @@ -41,7 +42,12 @@ interface CodePointRenderer { private fun getVerticalSpacing(offset: TextOffset, properties: TextRenderProperties): Float { if (offset.offset.x == offset.initial.x) return 0.0f // not at line start - return properties.charSpacing.vertical * properties.scale + var spacing = properties.charSpacing.vertical + if (properties.shadow) { + spacing = maxOf(spacing - SHADOW_OFFSET, 0.0f) + } + + return spacing * properties.scale }