diff --git a/src/SixLabors.Fonts/TextMeasurer.cs b/src/SixLabors.Fonts/TextMeasurer.cs index 427014c3..2e422357 100644 --- a/src/SixLabors.Fonts/TextMeasurer.cs +++ b/src/SixLabors.Fonts/TextMeasurer.cs @@ -1,8 +1,6 @@ // Copyright (c) Six Labors. // Licensed under the Six Labors Split License. -using System.Numerics; - namespace SixLabors.Fonts; /// @@ -11,134 +9,218 @@ namespace SixLabors.Fonts; public static class TextMeasurer { /// - /// Measures the advance (line-height and horizontal/vertical advance) of the text in pixel units. + /// Measures the logical advance of the text in pixel units. /// /// The text. /// The text shaping options. - /// The advance of the text if it was to be rendered. + /// The logical advance rectangle of the text if it was to be rendered. + /// + /// This measurement reflects line-box height and horizontal or vertical text advance from the layout model. + /// It does not guarantee that all rendered glyph pixels fit within the returned rectangle. + /// Use for glyph ink bounds or + /// for the union of logical advance and rendered bounds. + /// public static FontRectangle MeasureAdvance(string text, TextOptions options) => MeasureAdvance(text.AsSpan(), options); /// - /// Measures the advance (line-height and horizontal/vertical advance) of the text in pixel units. + /// Measures the logical advance of the text in pixel units. /// /// The text. /// The text shaping options. - /// The advance of the text if it was to be rendered. + /// The logical advance rectangle of the text if it was to be rendered. + /// + /// This measurement reflects line-box height and horizontal or vertical text advance from the layout model. + /// It does not guarantee that all rendered glyph pixels fit within the returned rectangle. + /// Use for glyph ink bounds or + /// for the union of logical advance and rendered bounds. + /// public static FontRectangle MeasureAdvance(ReadOnlySpan text, TextOptions options) - => GetAdvance(TextLayout.GenerateLayout(text, options), options.Dpi); + { + if (text.IsEmpty) + { + return FontRectangle.Empty; + } + + return GetAdvance(TextLayout.ProcessText(text, options), options.Dpi, options.LayoutMode.IsHorizontal()); + } /// - /// Measures the minimum size required, in pixel units, to render the text. + /// Measures the normalized rendered size of the text in pixel units. /// /// The text. /// The text shaping options. - /// The size of the text if it was to be rendered. + /// The rendered size of the text with the origin normalized to (0, 0). + /// + /// This is equivalent to measuring the rendered bounds and returning only the width and height. + /// Use when the returned X and Y offset are also required. + /// public static FontRectangle MeasureSize(string text, TextOptions options) => MeasureSize(text.AsSpan(), options); /// - /// Measures the minimum size required, in pixel units, to render the text. + /// Measures the normalized rendered size of the text in pixel units. /// /// The text. /// The text shaping options. - /// The size of the text if it was to be rendered. + /// The rendered size of the text with the origin normalized to (0, 0). + /// + /// This is equivalent to measuring the rendered bounds and returning only the width and height. + /// Use when the returned X and Y offset are also required. + /// public static FontRectangle MeasureSize(ReadOnlySpan text, TextOptions options) => GetSize(TextLayout.GenerateLayout(text, options), options.Dpi); /// - /// Measures the text bounds in sub-pixel units. + /// Measures the rendered glyph bounds of the text in pixel units. /// /// The text. /// The text shaping options. - /// The bounds of the text if it was to be rendered. + /// The rendered glyph bounds of the text if it was to be rendered. public static FontRectangle MeasureBounds(string text, TextOptions options) => MeasureBounds(text.AsSpan(), options); /// - /// Measures the text bounds in sub-pixel units. + /// Measures the full renderable bounds of the text in pixel units. /// /// The text. /// The text shaping options. - /// The bounds of the text if it was to be rendered. + /// + /// The union of the logical advance rectangle and the rendered glyph bounds if the text was to be rendered. + /// + /// + /// Use this method when both typographic advance and rendered glyph overshoot must fit within the same rectangle. + /// + public static FontRectangle MeasureRenderableBounds(string text, TextOptions options) + => MeasureRenderableBounds(text.AsSpan(), options); + + /// + /// Measures the rendered glyph bounds of the text in pixel units. + /// + /// The text. + /// The text shaping options. + /// The rendered glyph bounds of the text if it was to be rendered. public static FontRectangle MeasureBounds(ReadOnlySpan text, TextOptions options) => GetBounds(TextLayout.GenerateLayout(text, options), options.Dpi); /// - /// Measures the advance (line-height and horizontal/vertical advance) of each character of the text in pixel units. + /// Measures the full renderable bounds of the text in pixel units. + /// + /// The text. + /// The text shaping options. + /// + /// The union of the logical advance rectangle and the rendered glyph bounds if the text was to be rendered. + /// + /// + /// Use this method when both typographic advance and rendered glyph overshoot must fit within the same rectangle. + /// + public static FontRectangle MeasureRenderableBounds(ReadOnlySpan text, TextOptions options) + { + if (text.IsEmpty) + { + return FontRectangle.Empty; + } + + FontRectangle advance = MeasureAdvance(text, options); + FontRectangle bounds = MeasureBounds(text, options); + return FontRectangle.Union(advance, bounds); + } + + /// + /// Measures the logical advance of each laid-out character entry in pixel units. /// /// The text. /// The text shaping options. - /// The list of character advances of the text if it was to be rendered. - /// Whether any of the characters had non-empty advances. + /// The list of per-entry logical advances of the text if it was to be rendered. + /// Whether any of the entries had non-empty advances. public static bool TryMeasureCharacterAdvances(string text, TextOptions options, out ReadOnlySpan advances) => TryMeasureCharacterAdvances(text.AsSpan(), options, out advances); /// - /// Measures the advance (line-height and horizontal/vertical advance) of each character of the text in pixel units. + /// Measures the logical advance of each laid-out character entry in pixel units. /// /// The text. /// The text shaping options. - /// The list of character advances of the text if it was to be rendered. - /// Whether any of the characters had non-empty advances. + /// The list of per-entry logical advances of the text if it was to be rendered. + /// Whether any of the entries had non-empty advances. public static bool TryMeasureCharacterAdvances(ReadOnlySpan text, TextOptions options, out ReadOnlySpan advances) => TryGetCharacterAdvances(TextLayout.GenerateLayout(text, options), options.Dpi, out advances); /// - /// Measures the minimum size required, in pixel units, to render each character in the text. + /// Measures the normalized rendered size of each laid-out character entry in pixel units. /// /// The text. /// The text shaping options. - /// The list of character dimensions of the text if it was to be rendered. - /// Whether any of the characters had non-empty dimensions. + /// The list of per-entry rendered sizes with the origin normalized to (0, 0). + /// Whether any of the entries had non-empty dimensions. public static bool TryMeasureCharacterSizes(string text, TextOptions options, out ReadOnlySpan sizes) => TryMeasureCharacterSizes(text.AsSpan(), options, out sizes); /// - /// Measures the minimum size required, in pixel units, to render each character in the text. + /// Measures the normalized rendered size of each laid-out character entry in pixel units. /// /// The text. /// The text shaping options. - /// The list of character dimensions of the text if it was to be rendered. - /// Whether any of the characters had non-empty dimensions. + /// The list of per-entry rendered sizes with the origin normalized to (0, 0). + /// Whether any of the entries had non-empty dimensions. public static bool TryMeasureCharacterSizes(ReadOnlySpan text, TextOptions options, out ReadOnlySpan sizes) => TryGetCharacterSizes(TextLayout.GenerateLayout(text, options), options.Dpi, out sizes); /// - /// Measures the character bounds of the text in sub-pixel units. + /// Measures the rendered glyph bounds of each laid-out character entry in pixel units. /// /// The text. /// The text shaping options. - /// The list of character bounds of the text if it was to be rendered. - /// Whether any of the characters had non-empty bounds. + /// The list of per-entry rendered glyph bounds of the text if it was to be rendered. + /// Whether any of the entries had non-empty bounds. public static bool TryMeasureCharacterBounds(string text, TextOptions options, out ReadOnlySpan bounds) => TryMeasureCharacterBounds(text.AsSpan(), options, out bounds); /// - /// Measures the character bounds of the text in sub-pixel units. + /// Measures the full renderable bounds of each laid-out character entry in pixel units. /// /// The text. /// The text shaping options. - /// The list of character bounds of the text if it was to be rendered. - /// Whether any of the characters had non-empty bounds. + /// The list of per-entry renderable bounds of the text if it was to be rendered. + /// Whether any of the entries had non-empty bounds. + public static bool TryMeasureCharacterRenderableBounds(string text, TextOptions options, out ReadOnlySpan bounds) + => TryMeasureCharacterRenderableBounds(text.AsSpan(), options, out bounds); + + /// + /// Measures the rendered glyph bounds of each laid-out character entry in pixel units. + /// + /// The text. + /// The text shaping options. + /// The list of per-entry rendered glyph bounds of the text if it was to be rendered. + /// Whether any of the entries had non-empty bounds. public static bool TryMeasureCharacterBounds(ReadOnlySpan text, TextOptions options, out ReadOnlySpan bounds) => TryGetCharacterBounds(TextLayout.GenerateLayout(text, options), options.Dpi, out bounds); /// - /// Gets the number of lines contained within the text. + /// Measures the full renderable bounds of each laid-out character entry in pixel units. /// /// The text. /// The text shaping options. - /// The line count. + /// The list of per-entry renderable bounds of the text if it was to be rendered. + /// Whether any of the entries had non-empty bounds. + public static bool TryMeasureCharacterRenderableBounds(ReadOnlySpan text, TextOptions options, out ReadOnlySpan bounds) + => TryGetCharacterRenderableBounds(TextLayout.GenerateLayout(text, options), options.Dpi, out bounds); + + /// + /// Gets the number of laid-out lines contained within the text. + /// + /// The text. + /// The text shaping options. + /// The laid-out line count. public static int CountLines(string text, TextOptions options) => CountLines(text.AsSpan(), options); /// - /// Gets the number of lines contained within the text. + /// Gets the number of laid-out lines contained within the text. /// /// The text. /// The text shaping options. - /// The line count. + /// The laid-out line count. public static int CountLines(ReadOnlySpan text, TextOptions options) { if (text.IsEmpty) @@ -269,106 +351,37 @@ public static LineMetrics[] GetLineMetrics(ReadOnlySpan text, TextOptions return metrics; } - internal static FontRectangle GetAdvance(IReadOnlyList glyphLayouts, float dpi) + internal static FontRectangle GetAdvance(TextLayout.TextBox textBox, float dpi, bool isHorizontalLayout) { - if (glyphLayouts.Count == 0) + if (textBox.TextLines.Count == 0) { return FontRectangle.Empty; } - // Logical advance extents in layout units (before DPI scaling). - float logicalLeft = float.MaxValue; - float logicalTop = float.MaxValue; - float logicalRight = float.MinValue; - float logicalBottom = float.MinValue; - - // Ink bounds in pixel units (BoundingBox already scales by DPI). - float inkLeft = float.MaxValue; - float inkTop = float.MaxValue; - float inkRight = float.MinValue; - float inkBottom = float.MinValue; - - for (int i = 0; i < glyphLayouts.Count; i++) + if (isHorizontalLayout) { - GlyphLayout glyph = glyphLayouts[i]; - Vector2 location = glyph.PenLocation; - float x = location.X; - float y = location.Y; - - if (glyph.IsStartOfLine) - { - // When the text contains a mix of glyphs of different sizes there can be line position overlap. - // To accurately measure we offset to ensure that we always start where the last line ended. - // Glyphs are always laid out from top-left to bottom-right so we can simply use the max. - if (glyph.LayoutMode == GlyphLayoutMode.Horizontal) - { - y = MathF.Max(y, logicalBottom); - } - else - { - x = MathF.Max(x, logicalRight); - } - } - - float advanceX = x + glyph.AdvanceX; - float advanceY = y + glyph.AdvanceY; - - if (logicalLeft > x) + float width = 0; + float height = 0; + for (int i = 0; i < textBox.TextLines.Count; i++) { - logicalLeft = x; + TextLayout.TextLine line = textBox.TextLines[i]; + width = MathF.Max(width, line.ScaledLineAdvance); + height += line.ScaledMaxLineHeight; } - if (logicalTop > y) - { - logicalTop = y; - } - - if (logicalRight < advanceX) - { - logicalRight = advanceX; - } - - if (logicalBottom < advanceY) - { - logicalBottom = advanceY; - } - - // Ink bounds are in the same coordinate space as pen locations, - // but already scaled to pixels by BoundingBox(dpi). - FontRectangle box = glyph.BoundingBox(dpi); - - if (inkLeft > box.Left) - { - inkLeft = box.Left; - } - - if (inkTop > box.Top) - { - inkTop = box.Top; - } - - if (inkRight < box.Right) - { - inkRight = box.Right; - } - - if (inkBottom < box.Bottom) - { - inkBottom = box.Bottom; - } + return new FontRectangle(0, 0, width * dpi, height * dpi); } - // Logical advance rectangle, anchored at the origin in pixel space. - Vector2 logicalTopLeft = new(logicalLeft, logicalTop); - Vector2 logicalBottomRight = new(logicalRight, logicalBottom); - Vector2 logicalSize = (logicalBottomRight - logicalTopLeft) * dpi; - FontRectangle logicalRect = new(0, 0, logicalSize.X, logicalSize.Y); - - // Ink bounds rectangle in pixel space. - FontRectangle inkRect = FontRectangle.FromLTRB(inkLeft, inkTop, inkRight, inkBottom); + float verticalWidth = 0; + float verticalHeight = 0; + for (int i = 0; i < textBox.TextLines.Count; i++) + { + TextLayout.TextLine line = textBox.TextLines[i]; + verticalWidth += line.ScaledMaxLineHeight; + verticalHeight = MathF.Max(verticalHeight, line.ScaledLineAdvance); + } - // Final measurement is the union of logical advance and ink extents. - return FontRectangle.Union(inkRect, logicalRect); + return new FontRectangle(0, 0, verticalWidth * dpi, verticalHeight * dpi); } internal static FontRectangle GetSize(IReadOnlyList glyphLayouts, float dpi) @@ -483,4 +496,27 @@ internal static bool TryGetCharacterBounds(IReadOnlyList glyphLayou characterBounds = characterBoundsList; return hasSize; } + + internal static bool TryGetCharacterRenderableBounds(IReadOnlyList glyphLayouts, float dpi, out ReadOnlySpan characterBounds) + { + bool hasSize = false; + if (glyphLayouts.Count == 0) + { + characterBounds = []; + return hasSize; + } + + GlyphBounds[] characterBoundsList = new GlyphBounds[glyphLayouts.Count]; + for (int i = 0; i < glyphLayouts.Count; i++) + { + GlyphLayout g = glyphLayouts[i]; + FontRectangle advance = new(0, 0, g.AdvanceX * dpi, g.AdvanceY * dpi); + FontRectangle bounds = FontRectangle.Union(advance, g.BoundingBox(dpi)); + hasSize |= bounds.Width > 0 || bounds.Height > 0; + characterBoundsList[i] = new GlyphBounds(g.Glyph.GlyphMetrics.CodePoint, in bounds, g.GraphemeIndex, g.StringIndex); + } + + characterBounds = characterBoundsList; + return hasSize; + } } diff --git a/tests/Images/ReferenceOutput/CanRenderEmojiFont_With_COLRv1-.png b/tests/Images/ReferenceOutput/CanRenderEmojiFont_With_COLRv1-.png index 9e4d3191..7efebae8 100644 --- a/tests/Images/ReferenceOutput/CanRenderEmojiFont_With_COLRv1-.png +++ b/tests/Images/ReferenceOutput/CanRenderEmojiFont_With_COLRv1-.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:d16479edf7ae8490eb3ec4620eadde515806912de9b9ac5def466b5650c6a49f -size 36986 +oid sha256:adcd38e807eb715464e7e49280cb4bd95a0e92500e9cb03b696b49aa358ca490 +size 32171 diff --git a/tests/Images/ReferenceOutput/CanRenderEmojiFont_With_COLRv1_-G-.png b/tests/Images/ReferenceOutput/CanRenderEmojiFont_With_COLRv1_-G-.png index b3af5434..c6730a3f 100644 --- a/tests/Images/ReferenceOutput/CanRenderEmojiFont_With_COLRv1_-G-.png +++ b/tests/Images/ReferenceOutput/CanRenderEmojiFont_With_COLRv1_-G-.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:8eff8d8579d60c3de9473e63e75e9563faa3b0f69d64c4cd874ea2c1f9c42961 -size 22755 +oid sha256:9bf98bd15046d659f4373f4b19dcdd05a8694f0ea1c5e15aca726490829c63f3 +size 10742 diff --git a/tests/Images/ReferenceOutput/CanRenderEmojiFont_With_SVG-.png b/tests/Images/ReferenceOutput/CanRenderEmojiFont_With_SVG-.png index ce12b1e7..eca91ec1 100644 --- a/tests/Images/ReferenceOutput/CanRenderEmojiFont_With_SVG-.png +++ b/tests/Images/ReferenceOutput/CanRenderEmojiFont_With_SVG-.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:db5af0925567609f62128454fe51dd938c4cc447e3e08c4af5fe22be6b4d1b83 -size 36970 +oid sha256:f023642eb8f2622ed962a8fd8ff573bc4522b5906acc4540255a4fbd5a9963c9 +size 32184 diff --git a/tests/Images/ReferenceOutput/CanRenderEmojiFont_With_SVG_-G-.png b/tests/Images/ReferenceOutput/CanRenderEmojiFont_With_SVG_-G-.png index c0612a39..765e0f91 100644 --- a/tests/Images/ReferenceOutput/CanRenderEmojiFont_With_SVG_-G-.png +++ b/tests/Images/ReferenceOutput/CanRenderEmojiFont_With_SVG_-G-.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:f46db5b813f8c1574fd6f8375acf647698c048ab4c5f5da2049894dacf22af10 -size 22759 +oid sha256:a53c80e2259458a435f8cdded4f6e9880a3a9b534477063821b79dd3671ad0f8 +size 10742 diff --git a/tests/Images/ReferenceOutput/CountLinesWrappingLength_100-3.png b/tests/Images/ReferenceOutput/CountLinesWrappingLength_100-3.png index c6b77853..358c79e5 100644 --- a/tests/Images/ReferenceOutput/CountLinesWrappingLength_100-3.png +++ b/tests/Images/ReferenceOutput/CountLinesWrappingLength_100-3.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:e09fd05d8f76a5e7d02d664cf106a4e5b80495e366d2c90d945b8375645c38f1 -size 4104 +oid sha256:ccb071068f0e18a67cc9d3b2cb02f11e5890cc8fe33c2b6cb34bb432a28a3396 +size 2955 diff --git a/tests/Images/ReferenceOutput/CountLinesWrappingLength_200-3.png b/tests/Images/ReferenceOutput/CountLinesWrappingLength_200-3.png index 57221dab..13b575c2 100644 --- a/tests/Images/ReferenceOutput/CountLinesWrappingLength_200-3.png +++ b/tests/Images/ReferenceOutput/CountLinesWrappingLength_200-3.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:b9e19a13ea529134b5e1bc2a4b49a6ba10ab815877acf9c6be44bd131cd1ad9d -size 4210 +oid sha256:e7f756af2d69f0a477ebd487fde0a747755c388ec2deeb7207cc4aebadef92ed +size 2990 diff --git a/tests/Images/ReferenceOutput/CountLinesWrappingLength_25-6.png b/tests/Images/ReferenceOutput/CountLinesWrappingLength_25-6.png index cab7d564..c78367c2 100644 --- a/tests/Images/ReferenceOutput/CountLinesWrappingLength_25-6.png +++ b/tests/Images/ReferenceOutput/CountLinesWrappingLength_25-6.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:5d4b42c625e82767955dd2db72888aeae7e5c0126207dc5133a53a37c15aa742 -size 4489 +oid sha256:3ba2021f7395451f033fae010534b14bebd7c95d0ade9efc701115a7f3e2772c +size 3048 diff --git a/tests/Images/ReferenceOutput/CountLinesWrappingLength_50-4.png b/tests/Images/ReferenceOutput/CountLinesWrappingLength_50-4.png index 18b999df..1e32f441 100644 --- a/tests/Images/ReferenceOutput/CountLinesWrappingLength_50-4.png +++ b/tests/Images/ReferenceOutput/CountLinesWrappingLength_50-4.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:1d1aa43245bd4dfdecef99fadcc45efa83cbc04447fd6ad64e91cca922974f00 -size 4369 +oid sha256:5fa3ea8f3a854bd5b105f6d9b58d5a04aa5ebbcdd7eecd430927651289d8acf8 +size 3045 diff --git "a/tests/Images/ReferenceOutput/FontTracking_CorrectlyAddSpacingForComposedCharacterHRef_-\340\244\260\340\245\215\340\244\225\340\244\277-.png" "b/tests/Images/ReferenceOutput/FontTracking_CorrectlyAddSpacingForComposedCharacterHRef_-\340\244\260\340\245\215\340\244\225\340\244\277-.png" index 5443a496..53f2acdf 100644 --- "a/tests/Images/ReferenceOutput/FontTracking_CorrectlyAddSpacingForComposedCharacterHRef_-\340\244\260\340\245\215\340\244\225\340\244\277-.png" +++ "b/tests/Images/ReferenceOutput/FontTracking_CorrectlyAddSpacingForComposedCharacterHRef_-\340\244\260\340\245\215\340\244\225\340\244\277-.png" @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:cb2f0b0185f6a47553fa02b4c0aef75f1f605c2393cb848968c9e3ae6f5f13f5 -size 1128 +oid sha256:40eaa82fe75ddccd364aecaac1089e259e020ddcf5048a4b9baba67595657c90 +size 466 diff --git "a/tests/Images/ReferenceOutput/FontTracking_CorrectlyAddSpacingForComposedCharacterHRef_-\340\244\260\340\245\215\340\244\225\340\244\277\340\244\260\340\245\215\340\244\225\340\244\277-.png" "b/tests/Images/ReferenceOutput/FontTracking_CorrectlyAddSpacingForComposedCharacterHRef_-\340\244\260\340\245\215\340\244\225\340\244\277\340\244\260\340\245\215\340\244\225\340\244\277-.png" index 0d7e7c88..38b6c7e6 100644 --- "a/tests/Images/ReferenceOutput/FontTracking_CorrectlyAddSpacingForComposedCharacterHRef_-\340\244\260\340\245\215\340\244\225\340\244\277\340\244\260\340\245\215\340\244\225\340\244\277-.png" +++ "b/tests/Images/ReferenceOutput/FontTracking_CorrectlyAddSpacingForComposedCharacterHRef_-\340\244\260\340\245\215\340\244\225\340\244\277\340\244\260\340\245\215\340\244\225\340\244\277-.png" @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:66d6ac3e4aa10dca2dda39575e8e0697d85a84fe19b7363108c368e6626f6f17 -size 2000 +oid sha256:7bef72101a69ff611ea510bedddf83a0f8e7a8a9da3ad89e066b368ba12ea556 +size 815 diff --git "a/tests/Images/ReferenceOutput/FontTracking_CorrectlyAddSpacingForComposedCharacterHRef_-\340\244\277-.png" "b/tests/Images/ReferenceOutput/FontTracking_CorrectlyAddSpacingForComposedCharacterHRef_-\340\244\277-.png" index 76d7f116..9752d8d2 100644 --- "a/tests/Images/ReferenceOutput/FontTracking_CorrectlyAddSpacingForComposedCharacterHRef_-\340\244\277-.png" +++ "b/tests/Images/ReferenceOutput/FontTracking_CorrectlyAddSpacingForComposedCharacterHRef_-\340\244\277-.png" @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:83c398cf8179e9705831f3763bdc50532dfc486f16ed4a451c17aeaec84f0855 -size 865 +oid sha256:f52220dd5409aa037c59557a4f56b45daec38501bb95669447849dd7f425479e +size 356 diff --git "a/tests/Images/ReferenceOutput/FontTracking_CorrectlyAddSpacingForComposedCharacterHRef_-\340\244\277a-.png" "b/tests/Images/ReferenceOutput/FontTracking_CorrectlyAddSpacingForComposedCharacterHRef_-\340\244\277a-.png" index 130ccbce..10c8e364 100644 --- "a/tests/Images/ReferenceOutput/FontTracking_CorrectlyAddSpacingForComposedCharacterHRef_-\340\244\277a-.png" +++ "b/tests/Images/ReferenceOutput/FontTracking_CorrectlyAddSpacingForComposedCharacterHRef_-\340\244\277a-.png" @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:631c7bf0e113f7e2120fc3581cf151d2bd07837a77eb5d59593d93103a9ef49b -size 1001 +oid sha256:b9c73ff7a2222f0ec9fe2df061a2c32bd25308c2759f431c21e450b7a201d4cb +size 408 diff --git "a/tests/Images/ReferenceOutput/FontTracking_CorrectlyAddSpacingForComposedCharacterVMRef_-\340\244\260\340\245\215\340\244\225\340\244\277-.png" "b/tests/Images/ReferenceOutput/FontTracking_CorrectlyAddSpacingForComposedCharacterVMRef_-\340\244\260\340\245\215\340\244\225\340\244\277-.png" index 7a669d3b..51d61fba 100644 --- "a/tests/Images/ReferenceOutput/FontTracking_CorrectlyAddSpacingForComposedCharacterVMRef_-\340\244\260\340\245\215\340\244\225\340\244\277-.png" +++ "b/tests/Images/ReferenceOutput/FontTracking_CorrectlyAddSpacingForComposedCharacterVMRef_-\340\244\260\340\245\215\340\244\225\340\244\277-.png" @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:0f7469098a6b3fba33bf50d4d29bfda31cb9d33f3402e51c47c4260b9938a427 -size 1132 +oid sha256:55c5e5a2e86b73876a3994cc7b8effba1d97d38e2f7bfd792e95db5169a3dda2 +size 476 diff --git "a/tests/Images/ReferenceOutput/FontTracking_CorrectlyAddSpacingForComposedCharacterVMRef_-\340\244\260\340\245\215\340\244\225\340\244\277\340\244\260\340\245\215\340\244\225\340\244\277-.png" "b/tests/Images/ReferenceOutput/FontTracking_CorrectlyAddSpacingForComposedCharacterVMRef_-\340\244\260\340\245\215\340\244\225\340\244\277\340\244\260\340\245\215\340\244\225\340\244\277-.png" index 1268e322..d18cf520 100644 --- "a/tests/Images/ReferenceOutput/FontTracking_CorrectlyAddSpacingForComposedCharacterVMRef_-\340\244\260\340\245\215\340\244\225\340\244\277\340\244\260\340\245\215\340\244\225\340\244\277-.png" +++ "b/tests/Images/ReferenceOutput/FontTracking_CorrectlyAddSpacingForComposedCharacterVMRef_-\340\244\260\340\245\215\340\244\225\340\244\277\340\244\260\340\245\215\340\244\225\340\244\277-.png" @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:c73b0044f351efdc30ee965abbc0719ad3a933859d8da6f8bf97ada5f42a6d3c -size 2002 +oid sha256:af34ad7426b764b50d9fc9773e4082b8917c17bc1a823523401237732a98e3fd +size 827 diff --git "a/tests/Images/ReferenceOutput/FontTracking_CorrectlyAddSpacingForComposedCharacterVMRef_-\340\244\277-.png" "b/tests/Images/ReferenceOutput/FontTracking_CorrectlyAddSpacingForComposedCharacterVMRef_-\340\244\277-.png" index a809c1cc..7e80a443 100644 --- "a/tests/Images/ReferenceOutput/FontTracking_CorrectlyAddSpacingForComposedCharacterVMRef_-\340\244\277-.png" +++ "b/tests/Images/ReferenceOutput/FontTracking_CorrectlyAddSpacingForComposedCharacterVMRef_-\340\244\277-.png" @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:7b0935b11b6220f162537fc8920e003b2df114081b445be8c9e31f2adb403ed8 -size 838 +oid sha256:28469049e512770670984c26426f3aadeb67dd3850bd40f1f028d920f5bc636b +size 356 diff --git "a/tests/Images/ReferenceOutput/FontTracking_CorrectlyAddSpacingForComposedCharacterVMRef_-\340\244\277a-.png" "b/tests/Images/ReferenceOutput/FontTracking_CorrectlyAddSpacingForComposedCharacterVMRef_-\340\244\277a-.png" index 1efab2a7..b64186b2 100644 --- "a/tests/Images/ReferenceOutput/FontTracking_CorrectlyAddSpacingForComposedCharacterVMRef_-\340\244\277a-.png" +++ "b/tests/Images/ReferenceOutput/FontTracking_CorrectlyAddSpacingForComposedCharacterVMRef_-\340\244\277a-.png" @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:50d72d00d7327d463df4a77b073328adca37653906aa8a313c0e8c962ddc0e54 -size 975 +oid sha256:8adb74e52b4a02bcbedf1773cb757a5b7920a567011546f356e45a5a0cfc48de +size 408 diff --git "a/tests/Images/ReferenceOutput/FontTracking_CorrectlyAddSpacingForComposedCharacterVRef_-\340\244\260\340\245\215\340\244\225\340\244\277-.png" "b/tests/Images/ReferenceOutput/FontTracking_CorrectlyAddSpacingForComposedCharacterVRef_-\340\244\260\340\245\215\340\244\225\340\244\277-.png" index 86c0bd25..05b1f5e6 100644 --- "a/tests/Images/ReferenceOutput/FontTracking_CorrectlyAddSpacingForComposedCharacterVRef_-\340\244\260\340\245\215\340\244\225\340\244\277-.png" +++ "b/tests/Images/ReferenceOutput/FontTracking_CorrectlyAddSpacingForComposedCharacterVRef_-\340\244\260\340\245\215\340\244\225\340\244\277-.png" @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:e781fe4a3769c4495aa49f0d608df9a6ec2d0b21c06b6b74c6f7fca855d5965d -size 491 +oid sha256:8ae60d059bc4e1515abd1db3ddb1f5f82ff108b408951f7a9715c8b9b897d86e +size 510 diff --git "a/tests/Images/ReferenceOutput/FontTracking_CorrectlyAddSpacingForComposedCharacterVRef_-\340\244\260\340\245\215\340\244\225\340\244\277\340\244\260\340\245\215\340\244\225\340\244\277-.png" "b/tests/Images/ReferenceOutput/FontTracking_CorrectlyAddSpacingForComposedCharacterVRef_-\340\244\260\340\245\215\340\244\225\340\244\277\340\244\260\340\245\215\340\244\225\340\244\277-.png" index 2d87f895..d6963b23 100644 --- "a/tests/Images/ReferenceOutput/FontTracking_CorrectlyAddSpacingForComposedCharacterVRef_-\340\244\260\340\245\215\340\244\225\340\244\277\340\244\260\340\245\215\340\244\225\340\244\277-.png" +++ "b/tests/Images/ReferenceOutput/FontTracking_CorrectlyAddSpacingForComposedCharacterVRef_-\340\244\260\340\245\215\340\244\225\340\244\277\340\244\260\340\245\215\340\244\225\340\244\277-.png" @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:bb6dbbea7934cfdd8c884e59946bc40b7050b6fddd3f36f9853d85d61614afb7 -size 833 +oid sha256:740a0fb0d298db3a4fd15efb1df4cb05dc38adee5070b1b4d1eda7cb9a07a68e +size 869 diff --git "a/tests/Images/ReferenceOutput/FontTracking_CorrectlyAddSpacingForComposedCharacterVRef_-\340\244\277-.png" "b/tests/Images/ReferenceOutput/FontTracking_CorrectlyAddSpacingForComposedCharacterVRef_-\340\244\277-.png" index 17a4bf61..4dbc8c88 100644 --- "a/tests/Images/ReferenceOutput/FontTracking_CorrectlyAddSpacingForComposedCharacterVRef_-\340\244\277-.png" +++ "b/tests/Images/ReferenceOutput/FontTracking_CorrectlyAddSpacingForComposedCharacterVRef_-\340\244\277-.png" @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:f062501be6e3c96a9aef1c4e1acb097c6890d26b2a8bc19d5f59d142026f41d5 -size 364 +oid sha256:915fb885a4c13dcfb67a932a05a32bfe54254c94abfb5c29bd60c2969fb09cf3 +size 362 diff --git "a/tests/Images/ReferenceOutput/FontTracking_CorrectlyAddSpacingForComposedCharacterVRef_-\340\244\277a-.png" "b/tests/Images/ReferenceOutput/FontTracking_CorrectlyAddSpacingForComposedCharacterVRef_-\340\244\277a-.png" index d9ab8584..dd4f5572 100644 --- "a/tests/Images/ReferenceOutput/FontTracking_CorrectlyAddSpacingForComposedCharacterVRef_-\340\244\277a-.png" +++ "b/tests/Images/ReferenceOutput/FontTracking_CorrectlyAddSpacingForComposedCharacterVRef_-\340\244\277a-.png" @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:455676322c37b9afa7c6a96e7aa4f8e0187cc66b8d84a3cbd38a10f8e26bf523 -size 417 +oid sha256:83e72dbd457c0281f5c798c4a55cbceb45b0f2b8f18416f42a19382a68601ae6 +size 406 diff --git a/tests/Images/ReferenceOutput/Issue_444_A_860.png b/tests/Images/ReferenceOutput/Issue_444_A_860.png index 9bffdc20..654e2a2c 100644 --- a/tests/Images/ReferenceOutput/Issue_444_A_860.png +++ b/tests/Images/ReferenceOutput/Issue_444_A_860.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:a45effc4ad559a71a318fe2f292bed7d2c10916741fa338269916fdcaca4342f -size 41970 +oid sha256:133fa9752b9d00cace6de97e8d1714a551a35a5b0b9d82ebf3c0f95c71ab7918 +size 34847 diff --git a/tests/Images/ReferenceOutput/Issue_444_B_860.png b/tests/Images/ReferenceOutput/Issue_444_B_860.png index 2fefbbbc..555a4b58 100644 --- a/tests/Images/ReferenceOutput/Issue_444_B_860.png +++ b/tests/Images/ReferenceOutput/Issue_444_B_860.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:2fa7620d143ac2d98c5c9512bf9184eccca706b601d7fcb0753e34b4700108e8 -size 41983 +oid sha256:7b4138f305eedeeab3102d1f24516f51805f527f682c935325ae0462f13bdd59 +size 34846 diff --git a/tests/Images/ReferenceOutput/Issue_444_C_860.png b/tests/Images/ReferenceOutput/Issue_444_C_860.png index f824c64a..20ec424e 100644 --- a/tests/Images/ReferenceOutput/Issue_444_C_860.png +++ b/tests/Images/ReferenceOutput/Issue_444_C_860.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:342530efe72162a8cfd70712644cf09306cc12eb48c4f7d5dfca0102b37bdff9 -size 42438 +oid sha256:b26a3af9d8f2c03e6b8c703600c54c62f8977d27a437ddc07b3dce539891d4ab +size 34309 diff --git a/tests/Images/ReferenceOutput/Issue_444_D_860.png b/tests/Images/ReferenceOutput/Issue_444_D_860.png index f824c64a..20ec424e 100644 --- a/tests/Images/ReferenceOutput/Issue_444_D_860.png +++ b/tests/Images/ReferenceOutput/Issue_444_D_860.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:342530efe72162a8cfd70712644cf09306cc12eb48c4f7d5dfca0102b37bdff9 -size 42438 +oid sha256:b26a3af9d8f2c03e6b8c703600c54c62f8977d27a437ddc07b3dce539891d4ab +size 34309 diff --git a/tests/Images/ReferenceOutput/Issue_444_E_860.png b/tests/Images/ReferenceOutput/Issue_444_E_860.png index c49b5cdf..7cabfd38 100644 --- a/tests/Images/ReferenceOutput/Issue_444_E_860.png +++ b/tests/Images/ReferenceOutput/Issue_444_E_860.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:652e3682b36223a7cca8e565fe00316220d87430ef11cd320d4044120d1865d7 -size 42424 +oid sha256:b63e9f8186de6b09347a41c5e5184fd483799b242f278c12ddc173d37f4e5c50 +size 34300 diff --git a/tests/Images/ReferenceOutput/Issue_446_A_860.png b/tests/Images/ReferenceOutput/Issue_446_A_860.png index e0b04838..15b4397c 100644 --- a/tests/Images/ReferenceOutput/Issue_446_A_860.png +++ b/tests/Images/ReferenceOutput/Issue_446_A_860.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:463f3355cac0c6abdc31a3fe691b14e70960d5cc68d944d7d3b44dd6c4ea65c4 -size 39474 +oid sha256:b053ac1eee300b342acd51b4dd58852885c2d74bf2fe3011e3af4dcc13e1f5b8 +size 31232 diff --git a/tests/Images/ReferenceOutput/Issue_446_B_860.png b/tests/Images/ReferenceOutput/Issue_446_B_860.png index 308ecb6b..4aac562d 100644 --- a/tests/Images/ReferenceOutput/Issue_446_B_860.png +++ b/tests/Images/ReferenceOutput/Issue_446_B_860.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:722da64016085c61e5460acdf8c755f9baea30ca13a620b197bacce5682551c2 -size 39941 +oid sha256:1ccc4f0743bfa404d133e30ff70ab48f834eab6182675c556838742a7ea518dd +size 31764 diff --git a/tests/Images/ReferenceOutput/Issue_450_960.png b/tests/Images/ReferenceOutput/Issue_450_960.png index 8a73b65f..83ba4325 100644 --- a/tests/Images/ReferenceOutput/Issue_450_960.png +++ b/tests/Images/ReferenceOutput/Issue_450_960.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:72bea0e8497b94bde85f3bd1cb4381e02af8697f0f2f92cb748bbcd52ad30bc9 -size 25272 +oid sha256:5473b436912152069ff1f1e68988f88a665b1d06b875e35e6ce763c2db1a5318 +size 19945 diff --git a/tests/Images/ReferenceOutput/Issue_451_A-.png b/tests/Images/ReferenceOutput/Issue_451_A-.png index 05496663..14f21ba3 100644 --- a/tests/Images/ReferenceOutput/Issue_451_A-.png +++ b/tests/Images/ReferenceOutput/Issue_451_A-.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:3e0bc3bf57f5d2a76f76d3d97dd781e5c819889ed8458d235b2460e39910fe0c -size 4392 +oid sha256:ceeb43c6992f4e8f55a64514edc5f6f30d76f8235dce37731ad9a2dafaeec269 +size 2187 diff --git a/tests/Images/ReferenceOutput/Issue_451_B-.png b/tests/Images/ReferenceOutput/Issue_451_B-.png index a1500ca0..d82a5288 100644 --- a/tests/Images/ReferenceOutput/Issue_451_B-.png +++ b/tests/Images/ReferenceOutput/Issue_451_B-.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:c1cd0e243f8ebeca10cb4502fcd5512718a9829365a45625599eefeda00dc779 -size 3788 +oid sha256:fd2b92806874e4bce58ff2d94efd26b577079146ad8b55451b0ec0b3f3a59e36 +size 1786 diff --git a/tests/Images/ReferenceOutput/Issue_451_C-.png b/tests/Images/ReferenceOutput/Issue_451_C-.png index 335d32d8..e4472401 100644 --- a/tests/Images/ReferenceOutput/Issue_451_C-.png +++ b/tests/Images/ReferenceOutput/Issue_451_C-.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:3b467789e57e494b7a6cba89c650033b4f5776b3b4dcd25b571c15817ffe5e39 -size 47530 +oid sha256:f2bab9570f0ed72d074cd975d1d05dc045c2ccc9868a7815e28c5cd3e9aaa190 +size 22773 diff --git a/tests/Images/ReferenceOutput/LineWrappingWithExplicitNewLine_800.png b/tests/Images/ReferenceOutput/LineWrappingWithExplicitNewLine_800.png index 2ee02ca3..c8cc3a2a 100644 --- a/tests/Images/ReferenceOutput/LineWrappingWithExplicitNewLine_800.png +++ b/tests/Images/ReferenceOutput/LineWrappingWithExplicitNewLine_800.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:0076d441953ebaeebfebc65f79574ecf2a9acb577c91a7ef3222c63cecf1b3ca -size 21031 +oid sha256:4a626975627947e52c3ab52add80d5b7b2243593a7abfb4221fc226307e09329 +size 16867 diff --git a/tests/Images/ReferenceOutput/LineWrappingWithImplicitNewLine_800.png b/tests/Images/ReferenceOutput/LineWrappingWithImplicitNewLine_800.png index 16303a33..ffa6d7ae 100644 --- a/tests/Images/ReferenceOutput/LineWrappingWithImplicitNewLine_800.png +++ b/tests/Images/ReferenceOutput/LineWrappingWithImplicitNewLine_800.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:0157811b182334c07dcd35979c98292daf24d13ce402cf38797bde43f652e9da -size 19877 +oid sha256:eaf193c66a9b545cb2fc8f3e6dc3c7ee56bdff25e0e15ab10d0207c76739ab57 +size 16206 diff --git a/tests/Images/ReferenceOutput/MeasureTextWordBreakMatchesMDN_238-_layoutMode_HorizontalBottomTop-wordBreaking_BreakAll_.png b/tests/Images/ReferenceOutput/MeasureTextWordBreakMatchesMDN_238-_layoutMode_HorizontalBottomTop-wordBreaking_BreakAll_.png index 9131898b..c10520ef 100644 --- a/tests/Images/ReferenceOutput/MeasureTextWordBreakMatchesMDN_238-_layoutMode_HorizontalBottomTop-wordBreaking_BreakAll_.png +++ b/tests/Images/ReferenceOutput/MeasureTextWordBreakMatchesMDN_238-_layoutMode_HorizontalBottomTop-wordBreaking_BreakAll_.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:554a94a45a7b8eb14a18c4024264f1fc40e825264e7c662c6bff776ffd20dc7f -size 16192 +oid sha256:2d00247c1765b3beb48252b52e25e75809e907b49063603d5482fe4882f8af3e +size 13383 diff --git a/tests/Images/ReferenceOutput/MeasureTextWordBreakMatchesMDN_238-_layoutMode_HorizontalTopBottom-wordBreaking_BreakAll_.png b/tests/Images/ReferenceOutput/MeasureTextWordBreakMatchesMDN_238-_layoutMode_HorizontalTopBottom-wordBreaking_BreakAll_.png index adf303ce..cfcf5598 100644 --- a/tests/Images/ReferenceOutput/MeasureTextWordBreakMatchesMDN_238-_layoutMode_HorizontalTopBottom-wordBreaking_BreakAll_.png +++ b/tests/Images/ReferenceOutput/MeasureTextWordBreakMatchesMDN_238-_layoutMode_HorizontalTopBottom-wordBreaking_BreakAll_.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:f0ba4662e9b8a24d4bd852d712d5a2a5f34b9aeadf332f12fdff172d3536b4e8 -size 13396 +oid sha256:ce4171b5f212078f9836200f65cc3553ace21da484fe49df71c750b6d29dad3d +size 13384 diff --git a/tests/Images/ReferenceOutput/MeasureTextWordBreakMatchesMDN_238-_layoutMode_HorizontalTopBottom-wordBreaking_BreakWord_.png b/tests/Images/ReferenceOutput/MeasureTextWordBreakMatchesMDN_238-_layoutMode_HorizontalTopBottom-wordBreaking_BreakWord_.png index 2ad66506..87e0f15d 100644 --- a/tests/Images/ReferenceOutput/MeasureTextWordBreakMatchesMDN_238-_layoutMode_HorizontalTopBottom-wordBreaking_BreakWord_.png +++ b/tests/Images/ReferenceOutput/MeasureTextWordBreakMatchesMDN_238-_layoutMode_HorizontalTopBottom-wordBreaking_BreakWord_.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:6fe3ad7e51ad713b36ab89c186c1e32c14467ba3320b31f3ce99bf7d4e603050 -size 13669 +oid sha256:999582c033599c6af4853db3e733e3778b205458b511bd0bebbefe91f5c24e43 +size 13657 diff --git a/tests/Images/ReferenceOutput/MeasureTextWordBreakMatchesMDN_238-_layoutMode_HorizontalTopBottom-wordBreaking_KeepAll_.png b/tests/Images/ReferenceOutput/MeasureTextWordBreakMatchesMDN_238-_layoutMode_HorizontalTopBottom-wordBreaking_KeepAll_.png index 1a34cb35..5ae7fcc3 100644 --- a/tests/Images/ReferenceOutput/MeasureTextWordBreakMatchesMDN_238-_layoutMode_HorizontalTopBottom-wordBreaking_KeepAll_.png +++ b/tests/Images/ReferenceOutput/MeasureTextWordBreakMatchesMDN_238-_layoutMode_HorizontalTopBottom-wordBreaking_KeepAll_.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:3e6d7e2da8ffab3af8ec50463e38b6c5d96059919c4439271f5ee620b76c74e2 -size 14356 +oid sha256:5c1d5c30ef55042e8356c0672dc187682e205d61ca442d7e4a21e4cef40eb498 +size 14326 diff --git a/tests/Images/ReferenceOutput/MeasureTextWordBreakMatchesMDN_238-_layoutMode_HorizontalTopBottom-wordBreaking_Standard_.png b/tests/Images/ReferenceOutput/MeasureTextWordBreakMatchesMDN_238-_layoutMode_HorizontalTopBottom-wordBreaking_Standard_.png index 19231d99..8567d2c8 100644 --- a/tests/Images/ReferenceOutput/MeasureTextWordBreakMatchesMDN_238-_layoutMode_HorizontalTopBottom-wordBreaking_Standard_.png +++ b/tests/Images/ReferenceOutput/MeasureTextWordBreakMatchesMDN_238-_layoutMode_HorizontalTopBottom-wordBreaking_Standard_.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:fe506ff8a945fea5f04fcd34a9a63ffcb89d610021acabe711be83ad19e6a96c -size 15607 +oid sha256:05987c7359c2c20dd50f4f2b6e799ace48e698200c10a7bb1228e3dc806cf45f +size 15585 diff --git a/tests/Images/ReferenceOutput/MeasureTextWordBreak_500-_layoutMode_HorizontalBottomTop-wordBreaking_BreakAll_.png b/tests/Images/ReferenceOutput/MeasureTextWordBreak_500-_layoutMode_HorizontalBottomTop-wordBreaking_BreakAll_.png index 8b1e39df..330c27e6 100644 --- a/tests/Images/ReferenceOutput/MeasureTextWordBreak_500-_layoutMode_HorizontalBottomTop-wordBreaking_BreakAll_.png +++ b/tests/Images/ReferenceOutput/MeasureTextWordBreak_500-_layoutMode_HorizontalBottomTop-wordBreaking_BreakAll_.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:1b4e8082b10ea0719931be0474b6dae6a4d1e8a635a3a1f46041c84c9a49c6d6 -size 23361 +oid sha256:7959400ca7d81abe78a19a919d24a818fc1e00fd026b6ba73f509cb737b0b42f +size 17649 diff --git a/tests/Images/ReferenceOutput/MeasureTextWordBreak_500-_layoutMode_HorizontalBottomTop-wordBreaking_KeepAll_.png b/tests/Images/ReferenceOutput/MeasureTextWordBreak_500-_layoutMode_HorizontalBottomTop-wordBreaking_KeepAll_.png index b0f4d282..bd69525e 100644 --- a/tests/Images/ReferenceOutput/MeasureTextWordBreak_500-_layoutMode_HorizontalBottomTop-wordBreaking_KeepAll_.png +++ b/tests/Images/ReferenceOutput/MeasureTextWordBreak_500-_layoutMode_HorizontalBottomTop-wordBreaking_KeepAll_.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:bbb135bd7130c10f427380640eb501bc9f0a5b2005dd450b7da90a071a0d4da8 -size 15230 +oid sha256:c6ad3cbfa7a69a7e121e6c3ea74a1a2e5f772dbe806e6300005cee1059433023 +size 12666 diff --git a/tests/Images/ReferenceOutput/MeasureTextWordBreak_500-_layoutMode_HorizontalBottomTop-wordBreaking_Standard_.png b/tests/Images/ReferenceOutput/MeasureTextWordBreak_500-_layoutMode_HorizontalBottomTop-wordBreaking_Standard_.png index 9e12e731..92168378 100644 --- a/tests/Images/ReferenceOutput/MeasureTextWordBreak_500-_layoutMode_HorizontalBottomTop-wordBreaking_Standard_.png +++ b/tests/Images/ReferenceOutput/MeasureTextWordBreak_500-_layoutMode_HorizontalBottomTop-wordBreaking_Standard_.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:d5dd82338b704504c1cee1679038f129c14e6595fa6bea14ac2a92695f68cc7a -size 25335 +oid sha256:e3c06bebd4ae6a417e5ceb562212f4ff50f18096d98c6a600a7bad43198ba986 +size 21179 diff --git a/tests/Images/ReferenceOutput/MeasureTextWordBreak_500-_layoutMode_HorizontalTopBottom-wordBreaking_BreakAll_.png b/tests/Images/ReferenceOutput/MeasureTextWordBreak_500-_layoutMode_HorizontalTopBottom-wordBreaking_BreakAll_.png index 86a2ff91..7a01633e 100644 --- a/tests/Images/ReferenceOutput/MeasureTextWordBreak_500-_layoutMode_HorizontalTopBottom-wordBreaking_BreakAll_.png +++ b/tests/Images/ReferenceOutput/MeasureTextWordBreak_500-_layoutMode_HorizontalTopBottom-wordBreaking_BreakAll_.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:1fc37c69f57e01534abac8d6ae2c441f88dca4f7111f6b3209f8769ba2a3ac37 -size 17502 +oid sha256:68401271d6b0ffcb73e3051fd97f18e2ea14778767050cb437950523f6162f0f +size 17496 diff --git a/tests/Images/ReferenceOutput/MeasureTextWordBreak_500-_layoutMode_HorizontalTopBottom-wordBreaking_BreakWord_.png b/tests/Images/ReferenceOutput/MeasureTextWordBreak_500-_layoutMode_HorizontalTopBottom-wordBreaking_BreakWord_.png index 932a7435..5f95504e 100644 --- a/tests/Images/ReferenceOutput/MeasureTextWordBreak_500-_layoutMode_HorizontalTopBottom-wordBreaking_BreakWord_.png +++ b/tests/Images/ReferenceOutput/MeasureTextWordBreak_500-_layoutMode_HorizontalTopBottom-wordBreaking_BreakWord_.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:1cb4294d6f5f72a6af860d8aab9f11b5224f7206add5d7bbcdc22d959a14a78c -size 19409 +oid sha256:389d6b32433634d36189919b85cb9067b1ff153c2505b3f04a292fc04e6170cb +size 19401 diff --git a/tests/Images/ReferenceOutput/MeasureTextWordBreak_500-_layoutMode_HorizontalTopBottom-wordBreaking_KeepAll_.png b/tests/Images/ReferenceOutput/MeasureTextWordBreak_500-_layoutMode_HorizontalTopBottom-wordBreaking_KeepAll_.png index a6c638c8..86ec269a 100644 --- a/tests/Images/ReferenceOutput/MeasureTextWordBreak_500-_layoutMode_HorizontalTopBottom-wordBreaking_KeepAll_.png +++ b/tests/Images/ReferenceOutput/MeasureTextWordBreak_500-_layoutMode_HorizontalTopBottom-wordBreaking_KeepAll_.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:09cac7e7096c0fc3f92d3620580465f10e758edb0a23882e19af7cbf49238180 -size 20415 +oid sha256:e2e6eefea80a6ba3a61fa6cb70c6584db8d78eaeff7d70f3c880bebd26b2d7ac +size 20385 diff --git a/tests/Images/ReferenceOutput/MeasureTextWordBreak_500-_layoutMode_HorizontalTopBottom-wordBreaking_Standard_.png b/tests/Images/ReferenceOutput/MeasureTextWordBreak_500-_layoutMode_HorizontalTopBottom-wordBreaking_Standard_.png index f41cf435..4c7e3394 100644 --- a/tests/Images/ReferenceOutput/MeasureTextWordBreak_500-_layoutMode_HorizontalTopBottom-wordBreaking_Standard_.png +++ b/tests/Images/ReferenceOutput/MeasureTextWordBreak_500-_layoutMode_HorizontalTopBottom-wordBreaking_Standard_.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:35095f9cb0df878caa355d5fc22474ecd25e43a60bcb67b68293dcd43eafc0c3 -size 21227 +oid sha256:5e08abe446632835748a013e37624ae7b1c4cc1ddefdeb6f1992fceb991afbd3 +size 21214 diff --git a/tests/Images/ReferenceOutput/MeasureTextWordWrappingHorizontalBottomTop_350-_height_62.625-width_318.86_.png b/tests/Images/ReferenceOutput/MeasureTextWordWrappingHorizontalBottomTop_350-_height_62.625-width_318.86_.png index dd63538e..7c909e3e 100644 --- a/tests/Images/ReferenceOutput/MeasureTextWordWrappingHorizontalBottomTop_350-_height_62.625-width_318.86_.png +++ b/tests/Images/ReferenceOutput/MeasureTextWordWrappingHorizontalBottomTop_350-_height_62.625-width_318.86_.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:d04ab73fbb72525580201013a54ee07f00b8c39a1f0a5b708be25c6b77473c84 -size 11572 +oid sha256:d7c99433fb626978aaa739b72d7952bb86cfa56a424f91fc1920b4115a0f9aae +size 9267 diff --git a/tests/Images/ReferenceOutput/MeasureTextWordWrappingHorizontalTopBottom_350-_height_62.625-width_318.86_.png b/tests/Images/ReferenceOutput/MeasureTextWordWrappingHorizontalTopBottom_350-_height_62.625-width_318.86_.png index e181bd8f..2f8bb125 100644 --- a/tests/Images/ReferenceOutput/MeasureTextWordWrappingHorizontalTopBottom_350-_height_62.625-width_318.86_.png +++ b/tests/Images/ReferenceOutput/MeasureTextWordWrappingHorizontalTopBottom_350-_height_62.625-width_318.86_.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:fa14537d4c40628490df14be962726a4ca6186752ef188c910c58d844664592b -size 11930 +oid sha256:7bba1bd7f9342ca447bb2765863b6de71e0892bea8eb7bb980da2313f0fc0ad6 +size 9157 diff --git a/tests/Images/ReferenceOutput/RenderingTextIncludesAllGlyphs_1900.png b/tests/Images/ReferenceOutput/RenderingTextIncludesAllGlyphs_1900.png index 99ffd2db..aaafdbe7 100644 --- a/tests/Images/ReferenceOutput/RenderingTextIncludesAllGlyphs_1900.png +++ b/tests/Images/ReferenceOutput/RenderingTextIncludesAllGlyphs_1900.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:7e66c3f87355774f0f3f42fba8b2d52e1baf28119301d05e6caa9be22bb853a4 -size 32322 +oid sha256:12a29e2de182ea2e24451898ac17b1cde2d0d9c61cb6f15318ea4c06aab446f3 +size 23611 diff --git a/tests/Images/ReferenceOutput/ShouldInsertExtraLineBreaksA_400-5.png b/tests/Images/ReferenceOutput/ShouldInsertExtraLineBreaksA_400-5.png index 2d6d90fc..34be134c 100644 --- a/tests/Images/ReferenceOutput/ShouldInsertExtraLineBreaksA_400-5.png +++ b/tests/Images/ReferenceOutput/ShouldInsertExtraLineBreaksA_400-5.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:1c4b38f6a3ac1dc47b034c5c45a46758d6538f10a95de335a961ee4b961c1b42 -size 19408 +oid sha256:e62f571cbc18da8b3d42c7c368ca33ffc6201b78d5bd012f06961f005efc708f +size 15746 diff --git a/tests/Images/ReferenceOutput/ShouldInsertExtraLineBreaksB_400-6.png b/tests/Images/ReferenceOutput/ShouldInsertExtraLineBreaksB_400-6.png index b9e2db0d..9047ef4f 100644 --- a/tests/Images/ReferenceOutput/ShouldInsertExtraLineBreaksB_400-6.png +++ b/tests/Images/ReferenceOutput/ShouldInsertExtraLineBreaksB_400-6.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:b8f08bc55e20f9ac68a289516bf34a15045bb30a633828f5c471b8b0213b498b -size 19749 +oid sha256:6d1491082340db8877255fd9a61c5a6dde73103395f52d566ccbf5415d1de74d +size 16010 diff --git a/tests/Images/ReferenceOutput/ShouldNotInsertExtraLineBreaks_2_400.png b/tests/Images/ReferenceOutput/ShouldNotInsertExtraLineBreaks_2_400.png index 8b967696..08d0ac79 100644 --- a/tests/Images/ReferenceOutput/ShouldNotInsertExtraLineBreaks_2_400.png +++ b/tests/Images/ReferenceOutput/ShouldNotInsertExtraLineBreaks_2_400.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:c6fbd3901f1fff539e0f481383d35772be60722bd73fb44118ac1c230960c772 -size 19011 +oid sha256:97896eb93d1cc757de55875cd2ae9aece4285bfc9f7515e5fdd3e1aec23e0d7a +size 15037 diff --git a/tests/Images/ReferenceOutput/ShouldNotInsertExtraLineBreaks_400.png b/tests/Images/ReferenceOutput/ShouldNotInsertExtraLineBreaks_400.png index 8b967696..08d0ac79 100644 --- a/tests/Images/ReferenceOutput/ShouldNotInsertExtraLineBreaks_400.png +++ b/tests/Images/ReferenceOutput/ShouldNotInsertExtraLineBreaks_400.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:c6fbd3901f1fff539e0f481383d35772be60722bd73fb44118ac1c230960c772 -size 19011 +oid sha256:97896eb93d1cc757de55875cd2ae9aece4285bfc9f7515e5fdd3e1aec23e0d7a +size 15037 diff --git a/tests/Images/ReferenceOutput/TestIssue_468-.png b/tests/Images/ReferenceOutput/TestIssue_468-.png index 3bfb2078..5f0a50de 100644 --- a/tests/Images/ReferenceOutput/TestIssue_468-.png +++ b/tests/Images/ReferenceOutput/TestIssue_468-.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:6a8eed4fb6afb1082cd498fa00ef7ed91d2d68803e10a5b5d9781b7f00becdd7 -size 38592 +oid sha256:4df2837d979261d055f7907fe2a3d7fe17d3a39524054de8f2830c7237685b5f +size 19496 diff --git a/tests/Images/ReferenceOutput/Test_Hinting_Robustness_-Arial-.png b/tests/Images/ReferenceOutput/Test_Hinting_Robustness_-Arial-.png index 472e5d9c..7d129712 100644 --- a/tests/Images/ReferenceOutput/Test_Hinting_Robustness_-Arial-.png +++ b/tests/Images/ReferenceOutput/Test_Hinting_Robustness_-Arial-.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:18ec50b2f24c44b3408fd236b742fa2b0649b3e5fbdc86e7951c51e834d8d2ff -size 590884 +oid sha256:927d41161e0644a5ca5b3009ae153f2fc768d6af1a4593101fa37ddeb292078c +size 296804 diff --git a/tests/Images/ReferenceOutput/Test_Hinting_Robustness_-OpenSansFile-.png b/tests/Images/ReferenceOutput/Test_Hinting_Robustness_-OpenSansFile-.png index f7950afa..507a4678 100644 --- a/tests/Images/ReferenceOutput/Test_Hinting_Robustness_-OpenSansFile-.png +++ b/tests/Images/ReferenceOutput/Test_Hinting_Robustness_-OpenSansFile-.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:8c55f62413ed1ffb5c318d40d269f03a81b8503010a15e3b52925c36c310eed4 -size 615756 +oid sha256:48d7e5435e7301d68174e5c46fbecf3ae0e8800432d94375b75299d0856fce1b +size 308372 diff --git a/tests/Images/ReferenceOutput/Test_Hinting_Robustness_-Tahoma-.png b/tests/Images/ReferenceOutput/Test_Hinting_Robustness_-Tahoma-.png index 7fec6be3..651123a0 100644 --- a/tests/Images/ReferenceOutput/Test_Hinting_Robustness_-Tahoma-.png +++ b/tests/Images/ReferenceOutput/Test_Hinting_Robustness_-Tahoma-.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:14c3e8a8e8c41cf665a4824da06d0d21924b3764328c7f9ec219cf937e69240f -size 577280 +oid sha256:4393ddb3b4374526184e48848091e1aec813fc4822ceaf6fb617d26b3bf1cb6b +size 291879 diff --git a/tests/Images/ReferenceOutput/Test_Issue_353_400.png b/tests/Images/ReferenceOutput/Test_Issue_353_400.png index a99559be..4351558a 100644 --- a/tests/Images/ReferenceOutput/Test_Issue_353_400.png +++ b/tests/Images/ReferenceOutput/Test_Issue_353_400.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:7745d1104771f83ebb78d835c08d6539df408a10c10923637325c50fca603178 -size 21193 +oid sha256:f65ae4357e9ab538bbbe1a31889d1e81caa789c843fb4b460e894b1306ce76a2 +size 17935 diff --git a/tests/Images/ReferenceOutput/Test_Issue_469-.png b/tests/Images/ReferenceOutput/Test_Issue_469-.png index 99d0dc60..613d02b0 100644 --- a/tests/Images/ReferenceOutput/Test_Issue_469-.png +++ b/tests/Images/ReferenceOutput/Test_Issue_469-.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:8a0e3b9626289601ec28fcea7941d7f0d312726c1fe5472c1d07bca3915fe33f -size 91160 +oid sha256:67a5a55fe993f3788de98b2fd7ea681bab18bd36d225ee13c4a06dc0c5281167 +size 47189 diff --git a/tests/Images/ReferenceOutput/Test_Issue_470-.png b/tests/Images/ReferenceOutput/Test_Issue_470-.png index 6a5a879d..a0c62294 100644 --- a/tests/Images/ReferenceOutput/Test_Issue_470-.png +++ b/tests/Images/ReferenceOutput/Test_Issue_470-.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:a664355f3755ad98e13e13654b23e15d207af98dde737e975dead078e4ed126a -size 72385 +oid sha256:bfd7364148fa32b547f899610a7b7a07186de53a887f06581b9fac52b7db2692 +size 35921 diff --git a/tests/Images/ReferenceOutput/Test_Issue_474-.png b/tests/Images/ReferenceOutput/Test_Issue_474-.png index b2ac3709..3c7da675 100644 --- a/tests/Images/ReferenceOutput/Test_Issue_474-.png +++ b/tests/Images/ReferenceOutput/Test_Issue_474-.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:9b202f5d48a517a7b452b21cce9f9a70f5ae44641353d743b84ace2494bde565 -size 9058 +oid sha256:e2a93e832a7ae436995b733bdf23909e8d86adccc09e943c76691fcd0bdc46d7 +size 4744 diff --git a/tests/Images/ReferenceOutput/Test_Issue_483-.png b/tests/Images/ReferenceOutput/Test_Issue_483-.png index 0e4f81eb..c43b36ad 100644 --- a/tests/Images/ReferenceOutput/Test_Issue_483-.png +++ b/tests/Images/ReferenceOutput/Test_Issue_483-.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:e58d411ea11575e5f535f9f274841d89b7cf12b7e982f6dec481688382ea7cb1 -size 15541 +oid sha256:e7a176e15a5ae9a5890ff5c8ae64801832b178452ec5bef779f0626f5ecd1013 +size 8131 diff --git a/tests/Images/ReferenceOutput/Test_Issue_488_Bengali-.png b/tests/Images/ReferenceOutput/Test_Issue_488_Bengali-.png index b51a613d..bab88b8b 100644 --- a/tests/Images/ReferenceOutput/Test_Issue_488_Bengali-.png +++ b/tests/Images/ReferenceOutput/Test_Issue_488_Bengali-.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:2488a3609f658be1fdd1cb1d801d6b81918a3b21287f426ac7b6f2042eec5ca7 -size 12309 +oid sha256:e572c72d1722ec05908676d9eb2a7abc2cd193e6b543bec5f3320e782ce63681 +size 6088 diff --git a/tests/Images/ReferenceOutput/Test_Issue_488_Myanmar-.png b/tests/Images/ReferenceOutput/Test_Issue_488_Myanmar-.png index 680eac62..2da1a851 100644 --- a/tests/Images/ReferenceOutput/Test_Issue_488_Myanmar-.png +++ b/tests/Images/ReferenceOutput/Test_Issue_488_Myanmar-.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:6b5ab0ca5da7ccfa12806045065dabf95580fb4f4855f95a768989ec53f46e53 -size 13708 +oid sha256:f9b833ae4feb77d3c8938ba2d6b11d7970db4165e3299b694711ff5e5669854d +size 6821 diff --git a/tests/Images/ReferenceOutput/Test_Issue_488_Sinhala-.png b/tests/Images/ReferenceOutput/Test_Issue_488_Sinhala-.png index 2281427f..cf3651ef 100644 --- a/tests/Images/ReferenceOutput/Test_Issue_488_Sinhala-.png +++ b/tests/Images/ReferenceOutput/Test_Issue_488_Sinhala-.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:98a9bf545b958e98c8b724f6f4b225304edd564176ba38f63087f365a85c714d -size 23208 +oid sha256:dc8920b810783c5cd8652eb5fcc7c16a618a63fed8534319d72f98a007d37825 +size 12160 diff --git a/tests/Images/ReferenceOutput/Test_Issue_488_Tibetan-.png b/tests/Images/ReferenceOutput/Test_Issue_488_Tibetan-.png index a0d4edac..66c9446e 100644 --- a/tests/Images/ReferenceOutput/Test_Issue_488_Tibetan-.png +++ b/tests/Images/ReferenceOutput/Test_Issue_488_Tibetan-.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:c834e00b3bd38b4737ff469d3c7de0e159cff67d79d4c8a75df1f4e53b8b920b -size 7587 +oid sha256:b7b5bd0f009e62eb49bbcb1a184da3256607a4406469a546a238de0b1f2ace94 +size 3859 diff --git a/tests/Images/ReferenceOutput/Test_Issue_493_MgOpenCanonic-.png b/tests/Images/ReferenceOutput/Test_Issue_493_MgOpenCanonic-.png index 7c7b89c6..a818cc8b 100644 --- a/tests/Images/ReferenceOutput/Test_Issue_493_MgOpenCanonic-.png +++ b/tests/Images/ReferenceOutput/Test_Issue_493_MgOpenCanonic-.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:d01d807fbc5fcc5760d1e94fae814d92e9bbbd57e129655eef608cb4c7541fe9 -size 8101 +oid sha256:27a31c3f11ebc6344efa7a1bb8088487cfa04e85bcb4e0b1488f5a801345ad53 +size 4259 diff --git a/tests/Images/ReferenceOutput/Test_Issue_493_Ogham-.png b/tests/Images/ReferenceOutput/Test_Issue_493_Ogham-.png index 95bc3dea..b2948b69 100644 --- a/tests/Images/ReferenceOutput/Test_Issue_493_Ogham-.png +++ b/tests/Images/ReferenceOutput/Test_Issue_493_Ogham-.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:ebbe3ebfe42f873addd1ebb057bb6c7fae4f5644fc5a664002dc4157f512504f -size 3809 +oid sha256:9f867cbe3661411cebf96c156874fd2040b7999c7f8e9280903f0555bc23983a +size 1763 diff --git a/tests/Images/ReferenceOutput/Test_Issue_493_Runic-.png b/tests/Images/ReferenceOutput/Test_Issue_493_Runic-.png index 3e1adc7e..54a692ff 100644 --- a/tests/Images/ReferenceOutput/Test_Issue_493_Runic-.png +++ b/tests/Images/ReferenceOutput/Test_Issue_493_Runic-.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:67ef7ce5faa1c02afa1938c75bc58b1282dbcf95c485cf177a4bb86d4dc2bb0d -size 4696 +oid sha256:358e564d97c9024542521c059940627d78ec48a933d0c5a1459ffaa2f20f8c67 +size 2217 diff --git a/tests/SixLabors.Fonts.Tests/Issues/Issues_429.cs b/tests/SixLabors.Fonts.Tests/Issues/Issues_429.cs index 369a6775..5632ea34 100644 --- a/tests/SixLabors.Fonts.Tests/Issues/Issues_429.cs +++ b/tests/SixLabors.Fonts.Tests/Issues/Issues_429.cs @@ -24,7 +24,7 @@ public void VerticalMixedLayout_ExpectedRotation() // Only the Latin glyph + space should be rotated. // Any other glyphs that appear rotated have actually been substituted by the font. - int[] rotatedGlyphs = new int[] { 20, 21, 22, 23, 24, 25, 26, 27 }; + int[] rotatedGlyphs = [20, 21, 22, 23, 24, 25, 26, 27]; for (int i = 0; i < glyphs.Count; i++) { @@ -57,11 +57,11 @@ public void VerticalMixedLayout_ExpectedBounds() FontRectangle bounds = TextMeasurer.MeasureBounds(text, options); FontRectangle size = TextMeasurer.MeasureSize(text, options); - FontRectangle advance = TextMeasurer.MeasureAdvance(text, options); + FontRectangle renderable = TextMeasurer.MeasureRenderableBounds(text, options); Assert.Equal(new FontRectangle(0.83496094F, 2.8417969F, 28.31543F, 834.9464F), bounds, Comparer); Assert.Equal(new FontRectangle(0, 0, 28.31543F, 834.9464F), size, Comparer); - Assert.Equal(new FontRectangle(0, 0, 32.98462F, 839.3556F), advance, Comparer); + Assert.Equal(new FontRectangle(0, 0, 30F, 839.3556F), renderable, Comparer); } } } diff --git a/tests/SixLabors.Fonts.Tests/TextLayoutTestUtilities.cs b/tests/SixLabors.Fonts.Tests/TextLayoutTestUtilities.cs index 5cab65bd..ac6e44cd 100644 --- a/tests/SixLabors.Fonts.Tests/TextLayoutTestUtilities.cs +++ b/tests/SixLabors.Fonts.Tests/TextLayoutTestUtilities.cs @@ -31,9 +31,9 @@ public static void TestLayout( params object[] properties) { #if SUPPORTS_DRAWING - FontRectangle advance = TextMeasurer.MeasureAdvance(text, options); - int width = (int)(Math.Ceiling(advance.Width) + Math.Ceiling(options.Origin.X)); - int height = (int)(Math.Ceiling(advance.Height) + Math.Ceiling(options.Origin.Y)); + FontRectangle renderBounds = TextMeasurer.MeasureRenderableBounds(text, options); + int width = (int)(Math.Ceiling(renderBounds.Width) + Math.Ceiling(options.Origin.X)); + int height = (int)(Math.Ceiling(renderBounds.Height) + Math.Ceiling(options.Origin.Y)); bool isVertical = !options.LayoutMode.IsHorizontal(); int wrappingLength = isVertical