From d72ed1078fd366c953348ee2469b1127b355fd2c Mon Sep 17 00:00:00 2001 From: Benedikt Stebner Date: Fri, 13 Sep 2024 01:10:28 +0200 Subject: [PATCH] Make sure GlyphRunImpl.InkBounds are always at a positive location (#16601) --- src/Skia/Avalonia.Skia/GlyphRunImpl.cs | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/src/Skia/Avalonia.Skia/GlyphRunImpl.cs b/src/Skia/Avalonia.Skia/GlyphRunImpl.cs index 732d187136..205daf4c7b 100644 --- a/src/Skia/Avalonia.Skia/GlyphRunImpl.cs +++ b/src/Skia/Avalonia.Skia/GlyphRunImpl.cs @@ -75,6 +75,11 @@ namespace Avalonia.Skia currentX += advance; } + if (runBounds.Left < 0) + { + runBounds = runBounds.Translate(new Vector(-runBounds.Left, 0)); + } + ArrayPool.Shared.Return(glyphBounds); BaselineOrigin = baselineOrigin;