diff --git a/Directory.Build.props b/Directory.Build.props
index 3a133efe..7db1de83 100644
--- a/Directory.Build.props
+++ b/Directory.Build.props
@@ -18,4 +18,13 @@
+
+
+
+
+
diff --git a/src/ImageSharp.Drawing.WebGPU/Shaders/WgslSource/path_lowering.wgsl b/src/ImageSharp.Drawing.WebGPU/Shaders/WgslSource/path_lowering.wgsl
index 42f0d86b..472f7035 100644
--- a/src/ImageSharp.Drawing.WebGPU/Shaders/WgslSource/path_lowering.wgsl
+++ b/src/ImageSharp.Drawing.WebGPU/Shaders/WgslSource/path_lowering.wgsl
@@ -84,8 +84,8 @@ fn stroke_normalize_positive_angle(angle: f32) -> f32 {
return a;
}
-// Port of the CPU stroker's GetArcSubdivisionCount (round cap tessellation): returns the number
-// of interior vertices needed to keep the arc's chordal error within the arc detail scale.
+// Port of the CPU stroker's GetArcSubdivisionCount (round join and cap tessellation): returns the
+// number of interior vertices needed to keep the arc's chordal error within the arc detail scale.
fn stroke_arc_subdivision_count(radius: f32, sweep: f32, arc_detail_scale: f32) -> u32 {
let safe_radius = max(radius, TANGENT_THRESH);
let safe_scale = max(arc_detail_scale, 0.01);
@@ -129,8 +129,8 @@ fn stroke_chain_arc(
}
// Port of PolygonStroker.CalcArc (round joins): sweeps from offset o1 to offset o2 around corner
-// v1 with a fixed angular step derived from the arc detail scale. Both endpoints are appended,
-// so the caller's chain need not already sit on the arc.
+// v1 with the interior vertex count from stroke_arc_subdivision_count, shared with round caps.
+// Both endpoints are appended, so the caller's chain need not already sit on the arc.
fn stroke_calc_arc(
path_ix: u32, last: ptr,
v1: vec2f, o1: vec2f, o2: vec2f,
@@ -141,15 +141,13 @@ fn stroke_calc_arc(
// must rotate o1; absolute angles of the offsets are not computable here.
let cross_oo = (o1.x * o2.y) - (o1.y * o2.x);
let sweep = stroke_normalize_positive_angle(atan2(cross_oo, dot(o1, o2)));
- let da = acos(half_width / (half_width + (0.125 / arc_detail_scale))) * 2.0;
stroke_chain_point(path_ix, last, v1 + o1, transform);
- // Bounded for GPU safety; matches the CPU count for all real detail scales.
- let n = clamp(i32(sweep / da), 0, 1024);
- let step = sweep / f32(n + 1);
+ let n = stroke_arc_subdivision_count(half_width, sweep, arc_detail_scale);
+ let step = sweep / f32(n + 1u);
let rot_c = cos(step);
let rot_s = sin(step);
var offset = o1;
- for (var i = 0; i < n; i += 1) {
+ for (var i = 1u; i <= n; i += 1u) {
offset = vec2((offset.x * rot_c) - (offset.y * rot_s), (offset.x * rot_s) + (offset.y * rot_c));
stroke_chain_point(path_ix, last, v1 + offset, transform);
}
diff --git a/src/ImageSharp.Drawing/Processing/Backends/DefaultRasterizer.Linearizer.cs b/src/ImageSharp.Drawing/Processing/Backends/DefaultRasterizer.Linearizer.cs
index 2ea00aaa..7d5010d8 100644
--- a/src/ImageSharp.Drawing/Processing/Backends/DefaultRasterizer.Linearizer.cs
+++ b/src/ImageSharp.Drawing/Processing/Backends/DefaultRasterizer.Linearizer.cs
@@ -700,11 +700,15 @@ private void SplitAcrossBands(int x0, int y0, int x1, int y1, uint tag)
while (currentBand != endBand)
{
- // Walk to the band boundary in the direction of travel, interpolating X in
- // 64-bit so the dx * deltaY product cannot overflow 32-bit fixed point.
+ // Walk to the band boundary in the direction of travel. X at the boundary is
+ // interpolated from the segment's own endpoint and rounded to nearest, so every
+ // boundary sits within half a fixed-point unit of the true edge. Stepping from the
+ // previous boundary instead accumulates the truncation of each division along the
+ // segment. The product is formed in 64-bit so dx * deltaY cannot overflow.
int bandBoundaryY = dy > 0 ? bandTopStart + ((currentBand + 1) * bandHeight) : bandTopStart + (currentBand * bandHeight);
- int deltaY = bandBoundaryY - currentY;
- int nextX = currentX + (int)(((long)dx * deltaY) / dy);
+ long numerator = (long)dx * (bandBoundaryY - y0);
+ long half = dy / 2;
+ int nextX = x0 + (int)((numerator ^ dy) >= 0 ? (numerator + half) / dy : (numerator - half) / dy);
int rowTop = bandTopStart + (currentBand * bandHeight);
// Each retained segment is stored in the local coordinate space of its owning band.
diff --git a/src/ImageSharp.Drawing/Processing/Backends/DefaultRasterizer.Stroke.cs b/src/ImageSharp.Drawing/Processing/Backends/DefaultRasterizer.Stroke.cs
index 790e4afa..67a07b9c 100644
--- a/src/ImageSharp.Drawing/Processing/Backends/DefaultRasterizer.Stroke.cs
+++ b/src/ImageSharp.Drawing/Processing/Backends/DefaultRasterizer.Stroke.cs
@@ -202,6 +202,31 @@ internal static partial class DefaultRasterizer
rowBandCount));
}
+ ///
+ /// Returns the tessellation segment count used for one round join or cap arc.
+ /// Ported to the GPU as stroke_arc_subdivision_count in path_lowering.wgsl;
+ /// changes here must be mirrored there.
+ ///
+ /// The arc radius.
+ /// The arc sweep angle in radians.
+ /// The tessellation detail scale.
+ /// The number of intermediate tessellation points.
+ public static int GetArcSubdivisionCount(float radius, double angle, double arcDetailScale)
+ {
+ double safeRadius = Math.Max(radius, StrokeDirectionEpsilon);
+ double safeScale = Math.Max(arcDetailScale, 0.01D);
+
+ // Chordal-error step: theta is the largest angular step whose chord midpoint
+ // deviates from the arc by at most 0.125 / scale pixels, so tessellation density
+ // adapts to both radius and requested detail.
+ double ratio = safeRadius / (safeRadius + (0.125D / safeScale));
+ ratio = Math.Clamp(ratio, -1D, 1D);
+ double theta = Math.Acos(ratio) * 2D;
+ return theta <= 0D
+ ? 0
+ : Math.Max(0, (int)(angle / theta));
+ }
+
///
/// Expands one stroked centerline geometry once into retained per-band line storage.
///
@@ -1453,31 +1478,6 @@ private static void AppendEdgeInterval(
}
}
- ///
- /// Returns the tessellation segment count used for one round join or cap arc.
- /// Ported to the GPU as stroke_arc_subdivision_count in path_lowering.wgsl;
- /// changes here must be mirrored there.
- ///
- /// The arc radius.
- /// The arc sweep angle in radians.
- /// The tessellation detail scale.
- /// The number of intermediate tessellation points.
- private static int GetArcSubdivisionCount(float radius, double angle, double arcDetailScale)
- {
- double safeRadius = Math.Max(radius, StrokeDirectionEpsilon);
- double safeScale = Math.Max(arcDetailScale, 0.01D);
-
- // AGG's chordal-error step: theta is the largest angular step whose chord midpoint
- // deviates from the arc by at most 0.125 / scale pixels, so tessellation density
- // adapts to both radius and requested detail.
- double ratio = safeRadius / (safeRadius + (0.125D / safeScale));
- ratio = Math.Clamp(ratio, -1D, 1D);
- double theta = Math.Acos(ratio) * 2D;
- return theta <= 0D
- ? 0
- : Math.Max(0, (int)(angle / theta));
- }
-
///
/// Returns the stroke offset unit normal for a normalized tangent.
///
diff --git a/src/ImageSharp.Drawing/Processing/Backends/DefaultRasterizer.StrokeLinearizer.cs b/src/ImageSharp.Drawing/Processing/Backends/DefaultRasterizer.StrokeLinearizer.cs
index 0c513d26..a454c843 100644
--- a/src/ImageSharp.Drawing/Processing/Backends/DefaultRasterizer.StrokeLinearizer.cs
+++ b/src/ImageSharp.Drawing/Processing/Backends/DefaultRasterizer.StrokeLinearizer.cs
@@ -898,7 +898,8 @@ private void CalcMiter(
///
/// Direct port of PolygonStroker.CalcArc. Emits intermediate arc vertices
- /// around a join center between two offset vectors. Ported to the GPU as
+ /// around a join center between two offset vectors. The interior vertex count comes from
+ /// , shared with the round cap arcs. Ported to the GPU as
/// stroke_calc_arc in path_lowering.wgsl; changes here must be mirrored there.
///
/// The active contour state.
@@ -922,11 +923,6 @@ private void CalcArc(
float strokeWidth = this.stroke.HalfWidth;
double a1 = Math.Atan2(dy1, dx1);
double a2 = Math.Atan2(dy2, dx2);
-
- // AGG's chordal-error step: da is the largest angular step whose chord stays within
- // 0.125 / arc-detail-scale pixels of the true arc.
- double widthAbs = strokeWidth;
- double da = Math.Acos(widthAbs / (widthAbs + (0.125D / this.stroke.ArcDetailScale))) * 2D;
this.AppendContourPoint(ref contour, new Vector2(x + dx1, y + dy1), contained);
// Wrap the end angle forward so the sweep is always positive.
@@ -937,8 +933,9 @@ private void CalcArc(
// Distribute the sweep evenly over n interior points so the last step lands exactly
// on the end offset.
- int n = (int)((a2 - a1) / da);
- da = (a2 - a1) / (n + 1);
+ double sweep = a2 - a1;
+ int n = GetArcSubdivisionCount(strokeWidth, sweep, this.stroke.ArcDetailScale);
+ double da = sweep / (n + 1);
a1 += da;
for (int i = 0; i < n; i++)
{
diff --git a/src/ImageSharp.Drawing/Processing/Backends/DefaultRasterizer.cs b/src/ImageSharp.Drawing/Processing/Backends/DefaultRasterizer.cs
index dd07e0c8..9bd69108 100644
--- a/src/ImageSharp.Drawing/Processing/Backends/DefaultRasterizer.cs
+++ b/src/ImageSharp.Drawing/Processing/Backends/DefaultRasterizer.cs
@@ -55,8 +55,8 @@ internal static partial class DefaultRasterizer
private static readonly int WordBitCount = nint.Size * 8;
///
- /// Right-shift that converts an accumulated doubled cell area (max 2 * 256 * 256) down to the
- /// 0..256 coverage step domain used by .
+ /// Left-shift that scales a 24.8 winding cover (256 per fully covered pixel) up to the doubled
+ /// cell area domain accumulated by the cells ( per fully covered pixel).
///
private const int AreaToCoverageShift = 9;
@@ -98,24 +98,24 @@ internal static partial class DefaultRasterizer
private const int CrossingShift = ProfileIdBits + 1;
///
- /// Number of discrete coverage steps per fully covered pixel (one 24.8 unit of winding).
+ /// The doubled cell area of one fully covered pixel (2 * 256 * 256), one 24.8 unit of winding.
///
- private const int CoverageStepCount = 256;
+ private const int FullCoverageArea = (FixedOne * FixedOne) << 1;
///
- /// Bitmask implementing modulo 2 * for even-odd wrapping.
+ /// Bitmask implementing modulo 2 * for even-odd wrapping.
///
- private const int EvenOddMask = (CoverageStepCount * 2) - 1;
+ private const int EvenOddMask = (FullCoverageArea * 2) - 1;
///
/// Length of one even-odd winding period; values past the midpoint mirror back down.
///
- private const int EvenOddPeriod = CoverageStepCount * 2;
+ private const int EvenOddPeriod = FullCoverageArea * 2;
///
- /// Multiplier converting integer coverage steps to normalized [0, 1] coverage.
+ /// Multiplier converting doubled cell area to normalized [0, 1] coverage.
///
- private const float CoverageScale = 1F / CoverageStepCount;
+ private const float CoverageScale = 1F / FullCoverageArea;
///
/// Gets the preferred scene row height used by the CPU rasterizer.
@@ -1625,20 +1625,21 @@ private void CaptureCrossings(int x0, int y0, int x1, int y1, uint tag)
///
///
/// The accumulated doubled signed area in fixed-point cell units; a fully covered pixel
- /// corresponds to 2 * 256 * 256, which maps to .
+ /// corresponds to .
///
/// The normalized coverage value in [0, 1].
[MethodImpl(MethodImplOptions.AggressiveInlining)]
private readonly float AreaToCoverage(int area)
{
- int signedArea = area >> AreaToCoverageShift;
- int absoluteArea = signedArea < 0 ? -signedArea : signedArea;
+ // The area keeps its full precision. Quantizing it to 1/256 steps before the blend
+ // moves edge pixels up to one output level away from the exact composite.
+ int absoluteArea = area < 0 ? -area : area;
float coverage;
if (this.intersectionRule == IntersectionRule.NonZero)
{
// Non-zero winding clamps absolute winding accumulation to [0, 1].
- if (absoluteArea >= CoverageStepCount)
+ if (absoluteArea >= FullCoverageArea)
{
coverage = 1F;
}
@@ -1649,14 +1650,14 @@ private readonly float AreaToCoverage(int area)
}
else
{
- // Even-odd wraps every 2*CoverageStepCount and mirrors second half.
+ // Even-odd wraps every 2 * FullCoverageArea and mirrors the second half.
int wrapped = absoluteArea & EvenOddMask;
- if (wrapped > CoverageStepCount)
+ if (wrapped > FullCoverageArea)
{
wrapped = EvenOddPeriod - wrapped;
}
- coverage = wrapped >= CoverageStepCount ? 1F : wrapped * CoverageScale;
+ coverage = wrapped >= FullCoverageArea ? 1F : wrapped * CoverageScale;
}
if (this.coverageBoost != 0F)
@@ -1992,10 +1993,12 @@ private void RowDownR(int rowIndex, int p0x, int p0y, int p1x, int p1y)
}
// pp/mod/lift/rem implement an integer DDA that advances y at column boundaries
- // without accumulating rounding error; the remainder carries the exact fraction.
+ // without accumulating rounding error; the remainder carries the exact fraction. The
+ // half-divisor start term rounds every boundary to the nearest unit instead of
+ // flooring it, so the walked edge sits within half a unit of the true line.
int dx = p1x - p0x;
int dy = p1y - p0y;
- int pp = (FixedOne - fx0) * dy;
+ int pp = ((FixedOne - fx0) * dy) + (dx >> 1);
int cy = p0y + (pp / dx);
this.Cell(rowIndex, columnIndex0, fx0, p0y, FixedOne, cy);
@@ -2073,7 +2076,7 @@ private void RowUpR(int rowIndex, int p0x, int p0y, int p1x, int p1y)
int dx = p1x - p0x;
int dy = p0y - p1y;
- int pp = (FixedOne - fx0) * dy;
+ int pp = ((FixedOne - fx0) * dy) + (dx >> 1);
int cy = p0y - (pp / dx);
this.Cell(rowIndex, columnIndex0, fx0, p0y, FixedOne, cy);
@@ -2151,7 +2154,7 @@ private void RowDownL(int rowIndex, int p0x, int p0y, int p1x, int p1y)
int dx = p0x - p1x;
int dy = p1y - p0y;
- int pp = fx0 * dy;
+ int pp = (fx0 * dy) + (dx >> 1);
int cy = p0y + (pp / dx);
this.Cell(rowIndex, columnIndex0, fx0, p0y, 0, cy);
@@ -2229,7 +2232,7 @@ private void RowUpL(int rowIndex, int p0x, int p0y, int p1x, int p1y)
int dx = p0x - p1x;
int dy = p0y - p1y;
- int pp = fx0 * dy;
+ int pp = (fx0 * dy) + (dx >> 1);
int cy = p0y - (pp / dx);
this.Cell(rowIndex, columnIndex0, fx0, p0y, 0, cy);
@@ -2301,8 +2304,9 @@ private void LineDownR(int rowIndex0, int rowIndex1, int x0, int y0, int x1, int
int fy1 = y1 - (rowIndex1 << FixedShift);
// p/delta/mod/rem implement an integer DDA that advances x at row boundaries
- // without per-row floating-point math.
- int p = (FixedOne - fy0) * dx;
+ // without per-row floating-point math. The half-divisor start term rounds every
+ // boundary to the nearest unit instead of flooring it.
+ int p = ((FixedOne - fy0) * dx) + (dy >> 1);
int delta = p / dy;
int cx = x0 + delta;
@@ -2353,7 +2357,7 @@ private void LineUpR(int rowIndex0, int rowIndex1, int x0, int y0, int x1, int y
int fy1 = y1 - (rowIndex1 << FixedShift);
// Upward version of the same integer DDA stepping as LineDownR.
- int p = fy0 * dx;
+ int p = (fy0 * dx) + (dy >> 1);
int delta = p / dy;
int cx = x0 + delta;
@@ -2403,7 +2407,7 @@ private void LineDownL(int rowIndex0, int rowIndex1, int x0, int y0, int x1, int
int fy1 = y1 - (rowIndex1 << FixedShift);
// Right-to-left variant of the integer DDA.
- int p = (FixedOne - fy0) * dx;
+ int p = ((FixedOne - fy0) * dx) + (dy >> 1);
int delta = p / dy;
int cx = x0 - delta;
@@ -2453,7 +2457,7 @@ private void LineUpL(int rowIndex0, int rowIndex1, int x0, int y0, int x1, int y
int fy1 = y1 - (rowIndex1 << FixedShift);
// Upward + right-to-left variant of the integer DDA.
- int p = fy0 * dx;
+ int p = (fy0 * dx) + (dy >> 1);
int delta = p / dy;
int cx = x0 - delta;
diff --git a/src/ImageSharp.Drawing/Processing/StrokeOptions.cs b/src/ImageSharp.Drawing/Processing/StrokeOptions.cs
index 7ce63467..a32a3de2 100644
--- a/src/ImageSharp.Drawing/Processing/StrokeOptions.cs
+++ b/src/ImageSharp.Drawing/Processing/StrokeOptions.cs
@@ -6,11 +6,22 @@ namespace SixLabors.ImageSharp.Drawing.Processing;
///
public sealed class StrokeOptions : IEquatable
{
+ private double arcDetailScale = 1D;
+
///
public double MiterLimit { get; set; } = 4D;
///
- public double ArcDetailScale { get; set; } = 1D;
+ /// The value is not greater than zero.
+ public double ArcDetailScale
+ {
+ get => this.arcDetailScale;
+ set
+ {
+ Guard.MustBeGreaterThan(value, 0, nameof(this.ArcDetailScale));
+ this.arcDetailScale = value;
+ }
+ }
///
public LineJoin LineJoin { get; set; } = LineJoin.Bevel;
diff --git a/tests/ImageSharp.Drawing.Tests/Processing/Backends/DefaultRasterizerStrokeTests.cs b/tests/ImageSharp.Drawing.Tests/Processing/Backends/DefaultRasterizerStrokeTests.cs
new file mode 100644
index 00000000..62162a97
--- /dev/null
+++ b/tests/ImageSharp.Drawing.Tests/Processing/Backends/DefaultRasterizerStrokeTests.cs
@@ -0,0 +1,47 @@
+// Copyright (c) Six Labors.
+// Licensed under the Six Labors Split License.
+
+using SixLabors.ImageSharp.Drawing.Processing.Backends;
+
+namespace SixLabors.ImageSharp.Drawing.Tests.Processing.Backends;
+
+public class DefaultRasterizerStrokeTests
+{
+ // Half widths of 12, 100 and 500 pixel pens.
+ public static TheoryData RoundArcRadii { get; } = new() { 6F, 50F, 250F };
+
+ [Theory]
+ [MemberData(nameof(RoundArcRadii))]
+ public void GetArcSubdivisionCount_IncreasesWithArcDetailScale(float radius)
+ {
+ double[] scales = [0.01D, 0.5D, 1D, 4D, 16D];
+ int previous = DefaultRasterizer.GetArcSubdivisionCount(radius, Math.PI, scales[0]);
+ for (int i = 1; i < scales.Length; i++)
+ {
+ int count = DefaultRasterizer.GetArcSubdivisionCount(radius, Math.PI, scales[i]);
+
+ Assert.True(count > previous, $"Scale {scales[i]} gave {count} vertices, scale {scales[i - 1]} gave {previous}.");
+ previous = count;
+ }
+ }
+
+ [Theory]
+ [InlineData(0D)]
+ [InlineData(-1D)]
+ public void GetArcSubdivisionCount_FloorsScaleAtOneHundredth(double arcDetailScale)
+ {
+ int floored = DefaultRasterizer.GetArcSubdivisionCount(6F, Math.PI, 0.01D);
+
+ Assert.Equal(floored, DefaultRasterizer.GetArcSubdivisionCount(6F, Math.PI, arcDetailScale));
+ }
+
+ [Fact]
+ public void GetArcSubdivisionCount_LargeRadius_StaysBelowGpuBound()
+ {
+ // path_lowering.wgsl clamps the count at 1024 interior vertices. A 1000 pixel pen at the
+ // highest scale under test must stay below that so both backends emit the same count.
+ int count = DefaultRasterizer.GetArcSubdivisionCount(500F, Math.PI, 16D);
+
+ Assert.InRange(count, 1, 1023);
+ }
+}
diff --git a/tests/ImageSharp.Drawing.Tests/Processing/Backends/WebGPUDrawingBackendTests.cs b/tests/ImageSharp.Drawing.Tests/Processing/Backends/WebGPUDrawingBackendTests.cs
index b207070a..670ed01a 100644
--- a/tests/ImageSharp.Drawing.Tests/Processing/Backends/WebGPUDrawingBackendTests.cs
+++ b/tests/ImageSharp.Drawing.Tests/Processing/Backends/WebGPUDrawingBackendTests.cs
@@ -1729,6 +1729,109 @@ static Image CreateJoinComparisonImage(Image reference, Image(
+ TestImageProvider provider,
+ LineJoin lineJoin,
+ double arcDetailScale)
+ where TPixel : unmanaged, IPixel
+ {
+ DrawingOptions drawingOptions = new()
+ {
+ GraphicsOptions = new GraphicsOptions { Antialias = true }
+ };
+
+ // Every corner is sharper than the default miter limit, so MiterRound falls back to the
+ // same round arc as Round.
+ PathBuilder pb = new();
+ pb.AddLine(new PointF(60, 270), new PointF(100, 30));
+ pb.AddLine(new PointF(100, 30), new PointF(140, 270));
+ pb.AddLine(new PointF(140, 270), new PointF(180, 30));
+ pb.AddLine(new PointF(180, 30), new PointF(220, 270));
+ pb.AddLine(new PointF(220, 270), new PointF(260, 30));
+ pb.AddLine(new PointF(260, 30), new PointF(300, 270));
+ pb.AddLine(new PointF(300, 270), new PointF(340, 30));
+ IPath path = pb.Build();
+
+ Pen pen = new SolidPen(new PenOptions(Color.DarkBlue, 24F)
+ {
+ StrokeOptions = new StrokeOptions { LineJoin = lineJoin, ArcDetailScale = arcDetailScale }
+ });
+
+ void DrawAction(DrawingCanvas canvas) => canvas.Draw(pen, path);
+
+ using Image defaultImage = provider.GetImage();
+ RenderWithDefaultBackend(defaultImage, drawingOptions, DrawAction);
+
+ using WebGPUDrawingBackend nativeSurfaceBackend = new();
+ using Image nativeSurfaceInitialImage = provider.GetImage();
+ using Image nativeSurfaceImage = RenderWithNativeSurfaceWebGpuBackend(
+ defaultImage.Width,
+ defaultImage.Height,
+ nativeSurfaceBackend,
+ drawingOptions,
+ DrawAction,
+ nativeSurfaceInitialImage);
+
+ DebugSaveBackendPair(provider, $"{lineJoin}_{arcDetailScale}", defaultImage, nativeSurfaceImage);
+ AssertBackendPairSimilarity(defaultImage, nativeSurfaceImage, 0.0014F);
+ AssertBackendPairReferenceOutputs(provider, $"{lineJoin}_{arcDetailScale}", defaultImage, nativeSurfaceImage);
+ }
+
+ [WebGPUTheory]
+ [WithSolidFilledImages(800, 600, "White", PixelTypes.Rgba32, 1D)]
+ [WithSolidFilledImages(800, 600, "White", PixelTypes.Rgba32, 16D)]
+ public void DrawPath_Stroke_RoundJoinLargeRadius_MatchesDefaultOutput(
+ TestImageProvider provider,
+ double arcDetailScale)
+ where TPixel : unmanaged, IPixel
+ {
+ DrawingOptions drawingOptions = new()
+ {
+ GraphicsOptions = new GraphicsOptions { Antialias = true }
+ };
+
+ PathBuilder pb = new();
+ pb.AddLine(new PointF(200, 460), new PointF(400, 140));
+ pb.AddLine(new PointF(400, 140), new PointF(600, 460));
+ IPath path = pb.Build();
+
+ // A 240 pixel pen gives the round join a 120 pixel arc radius.
+ Pen pen = new SolidPen(new PenOptions(Color.DarkBlue, 240F)
+ {
+ StrokeOptions = new StrokeOptions { LineJoin = LineJoin.Round, ArcDetailScale = arcDetailScale }
+ });
+
+ void DrawAction(DrawingCanvas canvas) => canvas.Draw(pen, path);
+
+ using Image defaultImage = provider.GetImage();
+ RenderWithDefaultBackend(defaultImage, drawingOptions, DrawAction);
+
+ using WebGPUDrawingBackend nativeSurfaceBackend = new();
+ using Image nativeSurfaceInitialImage = provider.GetImage();
+ using Image nativeSurfaceImage = RenderWithNativeSurfaceWebGpuBackend(
+ defaultImage.Width,
+ defaultImage.Height,
+ nativeSurfaceBackend,
+ drawingOptions,
+ DrawAction,
+ nativeSurfaceInitialImage);
+
+ DebugSaveBackendPair(provider, $"{arcDetailScale}", defaultImage, nativeSurfaceImage);
+ AssertBackendPairSimilarity(defaultImage, nativeSurfaceImage, 0.0003F);
+ AssertBackendPairReferenceOutputs(provider, $"{arcDetailScale}", defaultImage, nativeSurfaceImage);
+ }
+
[WebGPUTheory]
[WithSolidFilledImages(400, 300, "White", PixelTypes.Rgba32, LineCap.Butt)]
[WithSolidFilledImages(400, 300, "White", PixelTypes.Rgba32, LineCap.Square)]
diff --git a/tests/ImageSharp.Drawing.Tests/Processing/StrokeOptionsTests.cs b/tests/ImageSharp.Drawing.Tests/Processing/StrokeOptionsTests.cs
new file mode 100644
index 00000000..d5c7372b
--- /dev/null
+++ b/tests/ImageSharp.Drawing.Tests/Processing/StrokeOptionsTests.cs
@@ -0,0 +1,44 @@
+// Copyright (c) Six Labors.
+// Licensed under the Six Labors Split License.
+
+using SixLabors.ImageSharp.Drawing.Processing;
+
+namespace SixLabors.ImageSharp.Drawing.Tests.Processing;
+
+public class StrokeOptionsTests
+{
+ [Fact]
+ public void ArcDetailScale_DefaultsToOne()
+ {
+ StrokeOptions options = new();
+
+ Assert.Equal(1D, options.ArcDetailScale);
+ }
+
+ [Theory]
+ [InlineData(double.Epsilon)]
+ [InlineData(0.01D)]
+ [InlineData(0.5D)]
+ [InlineData(4D)]
+ [InlineData(16D)]
+ public void ArcDetailScale_AcceptsPositiveValues(double value)
+ {
+ StrokeOptions options = new() { ArcDetailScale = value };
+
+ Assert.Equal(value, options.ArcDetailScale);
+ }
+
+ [Theory]
+ [InlineData(0D)]
+ [InlineData(-0.01D)]
+ [InlineData(-1D)]
+ [InlineData(double.NegativeInfinity)]
+ [InlineData(double.NaN)]
+ public void ArcDetailScale_RejectsValuesNotGreaterThanZero(double value)
+ {
+ StrokeOptions options = new();
+
+ Assert.Throws(() => options.ArcDetailScale = value);
+ Assert.Equal(1D, options.ArcDetailScale);
+ }
+}
diff --git a/tests/Images/ReferenceOutput/Drawing/DrawingCanvasTests/Clear_RegionAndPath_MatchesReference_Rgba32.png b/tests/Images/ReferenceOutput/Drawing/DrawingCanvasTests/Clear_RegionAndPath_MatchesReference_Rgba32.png
index d89824de..40159200 100644
--- a/tests/Images/ReferenceOutput/Drawing/DrawingCanvasTests/Clear_RegionAndPath_MatchesReference_Rgba32.png
+++ b/tests/Images/ReferenceOutput/Drawing/DrawingCanvasTests/Clear_RegionAndPath_MatchesReference_Rgba32.png
@@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
-oid sha256:136af17eecc9605ce27a056aecdbab3cf432b64bdde357588cf534e8b318d3f7
-size 4358
+oid sha256:260f3e48ba582759dcaff584fbb8c61feb9ba3f245b47ceedfc2bead3a94a710
+size 4674
diff --git a/tests/Images/ReferenceOutput/Drawing/DrawingCanvasTests/Clear_WithClipPath_MatchesReference_Rgba32.png b/tests/Images/ReferenceOutput/Drawing/DrawingCanvasTests/Clear_WithClipPath_MatchesReference_Rgba32.png
index e4dc5d47..f7bbaa73 100644
--- a/tests/Images/ReferenceOutput/Drawing/DrawingCanvasTests/Clear_WithClipPath_MatchesReference_Rgba32.png
+++ b/tests/Images/ReferenceOutput/Drawing/DrawingCanvasTests/Clear_WithClipPath_MatchesReference_Rgba32.png
@@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
-oid sha256:ff72a4a794fa4b726e7c64da3bcd8272858fb25d6e649e856445953357432de9
-size 10911
+oid sha256:a4beab8a3520289cfdd18958f3475daee41c4e177aa0678eaaa73ae8ed246e23
+size 10719
diff --git a/tests/Images/ReferenceOutput/Drawing/DrawingCanvasTests/CreateRegion_NestedRegionsAndStateIsolation_MatchesReference_Rgba32.png b/tests/Images/ReferenceOutput/Drawing/DrawingCanvasTests/CreateRegion_NestedRegionsAndStateIsolation_MatchesReference_Rgba32.png
index f2329e87..8317ae22 100644
--- a/tests/Images/ReferenceOutput/Drawing/DrawingCanvasTests/CreateRegion_NestedRegionsAndStateIsolation_MatchesReference_Rgba32.png
+++ b/tests/Images/ReferenceOutput/Drawing/DrawingCanvasTests/CreateRegion_NestedRegionsAndStateIsolation_MatchesReference_Rgba32.png
@@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
-oid sha256:b5d938f0ef0a5239a256f37a53e6e345893e6d958e5b62fe25ddb03ddc43e3ad
-size 8721
+oid sha256:7b31e977d8a43289f48c5bce6ae38513133d6a4fb1ea5c136ba34265aef87bfa
+size 8687
diff --git a/tests/Images/ReferenceOutput/Drawing/DrawingCanvasTests/DrawGlyphs_EmojiFont_MatchesReference_Rgba32_ColrV1-draw-glyphs.png b/tests/Images/ReferenceOutput/Drawing/DrawingCanvasTests/DrawGlyphs_EmojiFont_MatchesReference_Rgba32_ColrV1-draw-glyphs.png
index 48a76c14..80b5ce24 100644
--- a/tests/Images/ReferenceOutput/Drawing/DrawingCanvasTests/DrawGlyphs_EmojiFont_MatchesReference_Rgba32_ColrV1-draw-glyphs.png
+++ b/tests/Images/ReferenceOutput/Drawing/DrawingCanvasTests/DrawGlyphs_EmojiFont_MatchesReference_Rgba32_ColrV1-draw-glyphs.png
@@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
-oid sha256:64e045f409b6562d0b8f87a44457af2f7bf4921c7de9fe0de64bca9fb4167db4
-size 11263
+oid sha256:2d96b86f298ddf9cf3bd5c7c5fb2af550371e41b1a3f4159752c4a975aae37ee
+size 11203
diff --git a/tests/Images/ReferenceOutput/Drawing/DrawingCanvasTests/DrawGlyphs_EmojiFont_MatchesReference_Rgba32_Svg-draw-glyphs.png b/tests/Images/ReferenceOutput/Drawing/DrawingCanvasTests/DrawGlyphs_EmojiFont_MatchesReference_Rgba32_Svg-draw-glyphs.png
index 48a76c14..80b5ce24 100644
--- a/tests/Images/ReferenceOutput/Drawing/DrawingCanvasTests/DrawGlyphs_EmojiFont_MatchesReference_Rgba32_Svg-draw-glyphs.png
+++ b/tests/Images/ReferenceOutput/Drawing/DrawingCanvasTests/DrawGlyphs_EmojiFont_MatchesReference_Rgba32_Svg-draw-glyphs.png
@@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
-oid sha256:64e045f409b6562d0b8f87a44457af2f7bf4921c7de9fe0de64bca9fb4167db4
-size 11263
+oid sha256:2d96b86f298ddf9cf3bd5c7c5fb2af550371e41b1a3f4159752c4a975aae37ee
+size 11203
diff --git a/tests/Images/ReferenceOutput/Drawing/DrawingCanvasTests/DrawImage_WithClipPathAndTransform_MatchesReference_Rgba32.png b/tests/Images/ReferenceOutput/Drawing/DrawingCanvasTests/DrawImage_WithClipPathAndTransform_MatchesReference_Rgba32.png
index 1df7d523..86751ed0 100644
--- a/tests/Images/ReferenceOutput/Drawing/DrawingCanvasTests/DrawImage_WithClipPathAndTransform_MatchesReference_Rgba32.png
+++ b/tests/Images/ReferenceOutput/Drawing/DrawingCanvasTests/DrawImage_WithClipPathAndTransform_MatchesReference_Rgba32.png
@@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
-oid sha256:9769b5b38d84cc4858289bbdff68fded5d92dd202599c0dbe2c3d6898ec0a141
-size 10893
+oid sha256:901a86f282672511672e7889ff12fc6bc750743f4ace095ea8e234c0c23bb2f7
+size 10885
diff --git a/tests/Images/ReferenceOutput/Drawing/DrawingCanvasTests/DrawImage_WithRotationTransform_MatchesReference_Rgba32.png b/tests/Images/ReferenceOutput/Drawing/DrawingCanvasTests/DrawImage_WithRotationTransform_MatchesReference_Rgba32.png
index fb45bcc3..8bc733f9 100644
--- a/tests/Images/ReferenceOutput/Drawing/DrawingCanvasTests/DrawImage_WithRotationTransform_MatchesReference_Rgba32.png
+++ b/tests/Images/ReferenceOutput/Drawing/DrawingCanvasTests/DrawImage_WithRotationTransform_MatchesReference_Rgba32.png
@@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
-oid sha256:d32874f9a18b283435ddcfb417b57d120102968aa8dc7b00d70775249425703d
-size 1496
+oid sha256:5f29f14b20da06e3f83dfe2f558c6b43f9d5b3870b1354361b192d06cab5dd9e
+size 1523
diff --git a/tests/Images/ReferenceOutput/Drawing/DrawingCanvasTests/DrawPieHelpers_MatchesReference_Rgba32.png b/tests/Images/ReferenceOutput/Drawing/DrawingCanvasTests/DrawPieHelpers_MatchesReference_Rgba32.png
index 6d4ec030..d2708aa9 100644
--- a/tests/Images/ReferenceOutput/Drawing/DrawingCanvasTests/DrawPieHelpers_MatchesReference_Rgba32.png
+++ b/tests/Images/ReferenceOutput/Drawing/DrawingCanvasTests/DrawPieHelpers_MatchesReference_Rgba32.png
@@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
-oid sha256:b88aaf41358bb201f316100b7cd8a05bfc784222ea36cde4a871bd65827d9daa
-size 4289
+oid sha256:b7a1acd05b62b2c8b3165993e78fd599772258da8bb53d56495815f7689b425f
+size 4357
diff --git a/tests/Images/ReferenceOutput/Drawing/DrawingCanvasTests/DrawPrimitiveHelpers_MatchesReference_Rgba32.png b/tests/Images/ReferenceOutput/Drawing/DrawingCanvasTests/DrawPrimitiveHelpers_MatchesReference_Rgba32.png
index 5b1515dd..3cc8e134 100644
--- a/tests/Images/ReferenceOutput/Drawing/DrawingCanvasTests/DrawPrimitiveHelpers_MatchesReference_Rgba32.png
+++ b/tests/Images/ReferenceOutput/Drawing/DrawingCanvasTests/DrawPrimitiveHelpers_MatchesReference_Rgba32.png
@@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
-oid sha256:18be952d92b15fbb3f2c8493a7413b796530a5bf02b87313bd517f8c8b7203b6
-size 9130
+oid sha256:8554a9386abace46048140339b73d5845ac9e906f77e6308482a3e49e9dd8870
+size 9122
diff --git a/tests/Images/ReferenceOutput/Drawing/DrawingCanvasTests/DrawText_AlongPathWithOrigin_MatchesReference_Rgba32.png b/tests/Images/ReferenceOutput/Drawing/DrawingCanvasTests/DrawText_AlongPathWithOrigin_MatchesReference_Rgba32.png
index 114a18de..9245b193 100644
--- a/tests/Images/ReferenceOutput/Drawing/DrawingCanvasTests/DrawText_AlongPathWithOrigin_MatchesReference_Rgba32.png
+++ b/tests/Images/ReferenceOutput/Drawing/DrawingCanvasTests/DrawText_AlongPathWithOrigin_MatchesReference_Rgba32.png
@@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
-oid sha256:a588a61d73a617512678d6b0f7cf02b8d4b63a58668b141661b35ddedcad8f36
-size 10974
+oid sha256:a8317f3b25032731a3e007ffb3f3ff0bea8c6a4fd9eefddaedb863eacf77d17d
+size 11026
diff --git a/tests/Images/ReferenceOutput/Drawing/DrawingCanvasTests/DrawText_FillAndStroke_MatchesReference_Rgba32.png b/tests/Images/ReferenceOutput/Drawing/DrawingCanvasTests/DrawText_FillAndStroke_MatchesReference_Rgba32.png
index 344ab77b..05bdeebf 100644
--- a/tests/Images/ReferenceOutput/Drawing/DrawingCanvasTests/DrawText_FillAndStroke_MatchesReference_Rgba32.png
+++ b/tests/Images/ReferenceOutput/Drawing/DrawingCanvasTests/DrawText_FillAndStroke_MatchesReference_Rgba32.png
@@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
-oid sha256:2e9e57e1f7db0b35d863746bfe2cd311cbdf2394c70ea869fe5b1f9304bb23d1
-size 19712
+oid sha256:afc6e54941da95e60b7430df83ebe7c16211fbce15fb82e72aa16e2226a58329
+size 19066
diff --git a/tests/Images/ReferenceOutput/Drawing/DrawingCanvasTests/DrawText_LineLayoutsAlongDifferentPaths_MatchesReference_Rgba32.png b/tests/Images/ReferenceOutput/Drawing/DrawingCanvasTests/DrawText_LineLayoutsAlongDifferentPaths_MatchesReference_Rgba32.png
index dcbf79ea..6a5b6322 100644
--- a/tests/Images/ReferenceOutput/Drawing/DrawingCanvasTests/DrawText_LineLayoutsAlongDifferentPaths_MatchesReference_Rgba32.png
+++ b/tests/Images/ReferenceOutput/Drawing/DrawingCanvasTests/DrawText_LineLayoutsAlongDifferentPaths_MatchesReference_Rgba32.png
@@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
-oid sha256:66d6ee53c7cea7102d9525d12537880ddfe8aa5aee19b80f52caae492403ac91
-size 29396
+oid sha256:dcaf6fa8d7bc73a863ce77c6d60fd4303deaf058f69d36f80f9757f0668034c7
+size 29796
diff --git a/tests/Images/ReferenceOutput/Drawing/DrawingCanvasTests/DrawText_Multiline_WithLineMetricsGuides_MatchesReference_Rgba32.png b/tests/Images/ReferenceOutput/Drawing/DrawingCanvasTests/DrawText_Multiline_WithLineMetricsGuides_MatchesReference_Rgba32.png
index 4d88b7d8..c56a2544 100644
--- a/tests/Images/ReferenceOutput/Drawing/DrawingCanvasTests/DrawText_Multiline_WithLineMetricsGuides_MatchesReference_Rgba32.png
+++ b/tests/Images/ReferenceOutput/Drawing/DrawingCanvasTests/DrawText_Multiline_WithLineMetricsGuides_MatchesReference_Rgba32.png
@@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
-oid sha256:d4e255dec02afb9aa6ea070a5c9fe517cdbc94dbe5ead253f7bc3ba710f70687
-size 24910
+oid sha256:e4695f0b5f944422de5ebaa8bdf9bbc620104948cabc0c9a6e04845c40e3bcfc
+size 27326
diff --git a/tests/Images/ReferenceOutput/Drawing/DrawingCanvasTests/DrawText_PenOnly_MatchesReference_Rgba32.png b/tests/Images/ReferenceOutput/Drawing/DrawingCanvasTests/DrawText_PenOnly_MatchesReference_Rgba32.png
index 91402cab..57b6f3d3 100644
--- a/tests/Images/ReferenceOutput/Drawing/DrawingCanvasTests/DrawText_PenOnly_MatchesReference_Rgba32.png
+++ b/tests/Images/ReferenceOutput/Drawing/DrawingCanvasTests/DrawText_PenOnly_MatchesReference_Rgba32.png
@@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
-oid sha256:c6600fe2a0a7a50d1c1fcbcab94d8134306f156e334e24e6836de14f85f1f4fd
-size 3074
+oid sha256:b20c0ef9ce4499b3be9a131a0babac26d984a34e50c773528e7b0f1668b2e50d
+size 4430
diff --git a/tests/Images/ReferenceOutput/Drawing/DrawingCanvasTests/DrawText_TextBlockAlongPath_MatchesReference_Rgba32.png b/tests/Images/ReferenceOutput/Drawing/DrawingCanvasTests/DrawText_TextBlockAlongPath_MatchesReference_Rgba32.png
index a4806196..f209923a 100644
--- a/tests/Images/ReferenceOutput/Drawing/DrawingCanvasTests/DrawText_TextBlockAlongPath_MatchesReference_Rgba32.png
+++ b/tests/Images/ReferenceOutput/Drawing/DrawingCanvasTests/DrawText_TextBlockAlongPath_MatchesReference_Rgba32.png
@@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
-oid sha256:1a2a158c0420a49db1ccadab26fb6c3c2812850c6cf2485a92cb6474e7e4a929
-size 20956
+oid sha256:b05666093fa36c931de9edd002331b80f8434278dbeb83670a1c5fdc6fb2200c
+size 21401
diff --git a/tests/Images/ReferenceOutput/Drawing/DrawingCanvasTests/DrawText_WithWrappingAlignmentAndLineSpacing_MatchesReference_Rgba32.png b/tests/Images/ReferenceOutput/Drawing/DrawingCanvasTests/DrawText_WithWrappingAlignmentAndLineSpacing_MatchesReference_Rgba32.png
index 02d8624a..5e2ebf4d 100644
--- a/tests/Images/ReferenceOutput/Drawing/DrawingCanvasTests/DrawText_WithWrappingAlignmentAndLineSpacing_MatchesReference_Rgba32.png
+++ b/tests/Images/ReferenceOutput/Drawing/DrawingCanvasTests/DrawText_WithWrappingAlignmentAndLineSpacing_MatchesReference_Rgba32.png
@@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
-oid sha256:756cdb776cdd80223a046a4c95672abea632deac3fc6ebebb705c5adfc17594f
-size 37672
+oid sha256:42231b83df172f6b586870bfed5a3917d1fdb2551512e67ae8d0e2a3831f9793
+size 38247
diff --git a/tests/Images/ReferenceOutput/Drawing/DrawingCanvasTests/Draw_PathBuilder_MatchesReference_Rgba32.png b/tests/Images/ReferenceOutput/Drawing/DrawingCanvasTests/Draw_PathBuilder_MatchesReference_Rgba32.png
index 36b08246..fbdb60c6 100644
--- a/tests/Images/ReferenceOutput/Drawing/DrawingCanvasTests/Draw_PathBuilder_MatchesReference_Rgba32.png
+++ b/tests/Images/ReferenceOutput/Drawing/DrawingCanvasTests/Draw_PathBuilder_MatchesReference_Rgba32.png
@@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
-oid sha256:2a1ef3c89b12b76890cd3052ae80aa31be5fb15741198cfd7424d94da507aa8f
-size 3545
+oid sha256:e5975f149edafec366421bf49ea0762d07cf71da589e97e36e86eec2de924c18
+size 3496
diff --git a/tests/Images/ReferenceOutput/Drawing/DrawingCanvasTests/Draw_SelfIntersectingStroke_MatchesReference_Rgba32.png b/tests/Images/ReferenceOutput/Drawing/DrawingCanvasTests/Draw_SelfIntersectingStroke_MatchesReference_Rgba32.png
index c09df8a6..cf56e606 100644
--- a/tests/Images/ReferenceOutput/Drawing/DrawingCanvasTests/Draw_SelfIntersectingStroke_MatchesReference_Rgba32.png
+++ b/tests/Images/ReferenceOutput/Drawing/DrawingCanvasTests/Draw_SelfIntersectingStroke_MatchesReference_Rgba32.png
@@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
-oid sha256:799f9018b86de15a864eeec4deb0fdd884cf79a4d755fb1d752079f72635a1a7
-size 8811
+oid sha256:69e3ad6cca65e001cc311e54505cf2b77ebb89f5733b941ed687d88e069cbdf4
+size 3497
diff --git a/tests/Images/ReferenceOutput/Drawing/DrawingCanvasTests/Draw_WithPatternAndGradientPens_MatchesReference_Rgba32.png b/tests/Images/ReferenceOutput/Drawing/DrawingCanvasTests/Draw_WithPatternAndGradientPens_MatchesReference_Rgba32.png
index 238080d0..a0842ff7 100644
--- a/tests/Images/ReferenceOutput/Drawing/DrawingCanvasTests/Draw_WithPatternAndGradientPens_MatchesReference_Rgba32.png
+++ b/tests/Images/ReferenceOutput/Drawing/DrawingCanvasTests/Draw_WithPatternAndGradientPens_MatchesReference_Rgba32.png
@@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
-oid sha256:51dc1ecba5e6b67c76e40e3cb533731463998e63a1130753c8a5ae96e59d1f8f
-size 8497
+oid sha256:152793cb12322141066df53626bf2809e9c4a49684c8467985c7ded6ee1fd578
+size 8500
diff --git a/tests/Images/ReferenceOutput/Drawing/DrawingCanvasTests/FillPrimitiveHelpers_MatchesReference_Rgba32.png b/tests/Images/ReferenceOutput/Drawing/DrawingCanvasTests/FillPrimitiveHelpers_MatchesReference_Rgba32.png
index 9fedc853..18aa5d0d 100644
--- a/tests/Images/ReferenceOutput/Drawing/DrawingCanvasTests/FillPrimitiveHelpers_MatchesReference_Rgba32.png
+++ b/tests/Images/ReferenceOutput/Drawing/DrawingCanvasTests/FillPrimitiveHelpers_MatchesReference_Rgba32.png
@@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
-oid sha256:92bfc7bbfe9ecf0b78b600476a7fd7850b33002714748a8dd65eca051d5a1b5f
-size 3301
+oid sha256:185456cdaffab2d3cba7938ef2f3ef67b67ac62b4bd56058dfcc596b800e9c83
+size 3312
diff --git a/tests/Images/ReferenceOutput/Drawing/DrawingCanvasTests/Fill_PathBuilder_MatchesReference_Rgba32.png b/tests/Images/ReferenceOutput/Drawing/DrawingCanvasTests/Fill_PathBuilder_MatchesReference_Rgba32.png
index a9e6b8a9..55bf5e22 100644
--- a/tests/Images/ReferenceOutput/Drawing/DrawingCanvasTests/Fill_PathBuilder_MatchesReference_Rgba32.png
+++ b/tests/Images/ReferenceOutput/Drawing/DrawingCanvasTests/Fill_PathBuilder_MatchesReference_Rgba32.png
@@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
-oid sha256:4208226859ac23fb3671840563d2c58892f06282e4d3ce69f823d9e715dd0230
-size 2700
+oid sha256:c172ba3446d27bd707622293212ce4fd8b7b7249824455611492a74f0212da1e
+size 2608
diff --git a/tests/Images/ReferenceOutput/Drawing/DrawingCanvasTests/Fill_SelfIntersectingPath_EvenOddVsNonZero_MatchesReference_Rgba32.png b/tests/Images/ReferenceOutput/Drawing/DrawingCanvasTests/Fill_SelfIntersectingPath_EvenOddVsNonZero_MatchesReference_Rgba32.png
index 79892945..62483220 100644
--- a/tests/Images/ReferenceOutput/Drawing/DrawingCanvasTests/Fill_SelfIntersectingPath_EvenOddVsNonZero_MatchesReference_Rgba32.png
+++ b/tests/Images/ReferenceOutput/Drawing/DrawingCanvasTests/Fill_SelfIntersectingPath_EvenOddVsNonZero_MatchesReference_Rgba32.png
@@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
-oid sha256:ba3dec5e3295839d6123de0639083b6cb657d237d5d5efc40d9b873ccff9aeeb
-size 8200
+oid sha256:33f5d40a615def2a8bb3707cb48ab55f47984e9b92d0c68e1bbe47b239c8ffa8
+size 8413
diff --git a/tests/Images/ReferenceOutput/Drawing/DrawingCanvasTests/Fill_SelfIntersectingPath_EvenOddWithRectangleClip_MatchesGeneralClip_Rgba32_actual-rect-clip.png b/tests/Images/ReferenceOutput/Drawing/DrawingCanvasTests/Fill_SelfIntersectingPath_EvenOddWithRectangleClip_MatchesGeneralClip_Rgba32_actual-rect-clip.png
index b286d6ba..2cdf6e94 100644
--- a/tests/Images/ReferenceOutput/Drawing/DrawingCanvasTests/Fill_SelfIntersectingPath_EvenOddWithRectangleClip_MatchesGeneralClip_Rgba32_actual-rect-clip.png
+++ b/tests/Images/ReferenceOutput/Drawing/DrawingCanvasTests/Fill_SelfIntersectingPath_EvenOddWithRectangleClip_MatchesGeneralClip_Rgba32_actual-rect-clip.png
@@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
-oid sha256:3115ff7dd813df2e266c880c2a052a53c58afe82266cf14a977ff100a06d75c5
-size 1558
+oid sha256:5fd80a4ce60f30e6def776571e80eb160d0bbba8fee458d6ba9115ed18602e67
+size 1578
diff --git a/tests/Images/ReferenceOutput/Drawing/DrawingCanvasTests/Fill_SelfIntersectingPath_EvenOddWithRectangleClip_MatchesGeneralClip_Rgba32_expected-general-clip.png b/tests/Images/ReferenceOutput/Drawing/DrawingCanvasTests/Fill_SelfIntersectingPath_EvenOddWithRectangleClip_MatchesGeneralClip_Rgba32_expected-general-clip.png
index b286d6ba..2cdf6e94 100644
--- a/tests/Images/ReferenceOutput/Drawing/DrawingCanvasTests/Fill_SelfIntersectingPath_EvenOddWithRectangleClip_MatchesGeneralClip_Rgba32_expected-general-clip.png
+++ b/tests/Images/ReferenceOutput/Drawing/DrawingCanvasTests/Fill_SelfIntersectingPath_EvenOddWithRectangleClip_MatchesGeneralClip_Rgba32_expected-general-clip.png
@@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
-oid sha256:3115ff7dd813df2e266c880c2a052a53c58afe82266cf14a977ff100a06d75c5
-size 1558
+oid sha256:5fd80a4ce60f30e6def776571e80eb160d0bbba8fee458d6ba9115ed18602e67
+size 1578
diff --git a/tests/Images/ReferenceOutput/Drawing/DrawingCanvasTests/Fill_WithGradientAndPatternBrushes_MatchesReference_Rgba32.png b/tests/Images/ReferenceOutput/Drawing/DrawingCanvasTests/Fill_WithGradientAndPatternBrushes_MatchesReference_Rgba32.png
index e8b250dc..5a8c1dc2 100644
--- a/tests/Images/ReferenceOutput/Drawing/DrawingCanvasTests/Fill_WithGradientAndPatternBrushes_MatchesReference_Rgba32.png
+++ b/tests/Images/ReferenceOutput/Drawing/DrawingCanvasTests/Fill_WithGradientAndPatternBrushes_MatchesReference_Rgba32.png
@@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
-oid sha256:38942cd0c837b5b9209bb3f31f9f6f705a661503f51d9f771e193c1b0b40c4d6
-size 20862
+oid sha256:ebdab2ea4e319764f9a9acfbc6348e9749487e31915b10246ba27db59dd42c44
+size 20868
diff --git a/tests/Images/ReferenceOutput/Drawing/DrawingCanvasTests/Process_PathBuilder_MatchesReference_Rgba32.png b/tests/Images/ReferenceOutput/Drawing/DrawingCanvasTests/Process_PathBuilder_MatchesReference_Rgba32.png
index b776db62..9fcafabc 100644
--- a/tests/Images/ReferenceOutput/Drawing/DrawingCanvasTests/Process_PathBuilder_MatchesReference_Rgba32.png
+++ b/tests/Images/ReferenceOutput/Drawing/DrawingCanvasTests/Process_PathBuilder_MatchesReference_Rgba32.png
@@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
-oid sha256:7afcbc3463eb2de9a40d8561c3a1167bfe21a88a5a7084d0c06c38526afe6e6f
-size 13041
+oid sha256:4b6fb1c9b667168f659e46f26d278b8304037bd7786eaa0a1d0653afe9eb4800
+size 13134
diff --git a/tests/Images/ReferenceOutput/Drawing/DrawingCanvasTests/Process_Path_MatchesReference_Rgba32.png b/tests/Images/ReferenceOutput/Drawing/DrawingCanvasTests/Process_Path_MatchesReference_Rgba32.png
index cfef5977..4b5d421c 100644
--- a/tests/Images/ReferenceOutput/Drawing/DrawingCanvasTests/Process_Path_MatchesReference_Rgba32.png
+++ b/tests/Images/ReferenceOutput/Drawing/DrawingCanvasTests/Process_Path_MatchesReference_Rgba32.png
@@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
-oid sha256:857786ae833c0fd7aa43fd2809eea6099afd0808a57b315d1a3416488290db34
-size 13008
+oid sha256:f1fc4f36c440d0695c40b39283afd723d92b3694754e6b1949bd9063a0c4d1a1
+size 13058
diff --git a/tests/Images/ReferenceOutput/Drawing/DrawingCanvasTests/RestoreTo_MultipleStates_MatchesReference_Rgba32.png b/tests/Images/ReferenceOutput/Drawing/DrawingCanvasTests/RestoreTo_MultipleStates_MatchesReference_Rgba32.png
index 8ae87383..621e4a22 100644
--- a/tests/Images/ReferenceOutput/Drawing/DrawingCanvasTests/RestoreTo_MultipleStates_MatchesReference_Rgba32.png
+++ b/tests/Images/ReferenceOutput/Drawing/DrawingCanvasTests/RestoreTo_MultipleStates_MatchesReference_Rgba32.png
@@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
-oid sha256:12ef9380471fc081d5f9ea3ec24a2967cc9657c6e5051118fb6eac592f51a817
-size 3928
+oid sha256:938d42cf0a0e30483330815d14fda28d82d8661922e3595b2a441447b146ed30
+size 4199
diff --git a/tests/Images/ReferenceOutput/Drawing/DrawingCanvasTests/RoundedRectanglePolygon_MatchesReference_Rgba32.png b/tests/Images/ReferenceOutput/Drawing/DrawingCanvasTests/RoundedRectanglePolygon_MatchesReference_Rgba32.png
index fd8d21e7..08dce92c 100644
--- a/tests/Images/ReferenceOutput/Drawing/DrawingCanvasTests/RoundedRectanglePolygon_MatchesReference_Rgba32.png
+++ b/tests/Images/ReferenceOutput/Drawing/DrawingCanvasTests/RoundedRectanglePolygon_MatchesReference_Rgba32.png
@@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
-oid sha256:1b67192c56a2c877af00f038f82ade14b156ca8db10084c981f2810ba15c22d6
-size 5138
+oid sha256:ee9d45f055081f14c213a800e9b674ee0ee60583422c746ade7d6e4c9f8074b3
+size 2882
diff --git a/tests/Images/ReferenceOutput/Drawing/DrawingCanvasTests/SaveRestore_ClipPath_MatchesReference_Rgba32.png b/tests/Images/ReferenceOutput/Drawing/DrawingCanvasTests/SaveRestore_ClipPath_MatchesReference_Rgba32.png
index 7f1dace5..f7753842 100644
--- a/tests/Images/ReferenceOutput/Drawing/DrawingCanvasTests/SaveRestore_ClipPath_MatchesReference_Rgba32.png
+++ b/tests/Images/ReferenceOutput/Drawing/DrawingCanvasTests/SaveRestore_ClipPath_MatchesReference_Rgba32.png
@@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
-oid sha256:4a38a20b9157c08258488e462bc42a08f03707f536afc3339f5dd044b9a9351a
-size 1325
+oid sha256:4a7cceb563a88659105fdc0279cbd50151c224de88d2dc7e35a45536b66072c5
+size 1176
diff --git a/tests/Images/ReferenceOutput/Drawing/DrawingCanvasTests/TextMeasuring_RenderedMetrics_MatchesReference_Rgba32.png b/tests/Images/ReferenceOutput/Drawing/DrawingCanvasTests/TextMeasuring_RenderedMetrics_MatchesReference_Rgba32.png
index ccbf3129..5e09c180 100644
--- a/tests/Images/ReferenceOutput/Drawing/DrawingCanvasTests/TextMeasuring_RenderedMetrics_MatchesReference_Rgba32.png
+++ b/tests/Images/ReferenceOutput/Drawing/DrawingCanvasTests/TextMeasuring_RenderedMetrics_MatchesReference_Rgba32.png
@@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
-oid sha256:e84c9db30fb5cd7bc89c9211be106af2b0d5a233d426208a523c02198e9056db
-size 26194
+oid sha256:8337106523b5056a7e6fce9b7d4d9cb2caf670cd3d6c950f5a5069af98c17e8f
+size 26734
diff --git a/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/CanDrawRichTextAlongPathHorizontal_Solid100x100_(0,0,0,255)_RichText-Path-(spiral).png b/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/CanDrawRichTextAlongPathHorizontal_Solid100x100_(0,0,0,255)_RichText-Path-(spiral).png
index 0c3fc0ac..4fe06d55 100644
--- a/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/CanDrawRichTextAlongPathHorizontal_Solid100x100_(0,0,0,255)_RichText-Path-(spiral).png
+++ b/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/CanDrawRichTextAlongPathHorizontal_Solid100x100_(0,0,0,255)_RichText-Path-(spiral).png
@@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
-oid sha256:9a9caa8f16a5058260e8f096effd786734bfdd2abb523164be8ab1e5436976fb
-size 4034
+oid sha256:54b832bfbb549bb88fbfc5b54a47909c98bb6484002015690fa870b45769e433
+size 4101
diff --git a/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/CanDrawRichTextAlongPathHorizontal_Solid120x120_(0,0,0,255)_RichText-Path-(triangle).png b/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/CanDrawRichTextAlongPathHorizontal_Solid120x120_(0,0,0,255)_RichText-Path-(triangle).png
index 1d8fbc89..1a88bc26 100644
--- a/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/CanDrawRichTextAlongPathHorizontal_Solid120x120_(0,0,0,255)_RichText-Path-(triangle).png
+++ b/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/CanDrawRichTextAlongPathHorizontal_Solid120x120_(0,0,0,255)_RichText-Path-(triangle).png
@@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
-oid sha256:c79601843b12ad6051288935685b79b79e5b06f64087b123c27be1d316481d04
-size 4122
+oid sha256:5464da89492a7edf46dc69223fe7d9be0582d1e11e56921f9740a9fe349b6739
+size 4152
diff --git a/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/CanDrawRichTextAlongPathHorizontal_Solid350x350_(0,0,0,255)_RichText-Path-(circle).png b/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/CanDrawRichTextAlongPathHorizontal_Solid350x350_(0,0,0,255)_RichText-Path-(circle).png
index 414642b5..834f590a 100644
--- a/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/CanDrawRichTextAlongPathHorizontal_Solid350x350_(0,0,0,255)_RichText-Path-(circle).png
+++ b/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/CanDrawRichTextAlongPathHorizontal_Solid350x350_(0,0,0,255)_RichText-Path-(circle).png
@@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
-oid sha256:9640783175f9d4ba29c2d5d08eaa829e5c08c32c19ae4af0cd0c480bc618818f
-size 5192
+oid sha256:8b798d01684a1cdf176fd750fd23b470fca9011a156a8f002aa5417d9fee1608
+size 5230
diff --git a/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/CanDrawTextAlongPathHorizontal_Rgba32_Blank100x100_type-spiral.png b/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/CanDrawTextAlongPathHorizontal_Rgba32_Blank100x100_type-spiral.png
index 29feb630..2c237d28 100644
--- a/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/CanDrawTextAlongPathHorizontal_Rgba32_Blank100x100_type-spiral.png
+++ b/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/CanDrawTextAlongPathHorizontal_Rgba32_Blank100x100_type-spiral.png
@@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
-oid sha256:b0ba5ce072fff46c4888a7fab951044ca4fac68fb9b67c331e55194c83324235
-size 5340
+oid sha256:2a406e43ca690d2f4733ddbf044398e058c5cb5cdea8c36fbd666d1b6db284ed
+size 5326
diff --git a/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/CanDrawTextAlongPathHorizontal_Rgba32_Blank120x120_type-triangle.png b/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/CanDrawTextAlongPathHorizontal_Rgba32_Blank120x120_type-triangle.png
index 9fb5449f..0efe3a5c 100644
--- a/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/CanDrawTextAlongPathHorizontal_Rgba32_Blank120x120_type-triangle.png
+++ b/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/CanDrawTextAlongPathHorizontal_Rgba32_Blank120x120_type-triangle.png
@@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
-oid sha256:d9edc9d7146031be2d5b72a00844f8787a51dec9705a7ec80c6a336bcac5d43d
-size 4446
+oid sha256:eef23cc69a978fa10604634d7d5f101d1222dc7cacb7921702601852014e33bd
+size 4564
diff --git a/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/CanDrawTextAlongPathHorizontal_Rgba32_Blank350x350_type-circle.png b/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/CanDrawTextAlongPathHorizontal_Rgba32_Blank350x350_type-circle.png
index 4985b250..ede57c6b 100644
--- a/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/CanDrawTextAlongPathHorizontal_Rgba32_Blank350x350_type-circle.png
+++ b/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/CanDrawTextAlongPathHorizontal_Rgba32_Blank350x350_type-circle.png
@@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
-oid sha256:6dd58bd67536b03372cee593c70050a3497464a4e3f8de840a8bc8ac32f9fb50
-size 9366
+oid sha256:588e78ea73b9a73af334561765f71bb3d628f82d5885a693c4fc1b2a84445a85
+size 9502
diff --git a/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/CanDrawTextAlongPathVertical_Rgba32_Blank250x250_type-triangle.png b/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/CanDrawTextAlongPathVertical_Rgba32_Blank250x250_type-triangle.png
index f4b428aa..3ba7cdbd 100644
--- a/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/CanDrawTextAlongPathVertical_Rgba32_Blank250x250_type-triangle.png
+++ b/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/CanDrawTextAlongPathVertical_Rgba32_Blank250x250_type-triangle.png
@@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
-oid sha256:8a161f059e7d1411db96bbefa7043ec87fd65be6cb73840b31d8a9ecb5f1ddd5
-size 5145
+oid sha256:767026a29cad038029a81e02a460d6a3214d4271a7feae52dd50e4a38f1eb3df
+size 5160
diff --git a/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/CanDrawTextAlongPathVertical_Rgba32_Blank350x350_type-circle.png b/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/CanDrawTextAlongPathVertical_Rgba32_Blank350x350_type-circle.png
index b6224814..c414ab05 100644
--- a/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/CanDrawTextAlongPathVertical_Rgba32_Blank350x350_type-circle.png
+++ b/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/CanDrawTextAlongPathVertical_Rgba32_Blank350x350_type-circle.png
@@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
-oid sha256:0e4857b2947cd2973c012160cbd79b2c39d01152ba458cbc0956fe354dc1e1b8
-size 7388
+oid sha256:e977a6aaef2b6181f7094126aea9db3d334ff582325644c18aa6e89d8661ee68
+size 7393
diff --git a/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/CanDrawTextVertical2_Rgba32_Blank48x935.png b/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/CanDrawTextVertical2_Rgba32_Blank48x935.png
index de1dfb99..002afb70 100644
--- a/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/CanDrawTextVertical2_Rgba32_Blank48x935.png
+++ b/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/CanDrawTextVertical2_Rgba32_Blank48x935.png
@@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
-oid sha256:bb8a42fb5e8b5efb7df60566ec52fcb7a9f1f52053e7480b9e1f6fed82089232
-size 5850
+oid sha256:a8bfc2f7acd6370fff47bda73e8df3a43bfaeb69b616cbf2a7b48b7017d3ee25
+size 5853
diff --git a/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/CanDrawTextVerticalMixed2_Rgba32_Blank48x839.png b/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/CanDrawTextVerticalMixed2_Rgba32_Blank48x839.png
index 39044c38..9018df1f 100644
--- a/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/CanDrawTextVerticalMixed2_Rgba32_Blank48x839.png
+++ b/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/CanDrawTextVerticalMixed2_Rgba32_Blank48x839.png
@@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
-oid sha256:6c28d6ae57e497d2aac41183333c55ae0b616e9046ec3911aa62013d2d748388
-size 5717
+oid sha256:e3b0b10c711118a6cbed197691d1c73c8a59beea1e4b054bce37995012d9ad4d
+size 5699
diff --git a/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/CanDrawTextVerticalMixed_Rgba32_Blank500x400.png b/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/CanDrawTextVerticalMixed_Rgba32_Blank500x400.png
index da3f5a4d..6612f852 100644
--- a/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/CanDrawTextVerticalMixed_Rgba32_Blank500x400.png
+++ b/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/CanDrawTextVerticalMixed_Rgba32_Blank500x400.png
@@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
-oid sha256:2aeee05a8442a672e67d8cdbbcefff417ce04c8268004f7795b33701df9e8770
-size 14580
+oid sha256:f0169c95413dd56dd9a967639a94635a899a9ab933101c236561c0e36e4e65c0
+size 14493
diff --git a/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/CanDrawTextVertical_Rgba32_Blank500x400.png b/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/CanDrawTextVertical_Rgba32_Blank500x400.png
index 426577a5..a2679de1 100644
--- a/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/CanDrawTextVertical_Rgba32_Blank500x400.png
+++ b/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/CanDrawTextVertical_Rgba32_Blank500x400.png
@@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
-oid sha256:e70d07e3d244278f5c3ac96feb859a79c896db4b26ab55f1573358449f3a2b8f
-size 13952
+oid sha256:5a4053e762c305f4afea180dc2faab2679da2067f22412d11c4963f418669730
+size 13843
diff --git a/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/CanFillTextVerticalMixed_Rgba32_Blank500x400.png b/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/CanFillTextVerticalMixed_Rgba32_Blank500x400.png
index 9b990c8a..41782e3e 100644
--- a/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/CanFillTextVerticalMixed_Rgba32_Blank500x400.png
+++ b/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/CanFillTextVerticalMixed_Rgba32_Blank500x400.png
@@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
-oid sha256:bb7fe8cb5e390e5c2ec77bfae735361e44126aaf96b744c2f8a1837e31ca81f2
-size 14580
+oid sha256:347b71ef86b05855f041d2cd232b8fff7d3e0a912c4f5adf4f272e788c44b2a7
+size 14555
diff --git a/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/CanFillTextVertical_Rgba32_Blank500x400.png b/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/CanFillTextVertical_Rgba32_Blank500x400.png
index 5c4c5425..adab42a7 100644
--- a/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/CanFillTextVertical_Rgba32_Blank500x400.png
+++ b/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/CanFillTextVertical_Rgba32_Blank500x400.png
@@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
-oid sha256:622c99f19fb8d3f1157531688126aebd02eb8131d752f8616da1d856aec33fee
-size 4558
+oid sha256:0986472df850dd35065f26b583257cc35389a50e0fcb1f34705e971c90df31d7
+size 4543
diff --git a/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/CanRenderTextOutOfBoundsIssue301.png b/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/CanRenderTextOutOfBoundsIssue301.png
index 656df18d..30394e15 100644
--- a/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/CanRenderTextOutOfBoundsIssue301.png
+++ b/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/CanRenderTextOutOfBoundsIssue301.png
@@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
-oid sha256:3ed27e863bd8cb503a3bc5d58cbf8c0f422ab6e35705c2399e41a2607f23c4ad
-size 1122
+oid sha256:419d101c80908265da985b41f95f22615b0dce21d27d5d24bf6d1b639ccdc14a
+size 1118
diff --git a/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/CanRotateOutlineFont_Issue175_Solid300x200_(255,255,255,255)_F(OpenSans-Regular.ttf)-S(32)-A(75)-STR(1)-Quic).png b/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/CanRotateOutlineFont_Issue175_Solid300x200_(255,255,255,255)_F(OpenSans-Regular.ttf)-S(32)-A(75)-STR(1)-Quic).png
index e0ce9ef8..f603243c 100644
--- a/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/CanRotateOutlineFont_Issue175_Solid300x200_(255,255,255,255)_F(OpenSans-Regular.ttf)-S(32)-A(75)-STR(1)-Quic).png
+++ b/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/CanRotateOutlineFont_Issue175_Solid300x200_(255,255,255,255)_F(OpenSans-Regular.ttf)-S(32)-A(75)-STR(1)-Quic).png
@@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
-oid sha256:331de24b598458cbbaf4c2a6797b6ecb683d0a3d4031609c3918ef57c22a16a4
-size 2578
+oid sha256:6de44d0c57b8038039d2ab99cd00c8c4277dc8b48024ddf5b68d8a0251ec273e
+size 2579
diff --git a/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/CanRotateOutlineFont_Issue175_Solid300x200_(255,255,255,255)_F(OpenSans-Regular.ttf)-S(40)-A(90)-STR(2)-Quic).png b/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/CanRotateOutlineFont_Issue175_Solid300x200_(255,255,255,255)_F(OpenSans-Regular.ttf)-S(40)-A(90)-STR(2)-Quic).png
index bd0a41a9..53373ee7 100644
--- a/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/CanRotateOutlineFont_Issue175_Solid300x200_(255,255,255,255)_F(OpenSans-Regular.ttf)-S(40)-A(90)-STR(2)-Quic).png
+++ b/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/CanRotateOutlineFont_Issue175_Solid300x200_(255,255,255,255)_F(OpenSans-Regular.ttf)-S(40)-A(90)-STR(2)-Quic).png
@@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
-oid sha256:d98e65df71d0172bf7ed0c94af41171ed968188cb984f31543e8b4fcb802f6b9
-size 2497
+oid sha256:784533ea4c6cecb17b4047f66cc1711d77968e7653fd63a8ee93d29cc59afd4d
+size 2519
diff --git a/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/ClipOffset_offset_x-20_y-100.png b/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/ClipOffset_offset_x-20_y-100.png
index 468b123b..441c3a5f 100644
--- a/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/ClipOffset_offset_x-20_y-100.png
+++ b/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/ClipOffset_offset_x-20_y-100.png
@@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
-oid sha256:d52f6c31af33b5dd154096e4b148e06360ec686bf2a1c0aa2deb23a5ef670b6e
-size 3674
+oid sha256:e72139b44daca050584060f6a0fc6e8954fbdf26a9f287a65e8ca3bce7bfa4db
+size 3656
diff --git a/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/ClipOffset_offset_x-20_y-20.png b/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/ClipOffset_offset_x-20_y-20.png
index 2b69b0bc..1993af4f 100644
--- a/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/ClipOffset_offset_x-20_y-20.png
+++ b/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/ClipOffset_offset_x-20_y-20.png
@@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
-oid sha256:46e0bc07e2870dabdc6e98c4c2c38de70a5d928259532b2e0a7dbd90c5772636
-size 4989
+oid sha256:7e2c1c7927bea6ac48c140894176b75b37a559f26c3864c1a40079adc24ed3a8
+size 4987
diff --git a/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/ClipOffset_offset_x0_y0.png b/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/ClipOffset_offset_x0_y0.png
index 9deca1b7..e973b8b1 100644
--- a/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/ClipOffset_offset_x0_y0.png
+++ b/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/ClipOffset_offset_x0_y0.png
@@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
-oid sha256:443b2b2edb72b3c13a9481b12dd813a93b8e11584599571b833bca8efef639ab
-size 6852
+oid sha256:716c22ab043c59f0690fc0319dfc4df4d65bf77582c0051879214a5431d0ec36
+size 5338
diff --git a/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/ClipOffset_offset_x20_y20.png b/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/ClipOffset_offset_x20_y20.png
index 5202c8b4..68e72ffc 100644
--- a/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/ClipOffset_offset_x20_y20.png
+++ b/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/ClipOffset_offset_x20_y20.png
@@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
-oid sha256:a9eb92c642cd64bb0036c85885e273b49b8d60f7b49a1e573e866e97011c351d
-size 5377
+oid sha256:bc5791168011efcf0a38b87a4f6088f4879d409aa95a2d78736c429efebd739d
+size 5365
diff --git a/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/ClipOffset_offset_x40_y60.png b/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/ClipOffset_offset_x40_y60.png
index d7535c7c..d3d875d4 100644
--- a/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/ClipOffset_offset_x40_y60.png
+++ b/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/ClipOffset_offset_x40_y60.png
@@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
-oid sha256:425a99bff7a0437c1607b797a74be8c135eebd0c7ce32615aa1e4519e5d4e3ad
-size 2328
+oid sha256:ad74d6e009883e80054a7b7322e084583465936ee6e5718d5d735f7abf3ee1e2
+size 2114
diff --git a/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/DrawBeziers_HotPink_A150_T5.png b/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/DrawBeziers_HotPink_A150_T5.png
index d86b59c6..bd0e25d4 100644
--- a/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/DrawBeziers_HotPink_A150_T5.png
+++ b/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/DrawBeziers_HotPink_A150_T5.png
@@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
-oid sha256:513ea7a1dd5483598a9dcde257c130e0eafe8d2e406ccfe3f3adb5fb5fff627a
-size 4279
+oid sha256:a53febc9980f054dd1260faf0ec9e33b7c7741fa44f86660489fd25ec5eee8d7
+size 4377
diff --git a/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/DrawBeziers_HotPink_A255_T5.png b/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/DrawBeziers_HotPink_A255_T5.png
index 46d9bad8..b070c0cb 100644
--- a/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/DrawBeziers_HotPink_A255_T5.png
+++ b/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/DrawBeziers_HotPink_A255_T5.png
@@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
-oid sha256:22f876bcc4c80727237bbbcd595dde6e4d2064ee49401006c14060b86094bc1b
-size 4568
+oid sha256:a49200c44ef6cd22f09a2e9cba2517038f3dbcafd21669d5452b9b1af1570bb3
+size 8442
diff --git a/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/DrawBeziers_Red_A255_T3.png b/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/DrawBeziers_Red_A255_T3.png
index 04db5bcf..63edfca2 100644
--- a/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/DrawBeziers_Red_A255_T3.png
+++ b/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/DrawBeziers_Red_A255_T3.png
@@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
-oid sha256:7a65449d14830e4749e3e1dbb3bd9ee2939c86222e09862feeed71b5a24886a4
-size 4568
+oid sha256:17ae127080f2490c58b13a906075d2f088e54f28cca8d3bbf02bdbca8d8fe040
+size 4553
diff --git a/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/DrawBeziers_White_A255_T1.5.png b/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/DrawBeziers_White_A255_T1.5.png
index 93f37555..2cfa434d 100644
--- a/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/DrawBeziers_White_A255_T1.5.png
+++ b/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/DrawBeziers_White_A255_T1.5.png
@@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
-oid sha256:aad215335a4eb4178422c387dd8622ef986d2e58d8eb2e048625e65848e08c37
-size 4564
+oid sha256:0b213cc8cbf2ba793b7cc62ce46fa0914c62b6929957012c9dce30f59acf0fab
+size 4553
diff --git a/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/DrawBeziers_White_A255_T15.png b/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/DrawBeziers_White_A255_T15.png
index 93f37555..2cfa434d 100644
--- a/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/DrawBeziers_White_A255_T15.png
+++ b/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/DrawBeziers_White_A255_T15.png
@@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
-oid sha256:aad215335a4eb4178422c387dd8622ef986d2e58d8eb2e048625e65848e08c37
-size 4564
+oid sha256:0b213cc8cbf2ba793b7cc62ce46fa0914c62b6929957012c9dce30f59acf0fab
+size 4553
diff --git a/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/DrawComplexPolygon.png b/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/DrawComplexPolygon.png
index 716eea64..7d3bbf1b 100644
--- a/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/DrawComplexPolygon.png
+++ b/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/DrawComplexPolygon.png
@@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
-oid sha256:729e68e28c8a6bacbc7ce8436a775915fde0963ae8be065c6651676047b4808b
-size 6944
+oid sha256:b775a186cd66904481094c04d7c443c50621d3009529beaebc2781135698d0ce
+size 4246
diff --git a/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/DrawComplexPolygon__Dashed.png b/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/DrawComplexPolygon__Dashed.png
index ffc79418..ff383756 100644
--- a/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/DrawComplexPolygon__Dashed.png
+++ b/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/DrawComplexPolygon__Dashed.png
@@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
-oid sha256:d816c725383d44f9b2deef3c07d1bec82bc24359c6a2b7b9c4ed98be2f2ef272
-size 8223
+oid sha256:b4a28e40d958bf024ce956cfaca83994b393b29516beacb6b05db3d4e4d200ce
+size 8131
diff --git a/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/DrawComplexPolygon__Overlap.png b/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/DrawComplexPolygon__Overlap.png
index 9f57f9e1..b4af470b 100644
--- a/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/DrawComplexPolygon__Overlap.png
+++ b/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/DrawComplexPolygon__Overlap.png
@@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
-oid sha256:5e3523d31ec0dd3b89b425d37b3f158869c1b574735a241aebd67421a8983261
-size 7219
+oid sha256:bcc94045938246b6edb9c9e1791be170d2bc3fd60c53d17dfb35987ce6999017
+size 6037
diff --git a/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/DrawComplexPolygon__Transparent.png b/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/DrawComplexPolygon__Transparent.png
index 059bd4b9..d8392486 100644
--- a/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/DrawComplexPolygon__Transparent.png
+++ b/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/DrawComplexPolygon__Transparent.png
@@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
-oid sha256:a785b0bb8795eb5d23ccb37e8976dcf5ed5cb5f92af8a5a4cab68eb3fc6ac365
-size 6203
+oid sha256:7e92e1301c4c104475def6f35249268852cabfbb21518758f4b38e23f3acd887
+size 3753
diff --git a/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/DrawLines_EndCapSquare_Rgba32_Yellow_A(1)_T(5).png b/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/DrawLines_EndCapSquare_Rgba32_Yellow_A(1)_T(5).png
index f5a4d1c7..bf109ce3 100644
--- a/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/DrawLines_EndCapSquare_Rgba32_Yellow_A(1)_T(5).png
+++ b/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/DrawLines_EndCapSquare_Rgba32_Yellow_A(1)_T(5).png
@@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
-oid sha256:a2539a412cc6506af072535e0cd160f220097acf864c087eeb6432cb097fbbfb
-size 3171
+oid sha256:70aa1c188a9a28f5a6de9bb98e0d395d6edd4a9d2c3e1e5e3109da0394475fe1
+size 2979
diff --git a/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/DrawLines_JointStyleMiter_Rgba32_Yellow_A(1)_T(10).png b/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/DrawLines_JointStyleMiter_Rgba32_Yellow_A(1)_T(10).png
index e324acfb..9d7455d9 100644
--- a/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/DrawLines_JointStyleMiter_Rgba32_Yellow_A(1)_T(10).png
+++ b/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/DrawLines_JointStyleMiter_Rgba32_Yellow_A(1)_T(10).png
@@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
-oid sha256:a4cb44d478e8cfb45b1f650fdb3c1ba2ce6493a7402a9cc01dee7eb77ee8abbe
-size 3067
+oid sha256:dd8e41ef3d0f87bae7bfeb2cdef2f5e02f3f37433f9688777488f4eb853529d5
+size 2246
diff --git a/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/DrawLines_JointStyleRound_Rgba32_Yellow_A(1)_T(10).png b/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/DrawLines_JointStyleRound_Rgba32_Yellow_A(1)_T(10).png
index 0333820d..6462528d 100644
--- a/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/DrawLines_JointStyleRound_Rgba32_Yellow_A(1)_T(10).png
+++ b/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/DrawLines_JointStyleRound_Rgba32_Yellow_A(1)_T(10).png
@@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
-oid sha256:bca90dbde5f0c63eb6cedc9b67b1a1f7b4598a2adcbc2b40df0ac42090d2213f
-size 3840
+oid sha256:fd2fa3f41f2e2aa478d1e5b11512838818f0f4d23cabc2013f43b80803804a54
+size 2343
diff --git a/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/DrawLines_JointStyleSquare_Rgba32_Yellow_A(1)_T(10).png b/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/DrawLines_JointStyleSquare_Rgba32_Yellow_A(1)_T(10).png
index e996f9db..b38489b0 100644
--- a/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/DrawLines_JointStyleSquare_Rgba32_Yellow_A(1)_T(10).png
+++ b/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/DrawLines_JointStyleSquare_Rgba32_Yellow_A(1)_T(10).png
@@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
-oid sha256:6999b29f6fba324f44c5c39a493a509f4492488edd5329878a9b3ddf4693b0a1
-size 3825
+oid sha256:b0768a024f53555168b7e863df93ba1c99c0b96a7f25fe96fa7c6a4b63ce2dc6
+size 2334
diff --git a/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/DrawLines_Simple_Bgr24_Yellow_A(1)_T(10).png b/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/DrawLines_Simple_Bgr24_Yellow_A(1)_T(10).png
index 9399d3e4..b03434f8 100644
--- a/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/DrawLines_Simple_Bgr24_Yellow_A(1)_T(10).png
+++ b/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/DrawLines_Simple_Bgr24_Yellow_A(1)_T(10).png
@@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
-oid sha256:a609157d1bca13d104b6c24e1fa3b986b461411c829accdc1a435b5aca738655
-size 3642
+oid sha256:68c51bb0815492b3d5d39c9969fcae9391c8aef1da9fd9385526421a6b9510ac
+size 2254
diff --git a/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/DrawLines_Simple_Rgba32_White_A(0.6)_T(10).png b/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/DrawLines_Simple_Rgba32_White_A(0.6)_T(10).png
index 43879630..28be933b 100644
--- a/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/DrawLines_Simple_Rgba32_White_A(0.6)_T(10).png
+++ b/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/DrawLines_Simple_Rgba32_White_A(0.6)_T(10).png
@@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
-oid sha256:71375fde7e5f3b556ada4858831115b09906d10c03eec828dadfaf392540549f
-size 3081
+oid sha256:58d8b655d4607f459413b8cc8ae8d34503a230877b5a95f919f25ccdd2705cc3
+size 2188
diff --git a/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/DrawLines_Simple_Rgba32_White_A(1)_T(2.5).png b/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/DrawLines_Simple_Rgba32_White_A(1)_T(2.5).png
index 03ab88bc..91daebdf 100644
--- a/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/DrawLines_Simple_Rgba32_White_A(1)_T(2.5).png
+++ b/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/DrawLines_Simple_Rgba32_White_A(1)_T(2.5).png
@@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
-oid sha256:3520c806fc6ad61f57f1e79a9e4318d87c7d31e09008ed383f0f0b4633e113d8
-size 4253
+oid sha256:e030afcc9f1ab0686b15bd89af47f2004efdf56ae208963bd6713d09dff77d81
+size 2207
diff --git a/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/DrawPathCircleUsingAddArc_359.png b/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/DrawPathCircleUsingAddArc_359.png
index 40e0145e..e593be7c 100644
--- a/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/DrawPathCircleUsingAddArc_359.png
+++ b/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/DrawPathCircleUsingAddArc_359.png
@@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
-oid sha256:d1ea814eb776d5f6224ad8b0042ca9658789d490063865d1ecfd70253120862c
-size 1726
+oid sha256:da070c2488e14e11b2a3032f91ad5f7c296881a740de294a25d3fc26fdea6f8c
+size 1674
diff --git a/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/DrawPathCircleUsingAddArc_360.png b/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/DrawPathCircleUsingAddArc_360.png
index 924d9133..9a316d29 100644
--- a/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/DrawPathCircleUsingAddArc_360.png
+++ b/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/DrawPathCircleUsingAddArc_360.png
@@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
-oid sha256:98a37d928a6298859666d0d570ef3786ae22a467dd351c18e7693dcf07805fb5
-size 1673
+oid sha256:a31d9e8892404200e2a81de215c5fab1b22cc41d50306cc08ec56058c71c68bd
+size 1614
diff --git a/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/DrawPathCircleUsingArcTo_False.png b/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/DrawPathCircleUsingArcTo_False.png
index 196ab480..fbfd4f66 100644
--- a/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/DrawPathCircleUsingArcTo_False.png
+++ b/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/DrawPathCircleUsingArcTo_False.png
@@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
-oid sha256:9144e3eadb065da3c353bd3d2bd7d48b3723b4307441c50cee8ba481cf343aee
-size 1510
+oid sha256:75e40185d2f49999d6f4894221d49d20abdb8be68058ec897fda927c98fa9a76
+size 1104
diff --git a/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/DrawPathCircleUsingArcTo_True.png b/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/DrawPathCircleUsingArcTo_True.png
index b75f537f..4febc78b 100644
--- a/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/DrawPathCircleUsingArcTo_True.png
+++ b/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/DrawPathCircleUsingArcTo_True.png
@@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
-oid sha256:a6426fa279985a51b6ad06f2e26d3fa06b66fe13372510137193aced4947723c
-size 1496
+oid sha256:5ee77d798c0599b92b8d60ba9e0cb953a83135d680dd898a424e34f4926d220d
+size 1101
diff --git a/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/DrawPathClippedOnTop.png b/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/DrawPathClippedOnTop.png
index 3d5f4f53..c8c6f659 100644
--- a/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/DrawPathClippedOnTop.png
+++ b/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/DrawPathClippedOnTop.png
@@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
-oid sha256:ea292371c8329e2364453016c6a89b18f7385b858e1b9acdf58660e215c994d9
-size 210
+oid sha256:995737b99fde5bda88f2a2c1f3c2acbcadc52223fe4ec26c329ae16df41c312f
+size 244
diff --git a/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/DrawPath_HotPink_A150_T5.png b/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/DrawPath_HotPink_A150_T5.png
index 624f0cd3..4d1d5a96 100644
--- a/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/DrawPath_HotPink_A150_T5.png
+++ b/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/DrawPath_HotPink_A150_T5.png
@@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
-oid sha256:f56171d86c48eb5e26f67ddcab9a747c7b49a07397af2536317790aa15ee4e0a
-size 7679
+oid sha256:a038b4bcb1df7b410d9a027b442a3a7eb86ebf3d09a32c3410bb0bba339cd6b5
+size 7513
diff --git a/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/DrawPath_HotPink_A255_T5.png b/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/DrawPath_HotPink_A255_T5.png
index c44d4095..f21b3ddd 100644
--- a/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/DrawPath_HotPink_A255_T5.png
+++ b/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/DrawPath_HotPink_A255_T5.png
@@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
-oid sha256:74cc168a086cb2ce379eaa50a60f400d343e34d761b59e530d9052dec9f8d97d
-size 15586
+oid sha256:3e88f24d207cb3597c034029bb91e3f9fb7f858679e3c98375250571977d6c32
+size 15567
diff --git a/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/DrawPath_Red_A255_T3.png b/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/DrawPath_Red_A255_T3.png
index 513118ea..de8decd7 100644
--- a/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/DrawPath_Red_A255_T3.png
+++ b/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/DrawPath_Red_A255_T3.png
@@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
-oid sha256:a8be6bec64b2fdda2a41a03cb48634a10ebc20256118aa68295eba590d67b098
-size 15324
+oid sha256:bfcac038f47c3e2c879cc5c5ab6e90af8ff819cabcf16f92706da331c48552b4
+size 7583
diff --git a/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/DrawPath_White_A255_T1.5.png b/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/DrawPath_White_A255_T1.5.png
index 750b47c7..e0bfaab8 100644
--- a/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/DrawPath_White_A255_T1.5.png
+++ b/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/DrawPath_White_A255_T1.5.png
@@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
-oid sha256:dfb172649a61e42d7ced8c4c16bd7739c84ca761927c78a49a11521d5d600fa1
-size 7308
+oid sha256:97122a5ebf039d4713d064337d8e1bec90e51e0dbde951770f250ca6667a9eec
+size 7043
diff --git a/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/DrawPath_White_A255_T15.png b/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/DrawPath_White_A255_T15.png
index 198ed412..78995ffc 100644
--- a/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/DrawPath_White_A255_T15.png
+++ b/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/DrawPath_White_A255_T15.png
@@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
-oid sha256:727d972f22630fedf2399162e410ca536a3474ec7a8a3df38db1560aeb527138
-size 7777
+oid sha256:5e7f30b23dd2fb579d04536e4716c627b3e737bc5f3155aea77a91fb0e60c3d9
+size 7592
diff --git a/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/DrawPolygonRectangular_Transformed_Rgba32_BasicTestPattern100x100.png b/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/DrawPolygonRectangular_Transformed_Rgba32_BasicTestPattern100x100.png
index 4934be33..974ea830 100644
--- a/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/DrawPolygonRectangular_Transformed_Rgba32_BasicTestPattern100x100.png
+++ b/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/DrawPolygonRectangular_Transformed_Rgba32_BasicTestPattern100x100.png
@@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
-oid sha256:fd2e2ecc4aaa1a97a393fee3c66fcaf03bf834b167c913e8c204b3ab75d4a241
-size 559
+oid sha256:0cb97bf0d88e2648c78c66592753d57966093f219440c7c5d4057250476ffc1d
+size 517
diff --git a/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/DrawPolygon_Bgr24_Yellow_A(1)_T(10).png b/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/DrawPolygon_Bgr24_Yellow_A(1)_T(10).png
index 64e3208f..65b4911b 100644
--- a/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/DrawPolygon_Bgr24_Yellow_A(1)_T(10).png
+++ b/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/DrawPolygon_Bgr24_Yellow_A(1)_T(10).png
@@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
-oid sha256:86ed964b614b50054124aa737266eb074c6d370fc6cb7e3bc0022b3e8524a488
-size 4658
+oid sha256:aa6679add3f02f0a12c4161636c0028c1babce98ca7ad01d9d829959a9fa30c6
+size 3910
diff --git a/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/DrawPolygon_Rgba32_White_A(0.6)_T(10).png b/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/DrawPolygon_Rgba32_White_A(0.6)_T(10).png
index b1693888..83e0c5ce 100644
--- a/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/DrawPolygon_Rgba32_White_A(0.6)_T(10).png
+++ b/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/DrawPolygon_Rgba32_White_A(0.6)_T(10).png
@@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
-oid sha256:b29fc24a266f9d208dd54d05df2bfc490ee1bf3293b5c4614d8ffa427bf89a15
-size 4851
+oid sha256:aa4704507224fc1abdd3f98fb9ec8362304f8e51373ab2b4ec78484e241940b3
+size 3384
diff --git a/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/DrawPolygon_Rgba32_White_A(1)_T(2.5).png b/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/DrawPolygon_Rgba32_White_A(1)_T(2.5).png
index d236bd65..f5faaf66 100644
--- a/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/DrawPolygon_Rgba32_White_A(1)_T(2.5).png
+++ b/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/DrawPolygon_Rgba32_White_A(1)_T(2.5).png
@@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
-oid sha256:9defda56009f1cab547c9022e2d162d0ba4b9bdd2794908f0eb0abb6dcb1688d
-size 5950
+oid sha256:632fa8e335d3bc4f978129616d574768ae8f106144e39f577c80165364184af9
+size 3646
diff --git a/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/DrawPolygon_Rgba32_White_A(1)_T(5)_NoAntialias.png b/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/DrawPolygon_Rgba32_White_A(1)_T(5)_NoAntialias.png
index b2a7d660..8c51c8ff 100644
--- a/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/DrawPolygon_Rgba32_White_A(1)_T(5)_NoAntialias.png
+++ b/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/DrawPolygon_Rgba32_White_A(1)_T(5)_NoAntialias.png
@@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
-oid sha256:bd9436d93cb5d53304fd37cbc64b956906217c8a54a283a3fee90f8300fe611c
+oid sha256:b89064a1fc875ebffbda2f1bd6afc27aa95c45f77a005ef889ffbab910217f12
size 1226
diff --git a/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/DrawPolygon_Transformed_Rgba32_BasicTestPattern250x350.png b/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/DrawPolygon_Transformed_Rgba32_BasicTestPattern250x350.png
index 932a275a..92b4ba17 100644
--- a/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/DrawPolygon_Transformed_Rgba32_BasicTestPattern250x350.png
+++ b/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/DrawPolygon_Transformed_Rgba32_BasicTestPattern250x350.png
@@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
-oid sha256:840afc19dacd26157aff8c5b99f37cda865e2f03b0997e1e80050dbc72d978e8
-size 8784
+oid sha256:34b339a507ef74d32d73fc8a78a8c7e6c04caabbdad97cb40ff10248bb2d1eff
+size 8815
diff --git a/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/DrawRichTextArabic_Solid500x200_(0,0,0,255)_RichText-Arabic-F(32).png b/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/DrawRichTextArabic_Solid500x200_(0,0,0,255)_RichText-Arabic-F(32).png
index 61f87f7d..e1772150 100644
--- a/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/DrawRichTextArabic_Solid500x200_(0,0,0,255)_RichText-Arabic-F(32).png
+++ b/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/DrawRichTextArabic_Solid500x200_(0,0,0,255)_RichText-Arabic-F(32).png
@@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
-oid sha256:5fc363b8f16e600c19e1ddc23de0e674de00762ec45491e0a5727db21030c778
-size 3189
+oid sha256:3464cc22a7e9e872c4aa5e10091e40ee05d1ad0a7564377a81bb34e07754e42a
+size 3168
diff --git a/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/DrawRichTextArabic_Solid500x300_(0,0,0,255)_RichText-Arabic-F(40).png b/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/DrawRichTextArabic_Solid500x300_(0,0,0,255)_RichText-Arabic-F(40).png
index d43a830c..2480e0db 100644
--- a/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/DrawRichTextArabic_Solid500x300_(0,0,0,255)_RichText-Arabic-F(40).png
+++ b/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/DrawRichTextArabic_Solid500x300_(0,0,0,255)_RichText-Arabic-F(40).png
@@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
-oid sha256:33cdf61cc52c95d1cb30997b7aab7bb0c7100955bb0aad30b7c149914603a524
-size 3988
+oid sha256:f3b465d21ebb94e26f5fd1066546d79835a86df9810b953d3a3f402f4d242cbd
+size 3977
diff --git a/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/DrawRichTextRainbow_Solid500x200_(0,0,0,255)_RichText-Rainbow-F(32).png b/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/DrawRichTextRainbow_Solid500x200_(0,0,0,255)_RichText-Rainbow-F(32).png
index 621c76c8..6cf368d6 100644
--- a/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/DrawRichTextRainbow_Solid500x200_(0,0,0,255)_RichText-Rainbow-F(32).png
+++ b/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/DrawRichTextRainbow_Solid500x200_(0,0,0,255)_RichText-Rainbow-F(32).png
@@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
-oid sha256:000c4701adfb688247e5e6dfe826e23dbc677932e8e2bd2a5f5025703310573a
-size 5983
+oid sha256:144c9cbeabb730ff0ea38042ab0eeb326f95264833de0530188e8cd844094cd8
+size 8484
diff --git a/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/DrawRichTextRainbow_Solid500x300_(0,0,0,255)_RichText-Rainbow-F(40).png b/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/DrawRichTextRainbow_Solid500x300_(0,0,0,255)_RichText-Rainbow-F(40).png
index a535925e..cbd4d431 100644
--- a/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/DrawRichTextRainbow_Solid500x300_(0,0,0,255)_RichText-Rainbow-F(40).png
+++ b/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/DrawRichTextRainbow_Solid500x300_(0,0,0,255)_RichText-Rainbow-F(40).png
@@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
-oid sha256:fb439ac5f437d5aee831192213bcac65cc62d6f1604556c1f2031899aa8f6a59
-size 7519
+oid sha256:7e1026544bf2ca8d5164d94b0c9f6d352d38c1f040ed7a82ec7e1730ba887845
+size 11284
diff --git a/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/DrawRichText_Solid500x200_(0,0,0,255)_RichText-F(32).png b/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/DrawRichText_Solid500x200_(0,0,0,255)_RichText-F(32).png
index 06015eb8..0b24813d 100644
--- a/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/DrawRichText_Solid500x200_(0,0,0,255)_RichText-F(32).png
+++ b/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/DrawRichText_Solid500x200_(0,0,0,255)_RichText-F(32).png
@@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
-oid sha256:b43babafdbdf2b0ba6e38d1f8df33f4ca5a20084a10d2a5899a91c02a0574604
-size 8887
+oid sha256:3ebfd3d7cb637280efeb72bcdaca17d4d083c0b97a048cc122f7fe257effc037
+size 8778
diff --git a/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/DrawRichText_Solid500x300_(0,0,0,255)_RichText-F(40).png b/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/DrawRichText_Solid500x300_(0,0,0,255)_RichText-F(40).png
index e1fc4089..f3805afd 100644
--- a/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/DrawRichText_Solid500x300_(0,0,0,255)_RichText-F(40).png
+++ b/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/DrawRichText_Solid500x300_(0,0,0,255)_RichText-F(40).png
@@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
-oid sha256:edd76e5a7d69abf54f78efea0fe65b85e67d6db11358c67c9264efaf465ea06c
-size 11855
+oid sha256:5143de579e8eb01f983a3f24166686d0812f552ff3156dac6f5a0db293bfff3e
+size 11899
diff --git a/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/FillComplexPolygon_SolidFill.png b/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/FillComplexPolygon_SolidFill.png
index 84629646..ba94dfae 100644
--- a/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/FillComplexPolygon_SolidFill.png
+++ b/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/FillComplexPolygon_SolidFill.png
@@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
-oid sha256:d1c4a91826da57f9dfee91aecba12f86725b2c15877418ae2bc66610086111b4
-size 6516
+oid sha256:93678f4090656b4d29622b8132875f3f58da5d433da39c0350a4323116abf15b
+size 2267
diff --git a/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/FillComplexPolygon_SolidFill__Overlap.png b/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/FillComplexPolygon_SolidFill__Overlap.png
index 0b3fa956..d68f6df1 100644
--- a/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/FillComplexPolygon_SolidFill__Overlap.png
+++ b/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/FillComplexPolygon_SolidFill__Overlap.png
@@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
-oid sha256:bd8defadc3cbaf95b1497f96126351a2ece99b1ee277e8a242c815d8b5cc9ba6
-size 7359
+oid sha256:285b91b6fb67d524dfa8513247a674ca174671767553f544543123e020d235f4
+size 2640
diff --git a/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/FillComplexPolygon_SolidFill__Transparent.png b/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/FillComplexPolygon_SolidFill__Transparent.png
index 68829b04..41c87640 100644
--- a/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/FillComplexPolygon_SolidFill__Transparent.png
+++ b/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/FillComplexPolygon_SolidFill__Transparent.png
@@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
-oid sha256:e712eca525fd5f8af58dfe66dfb3bcef07ce89143d925697602f903b8c77c042
-size 6122
+oid sha256:a233ab5c3892ab0c2079b58687d475f2e43cd03b8a5b787552876c7a4e4f8bd8
+size 2115
diff --git a/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/FillLinearGradientBrushGradientsWithTransparencyOnExistingBackground_Rgba32_Blank200x200.png b/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/FillLinearGradientBrushGradientsWithTransparencyOnExistingBackground_Rgba32_Blank200x200.png
index 72331a91..172a37ac 100644
--- a/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/FillLinearGradientBrushGradientsWithTransparencyOnExistingBackground_Rgba32_Blank200x200.png
+++ b/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/FillLinearGradientBrushGradientsWithTransparencyOnExistingBackground_Rgba32_Blank200x200.png
@@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
-oid sha256:3e7dcf0c0122f47c0705982fc423b4cbbda78755269a93e92af22a37946188a7
-size 1080
+oid sha256:479d6f076f268a49d0e50f2e8a196aaa1b4c007824269a19c458546a48eaadeb
+size 1066
diff --git a/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/FillPathArcToAlternates.png b/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/FillPathArcToAlternates.png
index 829e5a7c..fde7c325 100644
--- a/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/FillPathArcToAlternates.png
+++ b/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/FillPathArcToAlternates.png
@@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
-oid sha256:03310890b7ed30c1ebbaa2e31cd302f7694d94429a79d958e9a65d560e9fc51f
-size 1720
+oid sha256:fa508c2cb9678d386a525208db595147d07599eaedd69bc5e2172a727ce77fd8
+size 1836
diff --git a/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/FillPathCanvasArcs.png b/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/FillPathCanvasArcs.png
index 60891375..f4816ce2 100644
--- a/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/FillPathCanvasArcs.png
+++ b/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/FillPathCanvasArcs.png
@@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
-oid sha256:51e94e42cdd8b8206f1f1feeea8dae41312e997c986c5a55219a084715eac85c
-size 1652
+oid sha256:f0c67bbd0338fb54a2ad0e2730202251ab93fa827f0d621bdd2007a76b31c803
+size 1287
diff --git a/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/FillPathSVGArcs.png b/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/FillPathSVGArcs.png
index f34ed079..a632f7c0 100644
--- a/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/FillPathSVGArcs.png
+++ b/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/FillPathSVGArcs.png
@@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
-oid sha256:aed78f6179183960123c97502d55c12291bbee7a9dd6667b71cfec8feff8adfc
-size 2603
+oid sha256:9068f7de12e0d199439cb3a07678f259af1b176096b3ee38fc4a5c25fe66bbfc
+size 2183
diff --git a/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/FillPolygon_EllipsePolygon_Reverse(False)_IntersectionRule(EvenOdd).png b/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/FillPolygon_EllipsePolygon_Reverse(False)_IntersectionRule(EvenOdd).png
index fcdccdde..127a978c 100644
--- a/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/FillPolygon_EllipsePolygon_Reverse(False)_IntersectionRule(EvenOdd).png
+++ b/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/FillPolygon_EllipsePolygon_Reverse(False)_IntersectionRule(EvenOdd).png
@@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
-oid sha256:2b58d324787f5c98df33eb68c57fc3e5516c06ac1dab9acd501a28e7b5037a43
-size 2655
+oid sha256:d21348a0237fab5473b6c19489ea00077d5c2e76c68a6548284b99ab2177a794
+size 2633
diff --git a/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/FillPolygon_EllipsePolygon_Reverse(False)_IntersectionRule(NonZero).png b/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/FillPolygon_EllipsePolygon_Reverse(False)_IntersectionRule(NonZero).png
index fcdccdde..127a978c 100644
--- a/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/FillPolygon_EllipsePolygon_Reverse(False)_IntersectionRule(NonZero).png
+++ b/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/FillPolygon_EllipsePolygon_Reverse(False)_IntersectionRule(NonZero).png
@@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
-oid sha256:2b58d324787f5c98df33eb68c57fc3e5516c06ac1dab9acd501a28e7b5037a43
-size 2655
+oid sha256:d21348a0237fab5473b6c19489ea00077d5c2e76c68a6548284b99ab2177a794
+size 2633
diff --git a/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/FillPolygon_EllipsePolygon_Reverse(True)_IntersectionRule(EvenOdd).png b/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/FillPolygon_EllipsePolygon_Reverse(True)_IntersectionRule(EvenOdd).png
index b40390e1..127a978c 100644
--- a/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/FillPolygon_EllipsePolygon_Reverse(True)_IntersectionRule(EvenOdd).png
+++ b/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/FillPolygon_EllipsePolygon_Reverse(True)_IntersectionRule(EvenOdd).png
@@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
-oid sha256:037adb11000c91154d2f5364dcfc531363aac02e7d9ee53ab317f877136ebad7
-size 2640
+oid sha256:d21348a0237fab5473b6c19489ea00077d5c2e76c68a6548284b99ab2177a794
+size 2633
diff --git a/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/FillPolygon_EllipsePolygon_Reverse(True)_IntersectionRule(NonZero).png b/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/FillPolygon_EllipsePolygon_Reverse(True)_IntersectionRule(NonZero).png
index b40390e1..127a978c 100644
--- a/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/FillPolygon_EllipsePolygon_Reverse(True)_IntersectionRule(NonZero).png
+++ b/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/FillPolygon_EllipsePolygon_Reverse(True)_IntersectionRule(NonZero).png
@@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
-oid sha256:037adb11000c91154d2f5364dcfc531363aac02e7d9ee53ab317f877136ebad7
-size 2640
+oid sha256:d21348a0237fab5473b6c19489ea00077d5c2e76c68a6548284b99ab2177a794
+size 2633
diff --git a/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/FillPolygon_ImageBrush_Rect_Rgba32_Car_rect.png b/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/FillPolygon_ImageBrush_Rect_Rgba32_Car_rect.png
index 07f2db28..9633a280 100644
--- a/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/FillPolygon_ImageBrush_Rect_Rgba32_Car_rect.png
+++ b/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/FillPolygon_ImageBrush_Rect_Rgba32_Car_rect.png
@@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
-oid sha256:2bea21ec67618d12c256c98d8306582d91ae6e39e5bd124afa5496b453bd31bc
-size 42813
+oid sha256:f8f692365f5cdb0cfa3368b6f4ebf0e282d4750e6d75cc2dec817035312d6536
+size 38460
diff --git a/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/FillPolygon_ImageBrush_Rect_Rgba32_ducky_rect.png b/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/FillPolygon_ImageBrush_Rect_Rgba32_ducky_rect.png
index 9a165c5a..19b3c178 100644
--- a/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/FillPolygon_ImageBrush_Rect_Rgba32_ducky_rect.png
+++ b/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/FillPolygon_ImageBrush_Rect_Rgba32_ducky_rect.png
@@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
-oid sha256:c915262c64b89d2b1421a4b610e3944c2915c77347b7926c7ccb5ad3e3c5e516
-size 20684
+oid sha256:bab90a74b32979b5999c59d6029882bbae7fc3b0c49305ba7bbfa20e83649f0b
+size 20602
diff --git a/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/FillPolygon_ImageBrush_Rgba32_Car.png b/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/FillPolygon_ImageBrush_Rgba32_Car.png
index 2ebec0be..5c4cbca9 100644
--- a/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/FillPolygon_ImageBrush_Rgba32_Car.png
+++ b/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/FillPolygon_ImageBrush_Rgba32_Car.png
@@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
-oid sha256:b118948776088588c0650a008017cf41214a97415933eb45e17a84b12d379e14
-size 13502
+oid sha256:e0f5df97e33667d6d6f83f8af2274c29f2955c057b81e158490c117e7acf6e4c
+size 13387
diff --git a/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/FillPolygon_ImageBrush_Rgba32_ducky.png b/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/FillPolygon_ImageBrush_Rgba32_ducky.png
index 6a91ac0b..63143159 100644
--- a/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/FillPolygon_ImageBrush_Rgba32_ducky.png
+++ b/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/FillPolygon_ImageBrush_Rgba32_ducky.png
@@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
-oid sha256:14d56cf4506c48e583c225a230f0165c7ffb5ea17f0f2fdf088752c34ea05611
-size 17099
+oid sha256:dc0197682ae448f3a6a8367c553c00eb2648dec7c7a471a8609aeda5b08fc5b6
+size 17106
diff --git a/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/FillPolygon_RectanglePolygon_Solid_TransformedUsingConfiguration_Rgba32_BasicTestPattern100x100.png b/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/FillPolygon_RectanglePolygon_Solid_TransformedUsingConfiguration_Rgba32_BasicTestPattern100x100.png
index 7a434207..c954af0c 100644
--- a/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/FillPolygon_RectanglePolygon_Solid_TransformedUsingConfiguration_Rgba32_BasicTestPattern100x100.png
+++ b/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/FillPolygon_RectanglePolygon_Solid_TransformedUsingConfiguration_Rgba32_BasicTestPattern100x100.png
@@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
-oid sha256:ee5d9ccd781eaf64f3dc61cf34cd110acbf21f6fed92c00b52b492f3ea97995e
+oid sha256:469dbcdb9f3a60683eeca718498ad30ae4c5bf1d1f84399463cd213b93616e51
size 419
diff --git a/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/FillPolygon_RectanglePolygon_Solid_Transformed_Rgba32_BasicTestPattern100x100.png b/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/FillPolygon_RectanglePolygon_Solid_Transformed_Rgba32_BasicTestPattern100x100.png
index 7a434207..c954af0c 100644
--- a/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/FillPolygon_RectanglePolygon_Solid_Transformed_Rgba32_BasicTestPattern100x100.png
+++ b/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/FillPolygon_RectanglePolygon_Solid_Transformed_Rgba32_BasicTestPattern100x100.png
@@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
-oid sha256:ee5d9ccd781eaf64f3dc61cf34cd110acbf21f6fed92c00b52b492f3ea97995e
+oid sha256:469dbcdb9f3a60683eeca718498ad30ae4c5bf1d1f84399463cd213b93616e51
size 419
diff --git a/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/FillPolygon_RegularPolygon_V(3)_R(50)_Ang(0).png b/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/FillPolygon_RegularPolygon_V(3)_R(50)_Ang(0).png
index a38bec07..99e7dbea 100644
--- a/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/FillPolygon_RegularPolygon_V(3)_R(50)_Ang(0).png
+++ b/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/FillPolygon_RegularPolygon_V(3)_R(50)_Ang(0).png
@@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
-oid sha256:b8c2505b682cb7024e776f181fe4215c5883fada89cffad955864507ff1cc561
-size 2368
+oid sha256:32fccda4ec6e0bc56887ecf0e3b688f466b2b355a303336456797f7ff7f4e3c6
+size 1612
diff --git a/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/FillPolygon_RegularPolygon_V(3)_R(60)_Ang(-180).png b/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/FillPolygon_RegularPolygon_V(3)_R(60)_Ang(-180).png
index 955937f3..0f30394f 100644
--- a/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/FillPolygon_RegularPolygon_V(3)_R(60)_Ang(-180).png
+++ b/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/FillPolygon_RegularPolygon_V(3)_R(60)_Ang(-180).png
@@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
-oid sha256:a49c724ec79501eb626a3c93ae17beb65f57dc4febb011bd9b78ea113a1b0249
-size 1857
+oid sha256:e0639427f7488c179000293c215d4344098f405c30839276b1ffeb562013b635
+size 2031
diff --git a/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/FillPolygon_RegularPolygon_V(3)_R(60)_Ang(20).png b/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/FillPolygon_RegularPolygon_V(3)_R(60)_Ang(20).png
index 5be6460b..3fd46821 100644
--- a/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/FillPolygon_RegularPolygon_V(3)_R(60)_Ang(20).png
+++ b/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/FillPolygon_RegularPolygon_V(3)_R(60)_Ang(20).png
@@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
-oid sha256:6c24129330a29b353db8ce90f745dac320d16fb076e20d3ecfc2151f20bf58a0
-size 2535
+oid sha256:a2a84d9868858ddb448d7d1c10eedfb117d0aa31025d56bf6029058978cbe7ea
+size 2454
diff --git a/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/FillPolygon_RegularPolygon_V(5)_R(70)_Ang(0).png b/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/FillPolygon_RegularPolygon_V(5)_R(70)_Ang(0).png
index fac85138..2b7ccea2 100644
--- a/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/FillPolygon_RegularPolygon_V(5)_R(70)_Ang(0).png
+++ b/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/FillPolygon_RegularPolygon_V(5)_R(70)_Ang(0).png
@@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
-oid sha256:f78c5890d1bd3ea0b99478aeaf2d88db0308358997ba06ac2d92bce968c5512c
-size 2851
+oid sha256:93b8c670c3583f781cd498fbe8b2c2c20e1345dcbee152e11fc322b00b604ae5
+size 2852
diff --git a/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/FillPolygon_RegularPolygon_V(7)_R(80)_Ang(-180).png b/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/FillPolygon_RegularPolygon_V(7)_R(80)_Ang(-180).png
index 84d3e485..3da8dff0 100644
--- a/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/FillPolygon_RegularPolygon_V(7)_R(80)_Ang(-180).png
+++ b/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/FillPolygon_RegularPolygon_V(7)_R(80)_Ang(-180).png
@@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
-oid sha256:87aa13e0af6d299065b39190806a8667be9590ba710e77b1496bccf536b408d0
-size 3258
+oid sha256:662962002e091b0bdebd9b46327c7575190f136148e273175ffad4b2512fe965
+size 3129
diff --git a/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/FillPolygon_Solid_Bgr24_Yellow_A1.png b/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/FillPolygon_Solid_Bgr24_Yellow_A1.png
index f1b45a9f..9e50672e 100644
--- a/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/FillPolygon_Solid_Bgr24_Yellow_A1.png
+++ b/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/FillPolygon_Solid_Bgr24_Yellow_A1.png
@@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
-oid sha256:9226621193ef1b727dad890eb8c556055f3bd165fd0c6f1c12720c98a6ae5877
-size 3437
+oid sha256:a3b536e2379665402476e30363d92d5379ef3cd763e6f2bc057dec0dfa86213f
+size 2446
diff --git a/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/FillPolygon_Solid_Rgba32_White_A0.6.png b/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/FillPolygon_Solid_Rgba32_White_A0.6.png
index 7317c43a..731fdfc2 100644
--- a/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/FillPolygon_Solid_Rgba32_White_A0.6.png
+++ b/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/FillPolygon_Solid_Rgba32_White_A0.6.png
@@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
-oid sha256:5fa387f6479747980caa871010480e70c92009c854b68be3633acd11f199c1ed
-size 3489
+oid sha256:04c43d397cb080cbb0527ade170b432b78182f9948833c22bb980a2a9d718d19
+size 2355
diff --git a/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/FillPolygon_Solid_Rgba32_White_A1.png b/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/FillPolygon_Solid_Rgba32_White_A1.png
index 3a4bc44d..b2011ff8 100644
--- a/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/FillPolygon_Solid_Rgba32_White_A1.png
+++ b/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/FillPolygon_Solid_Rgba32_White_A1.png
@@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
-oid sha256:062040f552d8eab35eb13582cb5f0fdc3455682ce19315ad0e98a05d1e118c65
-size 3914
+oid sha256:b33fe884c267f082c18920a4f0e61e6df3e6d88767ad51cc3d2c94770d0ddd1d
+size 2577
diff --git a/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/FillPolygon_Solid_Rgba32_White_A1_NoAntialias.png b/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/FillPolygon_Solid_Rgba32_White_A1_NoAntialias.png
index b782d9a3..7cd33f33 100644
--- a/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/FillPolygon_Solid_Rgba32_White_A1_NoAntialias.png
+++ b/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/FillPolygon_Solid_Rgba32_White_A1_NoAntialias.png
@@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
-oid sha256:5be35d212440e52e5bc1412fecf190e1d118d56bfeb32147f94cdd9f98026568
+oid sha256:a07709ddcd6eebe041998bd62e8186be0aeac91e6f4e7da19ca3ea247344270b
size 975
diff --git a/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/FillPolygon_Solid_Transformed_Rgba32_BasicTestPattern250x350.png b/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/FillPolygon_Solid_Transformed_Rgba32_BasicTestPattern250x350.png
index c34cc414..9a42d3f6 100644
--- a/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/FillPolygon_Solid_Transformed_Rgba32_BasicTestPattern250x350.png
+++ b/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/FillPolygon_Solid_Transformed_Rgba32_BasicTestPattern250x350.png
@@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
-oid sha256:db1485ec92929399820e3e7b1a383f5a782e00b3b1302a8d0f534e272975d749
-size 5395
+oid sha256:e9b2d87bde3c4cc3d257bffff5acddbcd99a921030c7405c5deb1bf916474ff0
+size 5342
diff --git a/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/FillPolygon_StarCircle.png b/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/FillPolygon_StarCircle.png
index 9af73485..7673dacb 100644
--- a/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/FillPolygon_StarCircle.png
+++ b/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/FillPolygon_StarCircle.png
@@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
-oid sha256:54d16e74cee781704791888ebf04f2767edc5838f310aae278b0af22b8ce3d6d
-size 2573
+oid sha256:fe6bee11bc6626f04f86ca7a4f2ee877543b8e28dcd1dae399f644af5a718f70
+size 952
diff --git a/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/FillPolygon_StarCircle_AllOperations_Difference.png b/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/FillPolygon_StarCircle_AllOperations_Difference.png
index 0a63e5fd..1cd324dc 100644
--- a/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/FillPolygon_StarCircle_AllOperations_Difference.png
+++ b/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/FillPolygon_StarCircle_AllOperations_Difference.png
@@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
-oid sha256:a1f7566d7650138b0f2b50bb4892c33af10cb2eb1a50c92cef17389c492cdc02
-size 2955
+oid sha256:fc23d73e6a5f418064c8ac92cacadea5622add05c174773a59e4459e9e850f73
+size 2312
diff --git a/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/FillPolygon_StarCircle_AllOperations_Intersection.png b/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/FillPolygon_StarCircle_AllOperations_Intersection.png
index 49442f1f..ec9a3a0d 100644
--- a/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/FillPolygon_StarCircle_AllOperations_Intersection.png
+++ b/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/FillPolygon_StarCircle_AllOperations_Intersection.png
@@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
-oid sha256:b736ac8018d4400330d92628812d33a6a7a6266904c59e57bccb4db10aa4eb48
-size 5381
+oid sha256:16a24781a05ac980561be5a0ffe183e7dfaf23681ca3f9f2e592f463a2785f99
+size 2393
diff --git a/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/FillPolygon_StarCircle_AllOperations_Union.png b/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/FillPolygon_StarCircle_AllOperations_Union.png
index b42a93f0..223a2c53 100644
--- a/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/FillPolygon_StarCircle_AllOperations_Union.png
+++ b/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/FillPolygon_StarCircle_AllOperations_Union.png
@@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
-oid sha256:f4074ea4ee23cad727ac666e39ebd19b56315822b5e8e1031b8634c55d8363fe
-size 1672
+oid sha256:b930622d3552cb95c434d268e818c7895f0d43906d5ee04cc6d46f33733c406e
+size 1440
diff --git a/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/FillPolygon_StarCircle_AllOperations_Xor.png b/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/FillPolygon_StarCircle_AllOperations_Xor.png
index fc9fce16..42d7facd 100644
--- a/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/FillPolygon_StarCircle_AllOperations_Xor.png
+++ b/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/FillPolygon_StarCircle_AllOperations_Xor.png
@@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
-oid sha256:af24046e3a5cac1d06ab9384ce4b115d3d1df52d08f6f693c5171698ed372ad4
-size 2953
+oid sha256:6f33f8cc3b91fdf56c4a95b340f54a8e0fbe24608a79dc82f2d31bc041d8e01b
+size 2293
diff --git a/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/FontShapesAreRenderedCorrectlyWithAPenPatterned_Solid1100x200_(255,255,255,255)_pen_OpenSans-Regular.ttf-50-Sphi-(150,50).png b/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/FontShapesAreRenderedCorrectlyWithAPenPatterned_Solid1100x200_(255,255,255,255)_pen_OpenSans-Regular.ttf-50-Sphi-(150,50).png
index b46243da..05f3920b 100644
--- a/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/FontShapesAreRenderedCorrectlyWithAPenPatterned_Solid1100x200_(255,255,255,255)_pen_OpenSans-Regular.ttf-50-Sphi-(150,50).png
+++ b/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/FontShapesAreRenderedCorrectlyWithAPenPatterned_Solid1100x200_(255,255,255,255)_pen_OpenSans-Regular.ttf-50-Sphi-(150,50).png
@@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
-oid sha256:bde53587831f006609da784d8d28ca496949b65dbfdd7a4dbb555dccf3920cc6
-size 17436
+oid sha256:9ef455d55c25335f7a4e2f06839d12c19e0dba2c2ee98ffbc935340dfe08deb9
+size 17403
diff --git a/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/FontShapesAreRenderedCorrectlyWithAPenPatterned_Solid200x150_(255,255,255,255)_pen_SixLaborsSampleAB.woff-50-ABAB-(0,0).png b/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/FontShapesAreRenderedCorrectlyWithAPenPatterned_Solid200x150_(255,255,255,255)_pen_SixLaborsSampleAB.woff-50-ABAB-(0,0).png
index c86517ce..35aee48d 100644
--- a/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/FontShapesAreRenderedCorrectlyWithAPenPatterned_Solid200x150_(255,255,255,255)_pen_SixLaborsSampleAB.woff-50-ABAB-(0,0).png
+++ b/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/FontShapesAreRenderedCorrectlyWithAPenPatterned_Solid200x150_(255,255,255,255)_pen_SixLaborsSampleAB.woff-50-ABAB-(0,0).png
@@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
-oid sha256:ed9ad39560a0d5a35da734ac90c4f14d603af67a8a1de28ed16c342e644c8004
-size 775
+oid sha256:8de455a71b21936c72cacb7e7fcd3fb72db733d5453f3a7c201ff3b151e8fafa
+size 782
diff --git a/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/FontShapesAreRenderedCorrectlyWithAPenPatterned_Solid900x150_(255,255,255,255)_pen_OpenSans-Regular.ttf-50-Sphi-(0,0).png b/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/FontShapesAreRenderedCorrectlyWithAPenPatterned_Solid900x150_(255,255,255,255)_pen_OpenSans-Regular.ttf-50-Sphi-(0,0).png
index ea290694..21d70e20 100644
--- a/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/FontShapesAreRenderedCorrectlyWithAPenPatterned_Solid900x150_(255,255,255,255)_pen_OpenSans-Regular.ttf-50-Sphi-(0,0).png
+++ b/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/FontShapesAreRenderedCorrectlyWithAPenPatterned_Solid900x150_(255,255,255,255)_pen_OpenSans-Regular.ttf-50-Sphi-(0,0).png
@@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
-oid sha256:298b139184f696076eab19c9b2358134c85fcef98e750a75747765f13c8c1ea3
-size 16879
+oid sha256:34fd9ba5131c64198ddb0a6c81cf518350f38fdff5284b7e6cefcf94a79fc76a
+size 16825
diff --git a/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/FontShapesAreRenderedCorrectlyWithAPen_Solid1100x200_(255,255,255,255)_pen_OpenSans-Regular.ttf-50-Sphi-(150,50).png b/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/FontShapesAreRenderedCorrectlyWithAPen_Solid1100x200_(255,255,255,255)_pen_OpenSans-Regular.ttf-50-Sphi-(150,50).png
index ddd2ae51..580f7a7f 100644
--- a/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/FontShapesAreRenderedCorrectlyWithAPen_Solid1100x200_(255,255,255,255)_pen_OpenSans-Regular.ttf-50-Sphi-(150,50).png
+++ b/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/FontShapesAreRenderedCorrectlyWithAPen_Solid1100x200_(255,255,255,255)_pen_OpenSans-Regular.ttf-50-Sphi-(150,50).png
@@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
-oid sha256:f1a0e12a4c0b00ff01701839e5522b3ab873c87ae31daadeac1c0ce6e02bfdf7
-size 15123
+oid sha256:be35a336f12a7e7511fa90243f731ab5e8dedcad85df938f716ac0603b1d9b92
+size 15152
diff --git a/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/FontShapesAreRenderedCorrectlyWithAPen_Solid200x150_(255,255,255,255)_pen_SixLaborsSampleAB.woff-50-ABAB-(0,0).png b/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/FontShapesAreRenderedCorrectlyWithAPen_Solid200x150_(255,255,255,255)_pen_SixLaborsSampleAB.woff-50-ABAB-(0,0).png
index 4ad59dad..e51cf436 100644
--- a/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/FontShapesAreRenderedCorrectlyWithAPen_Solid200x150_(255,255,255,255)_pen_SixLaborsSampleAB.woff-50-ABAB-(0,0).png
+++ b/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/FontShapesAreRenderedCorrectlyWithAPen_Solid200x150_(255,255,255,255)_pen_SixLaborsSampleAB.woff-50-ABAB-(0,0).png
@@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
-oid sha256:ba613a9757a77f3f37abb675e9192043a45cdd7e539a512052ebfa5aace31508
-size 712
+oid sha256:1f6013541369013118713742c04a1883513b9758979c86eec106a3ace342f318
+size 721
diff --git a/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/FontShapesAreRenderedCorrectlyWithAPen_Solid900x150_(255,255,255,255)_pen_OpenSans-Regular.ttf-50-Sphi-(0,0).png b/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/FontShapesAreRenderedCorrectlyWithAPen_Solid900x150_(255,255,255,255)_pen_OpenSans-Regular.ttf-50-Sphi-(0,0).png
index 4fcc2e4a..c9592d88 100644
--- a/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/FontShapesAreRenderedCorrectlyWithAPen_Solid900x150_(255,255,255,255)_pen_OpenSans-Regular.ttf-50-Sphi-(0,0).png
+++ b/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/FontShapesAreRenderedCorrectlyWithAPen_Solid900x150_(255,255,255,255)_pen_OpenSans-Regular.ttf-50-Sphi-(0,0).png
@@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
-oid sha256:232220f3e09f8a5b1d40f4dd892cbb3e4228294209c52feacc04c38e43aa0457
-size 14637
+oid sha256:912713a4fc32242beb54f9b5431efbed31c6f1bacc8aa82f169310d83c376244
+size 14644
diff --git a/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/FontShapesAreRenderedCorrectly_LargeText.png b/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/FontShapesAreRenderedCorrectly_LargeText.png
index 6e20bb65..95dbd73f 100644
--- a/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/FontShapesAreRenderedCorrectly_LargeText.png
+++ b/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/FontShapesAreRenderedCorrectly_LargeText.png
@@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
-oid sha256:066a3db32a9b5372284a194f62cb4601b11e215852871e57293c4aebb2dbebae
-size 127153
+oid sha256:38aa0fcfeef2fe740cca79f2e50059d6e67035aef0eaf0fcfa66ce8a6dc7b46c
+size 138183
diff --git a/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/FontShapesAreRenderedCorrectly_Solid1100x200_(255,255,255,255)_OpenSans-Regular.ttf-50-Sphi-(150,50).png b/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/FontShapesAreRenderedCorrectly_Solid1100x200_(255,255,255,255)_OpenSans-Regular.ttf-50-Sphi-(150,50).png
index a3ac8305..92dacbf1 100644
--- a/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/FontShapesAreRenderedCorrectly_Solid1100x200_(255,255,255,255)_OpenSans-Regular.ttf-50-Sphi-(150,50).png
+++ b/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/FontShapesAreRenderedCorrectly_Solid1100x200_(255,255,255,255)_OpenSans-Regular.ttf-50-Sphi-(150,50).png
@@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
-oid sha256:692311790af15fdd36b7f9e7b666ee7b4748ed1474aef27ab4ccee784270457f
-size 10994
+oid sha256:db39c17dfa126eecac3cf61732c9d4128bc7df91255ef8e61cdc22d7087ecdba
+size 10788
diff --git a/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/FontShapesAreRenderedCorrectly_Solid200x150_(255,255,255,255)_SixLaborsSampleAB.woff-50-ABAB-(0,0).png b/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/FontShapesAreRenderedCorrectly_Solid200x150_(255,255,255,255)_SixLaborsSampleAB.woff-50-ABAB-(0,0).png
index 6b1a4acd..b4299028 100644
--- a/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/FontShapesAreRenderedCorrectly_Solid200x150_(255,255,255,255)_SixLaborsSampleAB.woff-50-ABAB-(0,0).png
+++ b/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/FontShapesAreRenderedCorrectly_Solid200x150_(255,255,255,255)_SixLaborsSampleAB.woff-50-ABAB-(0,0).png
@@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
-oid sha256:bd492d0fc04d091802534f1d0dae491328aed1f04bed0164b6de8aec2864929d
-size 693
+oid sha256:2b37304847c1dcc02f6879cfd72b7f8c23baf4cb05a201b05daa7f5ca93cbb02
+size 593
diff --git a/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/FontShapesAreRenderedCorrectly_Solid20x50_(255,255,255,255)_OpenSans-Regular.ttf-50-i-(0,0).png b/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/FontShapesAreRenderedCorrectly_Solid20x50_(255,255,255,255)_OpenSans-Regular.ttf-50-i-(0,0).png
index 1684fb6d..b47764d1 100644
--- a/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/FontShapesAreRenderedCorrectly_Solid20x50_(255,255,255,255)_OpenSans-Regular.ttf-50-i-(0,0).png
+++ b/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/FontShapesAreRenderedCorrectly_Solid20x50_(255,255,255,255)_OpenSans-Regular.ttf-50-i-(0,0).png
@@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
-oid sha256:518129c83a3f4bca1ae4382b3d88a5f5273c7a2edc47d1f888ccca086763e328
+oid sha256:d2565b1fd7915e53acbcb9a5ae61288ed37e6ee5cb144f809deadab51681a7f3
size 147
diff --git a/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/FontShapesAreRenderedCorrectly_Solid400x45_(255,255,255,255)_OpenSans-Regular.ttf-20-Sphi-(0,0).png b/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/FontShapesAreRenderedCorrectly_Solid400x45_(255,255,255,255)_OpenSans-Regular.ttf-20-Sphi-(0,0).png
index 33b3da1a..f30353fd 100644
--- a/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/FontShapesAreRenderedCorrectly_Solid400x45_(255,255,255,255)_OpenSans-Regular.ttf-20-Sphi-(0,0).png
+++ b/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/FontShapesAreRenderedCorrectly_Solid400x45_(255,255,255,255)_OpenSans-Regular.ttf-20-Sphi-(0,0).png
@@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
-oid sha256:569b9952524bd89d1afb34938c36f5e6e25291fae41ef61409623dfcf23ea3f4
-size 3484
+oid sha256:019545a6190f031bc6428fcd905942fd896a1edf9ab6b57fb3e8a1df4a876734
+size 3491
diff --git a/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/FontShapesAreRenderedCorrectly_Solid900x150_(255,255,255,255)_OpenSans-Regular.ttf-50-Sphi-(0,0).png b/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/FontShapesAreRenderedCorrectly_Solid900x150_(255,255,255,255)_OpenSans-Regular.ttf-50-Sphi-(0,0).png
index ecd8c30d..8e2d12a1 100644
--- a/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/FontShapesAreRenderedCorrectly_Solid900x150_(255,255,255,255)_OpenSans-Regular.ttf-50-Sphi-(0,0).png
+++ b/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/FontShapesAreRenderedCorrectly_Solid900x150_(255,255,255,255)_OpenSans-Regular.ttf-50-Sphi-(0,0).png
@@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
-oid sha256:11d22809976a0a1ecb9a963568786f9051964cd6c8a050a418792f85964d12b4
-size 10453
+oid sha256:67a5e6e49bd10f5cda139398c7edfef87c424e5de6cd7f82dc5d839d21e6fd98
+size 10392
diff --git a/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/FontShapesAreRenderedCorrectly_WithLineSpacing_linespacing_1.5_linecount_3_wrap_False.png b/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/FontShapesAreRenderedCorrectly_WithLineSpacing_linespacing_1.5_linecount_3_wrap_False.png
index 929f48f2..7b226bd2 100644
--- a/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/FontShapesAreRenderedCorrectly_WithLineSpacing_linespacing_1.5_linecount_3_wrap_False.png
+++ b/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/FontShapesAreRenderedCorrectly_WithLineSpacing_linespacing_1.5_linecount_3_wrap_False.png
@@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
-oid sha256:445f392131fe5291b064df3bbfa9f7bfb9b5200a974ed22ddcd5c0089cfe6e56
-size 3081
+oid sha256:b803323b252b042e0182a80e231227326c6e51b8c1f765d6f0f6109c09233a10
+size 3182
diff --git a/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/FontShapesAreRenderedCorrectly_WithLineSpacing_linespacing_1.5_linecount_3_wrap_True.png b/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/FontShapesAreRenderedCorrectly_WithLineSpacing_linespacing_1.5_linecount_3_wrap_True.png
index b37470ca..5c428974 100644
--- a/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/FontShapesAreRenderedCorrectly_WithLineSpacing_linespacing_1.5_linecount_3_wrap_True.png
+++ b/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/FontShapesAreRenderedCorrectly_WithLineSpacing_linespacing_1.5_linecount_3_wrap_True.png
@@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
-oid sha256:faf8e480bf89044ca62b3cea7d6f1aa59ff3a4280474c3cd64b364e859b7f0b6
-size 29314
+oid sha256:71286299f346f1b78fb0ac5c3ba7c9abb3aeeca654a9b363cc78d2584e0aeeb6
+size 29995
diff --git a/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/FontShapesAreRenderedCorrectly_WithLineSpacing_linespacing_1_linecount_5_wrap_False.png b/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/FontShapesAreRenderedCorrectly_WithLineSpacing_linespacing_1_linecount_5_wrap_False.png
index 2b1e2383..06da76cb 100644
--- a/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/FontShapesAreRenderedCorrectly_WithLineSpacing_linespacing_1_linecount_5_wrap_False.png
+++ b/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/FontShapesAreRenderedCorrectly_WithLineSpacing_linespacing_1_linecount_5_wrap_False.png
@@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
-oid sha256:5f4c9a0c5bbb6a8bd12e3bc93d1dee8784a8aab90a68b0feb6343a3c4be61735
-size 3084
+oid sha256:fa761174020ccd4174d91b0f50fde3d897b7d0ff2862c973a70d2e8ddcdca692
+size 3152
diff --git a/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/FontShapesAreRenderedCorrectly_WithLineSpacing_linespacing_1_linecount_5_wrap_True.png b/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/FontShapesAreRenderedCorrectly_WithLineSpacing_linespacing_1_linecount_5_wrap_True.png
index 50d85373..ee55db49 100644
--- a/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/FontShapesAreRenderedCorrectly_WithLineSpacing_linespacing_1_linecount_5_wrap_True.png
+++ b/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/FontShapesAreRenderedCorrectly_WithLineSpacing_linespacing_1_linecount_5_wrap_True.png
@@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
-oid sha256:5f8f60e3207818583072027b59c077fc39c4ff58be722642c41be2faa7c444ec
-size 47263
+oid sha256:ec6fa76021ee47a04856cb433b7fc166683595d1f2264f22913e6cdc42f721b5
+size 47391
diff --git a/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/FontShapesAreRenderedCorrectly_WithLineSpacing_linespacing_2_linecount_2_wrap_False.png b/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/FontShapesAreRenderedCorrectly_WithLineSpacing_linespacing_2_linecount_2_wrap_False.png
index 428d8d9b..8cdbe39d 100644
--- a/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/FontShapesAreRenderedCorrectly_WithLineSpacing_linespacing_2_linecount_2_wrap_False.png
+++ b/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/FontShapesAreRenderedCorrectly_WithLineSpacing_linespacing_2_linecount_2_wrap_False.png
@@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
-oid sha256:5717716d86e3022c94f2dfd3607bde574bc415c02046096a699d64e980e670bb
-size 2830
+oid sha256:3d474430267918992c69c95609f550e3f1c98d444c7ec47c69f5b0f98753bf90
+size 2823
diff --git a/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/FontShapesAreRenderedCorrectly_WithLineSpacing_linespacing_2_linecount_2_wrap_True.png b/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/FontShapesAreRenderedCorrectly_WithLineSpacing_linespacing_2_linecount_2_wrap_True.png
index d4bb4a54..d4072535 100644
--- a/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/FontShapesAreRenderedCorrectly_WithLineSpacing_linespacing_2_linecount_2_wrap_True.png
+++ b/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/FontShapesAreRenderedCorrectly_WithLineSpacing_linespacing_2_linecount_2_wrap_True.png
@@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
-oid sha256:a0824ff9f8f3db421eb2557373f2ca32739a7686bd62e7aa9203932ec50c0d0e
-size 20272
+oid sha256:59f23c0f18873138c7444ccf63b192a7fb6be855ed13f3a161d5313d220593a8
+size 20872
diff --git a/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/FontShapesAreRenderedCorrectly_WithRotationApplied_Solid1100x1100_(255,255,255,255)_F(OpenSans-Regular.ttf)-S(50)-A(45)-Sphi-(550,550).png b/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/FontShapesAreRenderedCorrectly_WithRotationApplied_Solid1100x1100_(255,255,255,255)_F(OpenSans-Regular.ttf)-S(50)-A(45)-Sphi-(550,550).png
index 83bfb512..013aae6a 100644
--- a/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/FontShapesAreRenderedCorrectly_WithRotationApplied_Solid1100x1100_(255,255,255,255)_F(OpenSans-Regular.ttf)-S(50)-A(45)-Sphi-(550,550).png
+++ b/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/FontShapesAreRenderedCorrectly_WithRotationApplied_Solid1100x1100_(255,255,255,255)_F(OpenSans-Regular.ttf)-S(50)-A(45)-Sphi-(550,550).png
@@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
-oid sha256:5209ac432c48e91ee049e4e288df60f29fbd1e9837ced9ea29e9d9764b6b1881
-size 13694
+oid sha256:ea3f04115c29cdb1308d02930ef45909cebed1dd928c698cf4567c31df58e1a8
+size 15648
diff --git a/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/FontShapesAreRenderedCorrectly_WithRotationApplied_Solid200x200_(255,255,255,255)_F(SixLaborsSampleAB.woff)-S(50)-A(45)-ABAB-(100,100).png b/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/FontShapesAreRenderedCorrectly_WithRotationApplied_Solid200x200_(255,255,255,255)_F(SixLaborsSampleAB.woff)-S(50)-A(45)-ABAB-(100,100).png
index e9054f7e..c1f5f7ac 100644
--- a/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/FontShapesAreRenderedCorrectly_WithRotationApplied_Solid200x200_(255,255,255,255)_F(SixLaborsSampleAB.woff)-S(50)-A(45)-ABAB-(100,100).png
+++ b/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/FontShapesAreRenderedCorrectly_WithRotationApplied_Solid200x200_(255,255,255,255)_F(SixLaborsSampleAB.woff)-S(50)-A(45)-ABAB-(100,100).png
@@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
-oid sha256:218381b5777a1ea57a1288de407ee0bebda6c0352d47edb0218e567f724da9c1
-size 1091
+oid sha256:57e8b5dd16c4b1c0d0caa25f202040be582d34fedc3fa53a7c3e39501c138baf
+size 1089
diff --git a/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/FontShapesAreRenderedCorrectly_WithRotationApplied_Solid400x400_(255,255,255,255)_F(OpenSans-Regular.ttf)-S(20)-A(45)-Sphi-(200,200).png b/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/FontShapesAreRenderedCorrectly_WithRotationApplied_Solid400x400_(255,255,255,255)_F(OpenSans-Regular.ttf)-S(20)-A(45)-Sphi-(200,200).png
index b302acfc..b1d916ef 100644
--- a/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/FontShapesAreRenderedCorrectly_WithRotationApplied_Solid400x400_(255,255,255,255)_F(OpenSans-Regular.ttf)-S(20)-A(45)-Sphi-(200,200).png
+++ b/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/FontShapesAreRenderedCorrectly_WithRotationApplied_Solid400x400_(255,255,255,255)_F(OpenSans-Regular.ttf)-S(20)-A(45)-Sphi-(200,200).png
@@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
-oid sha256:57ee76530a6a5492fabb99f0f38cd35c7ed229b9bab59e1c6edc7461088454e8
-size 5037
+oid sha256:95b2cc30272bbe8cc61733ab7f655dbdc80cc3dab0352cf5e52eedd0f7818378
+size 5197
diff --git a/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/FontShapesAreRenderedCorrectly_WithRotationApplied_Solid50x50_(255,255,255,255)_F(OpenSans-Regular.ttf)-S(50)-A(45)-i-(25,25).png b/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/FontShapesAreRenderedCorrectly_WithRotationApplied_Solid50x50_(255,255,255,255)_F(OpenSans-Regular.ttf)-S(50)-A(45)-i-(25,25).png
index 96c8b92e..9470d142 100644
--- a/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/FontShapesAreRenderedCorrectly_WithRotationApplied_Solid50x50_(255,255,255,255)_F(OpenSans-Regular.ttf)-S(50)-A(45)-i-(25,25).png
+++ b/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/FontShapesAreRenderedCorrectly_WithRotationApplied_Solid50x50_(255,255,255,255)_F(OpenSans-Regular.ttf)-S(50)-A(45)-i-(25,25).png
@@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
-oid sha256:cc5d53e3f852223cb85380522dea9ed4443d7d3dc7e660cf4055b4d978464e33
-size 229
+oid sha256:6e16b79d298f9f6793db2dd2cbbee70ecdf7d5c9b65f2e8b58f52c24eca14093
+size 228
diff --git a/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/FontShapesAreRenderedCorrectly_WithSkewApplied_Solid1100x1100_(255,255,255,255)_F(OpenSans-Regular.ttf)-S(50)-A(0,10)-Sphi-(550,550).png b/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/FontShapesAreRenderedCorrectly_WithSkewApplied_Solid1100x1100_(255,255,255,255)_F(OpenSans-Regular.ttf)-S(50)-A(0,10)-Sphi-(550,550).png
index 171669a8..1245e69d 100644
--- a/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/FontShapesAreRenderedCorrectly_WithSkewApplied_Solid1100x1100_(255,255,255,255)_F(OpenSans-Regular.ttf)-S(50)-A(0,10)-Sphi-(550,550).png
+++ b/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/FontShapesAreRenderedCorrectly_WithSkewApplied_Solid1100x1100_(255,255,255,255)_F(OpenSans-Regular.ttf)-S(50)-A(0,10)-Sphi-(550,550).png
@@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
-oid sha256:482fadf09985e54978cfddcc811059efe160be0e24f4fffc5efa3136999f0049
-size 12830
+oid sha256:b693403300143c1ef88b803ba3aa862c65f888994c9cf63f6a23f83db8d2c40c
+size 14367
diff --git a/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/FontShapesAreRenderedCorrectly_WithSkewApplied_Solid200x200_(255,255,255,255)_F(SixLaborsSampleAB.woff)-S(50)-A(10,0)-ABAB-(100,100).png b/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/FontShapesAreRenderedCorrectly_WithSkewApplied_Solid200x200_(255,255,255,255)_F(SixLaborsSampleAB.woff)-S(50)-A(10,0)-ABAB-(100,100).png
index 9c817483..d1284829 100644
--- a/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/FontShapesAreRenderedCorrectly_WithSkewApplied_Solid200x200_(255,255,255,255)_F(SixLaborsSampleAB.woff)-S(50)-A(10,0)-ABAB-(100,100).png
+++ b/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/FontShapesAreRenderedCorrectly_WithSkewApplied_Solid200x200_(255,255,255,255)_F(SixLaborsSampleAB.woff)-S(50)-A(10,0)-ABAB-(100,100).png
@@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
-oid sha256:0e8cb85e04fddb4f66f7a4a2f3f91da554c081c870822d20f12bd59fcb865206
-size 997
+oid sha256:0bd63532c6a011dc18ba39333c3c6e2346d8db7c87b2e15d810ac4fcacb5a721
+size 975
diff --git a/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/FontShapesAreRenderedCorrectly_WithSkewApplied_Solid400x400_(255,255,255,255)_F(OpenSans-Regular.ttf)-S(20)-A(0,-10)-Sphi-(200,200).png b/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/FontShapesAreRenderedCorrectly_WithSkewApplied_Solid400x400_(255,255,255,255)_F(OpenSans-Regular.ttf)-S(20)-A(0,-10)-Sphi-(200,200).png
index 7c408770..03e333f0 100644
--- a/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/FontShapesAreRenderedCorrectly_WithSkewApplied_Solid400x400_(255,255,255,255)_F(OpenSans-Regular.ttf)-S(20)-A(0,-10)-Sphi-(200,200).png
+++ b/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/FontShapesAreRenderedCorrectly_WithSkewApplied_Solid400x400_(255,255,255,255)_F(OpenSans-Regular.ttf)-S(20)-A(0,-10)-Sphi-(200,200).png
@@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
-oid sha256:77daff981f04f0a4de7a72e6bfc42901765dcf050f84bfe5a2578ef0956e8c5b
-size 4830
+oid sha256:0299cdec0d4dee1ceeb4f95f1bf7c62693ef5ee3a08610f206391a9223aa8c76
+size 4940
diff --git a/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/FontShapesAreRenderedCorrectly_WithSkewApplied_Solid50x50_(255,255,255,255)_F(OpenSans-Regular.ttf)-S(50)-A(-12,0)-i-(25,25).png b/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/FontShapesAreRenderedCorrectly_WithSkewApplied_Solid50x50_(255,255,255,255)_F(OpenSans-Regular.ttf)-S(50)-A(-12,0)-i-(25,25).png
index 3e626a21..2062c3b6 100644
--- a/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/FontShapesAreRenderedCorrectly_WithSkewApplied_Solid50x50_(255,255,255,255)_F(OpenSans-Regular.ttf)-S(50)-A(-12,0)-i-(25,25).png
+++ b/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/FontShapesAreRenderedCorrectly_WithSkewApplied_Solid50x50_(255,255,255,255)_F(OpenSans-Regular.ttf)-S(50)-A(-12,0)-i-(25,25).png
@@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
-oid sha256:f792e46d9f8f812edb4d0c746c0b48f9fcd608df7d38b6d04f878ac432aef856
-size 301
+oid sha256:22c190e904df39274d6de5f8db620326df8b0c5e4d6256611d352c163dabef4a
+size 300
diff --git a/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/LargeGeoJson_Mississippi_LinesScaled_Scale(10).png b/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/LargeGeoJson_Mississippi_LinesScaled_Scale(10).png
index 17f1d368..e7f8291c 100644
--- a/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/LargeGeoJson_Mississippi_LinesScaled_Scale(10).png
+++ b/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/LargeGeoJson_Mississippi_LinesScaled_Scale(10).png
@@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
-oid sha256:404969ab16837a682ca55e98939bed6de72e85c2499f0214c0081467db71575e
-size 80943
+oid sha256:e49d651428d25b000bb196e437d15021a9b842b7f02724abe4d3321ae609f8c9
+size 78954
diff --git a/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/LargeGeoJson_Mississippi_LinesScaled_Scale(3).png b/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/LargeGeoJson_Mississippi_LinesScaled_Scale(3).png
index 04d8d1ec..44970aa9 100644
--- a/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/LargeGeoJson_Mississippi_LinesScaled_Scale(3).png
+++ b/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/LargeGeoJson_Mississippi_LinesScaled_Scale(3).png
@@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
-oid sha256:880190f21912c51e88b997ec04e0820fc048268df6c2333399d521607310b775
-size 18194
+oid sha256:73142d7025b305921ea52a846debfb922926971e5f2afc530cfd42a683aedb4a
+size 17944
diff --git a/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/LargeGeoJson_Mississippi_LinesScaled_Scale(5).png b/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/LargeGeoJson_Mississippi_LinesScaled_Scale(5).png
index 74803956..3dd1ea17 100644
--- a/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/LargeGeoJson_Mississippi_LinesScaled_Scale(5).png
+++ b/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/LargeGeoJson_Mississippi_LinesScaled_Scale(5).png
@@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
-oid sha256:5d063f016936b11440f7b2d1db4a5bb66b0f38dbb37115fdf5827a539fe87787
-size 34730
+oid sha256:d70f86fcf66722bb48086174c789275906a389f2349fe4f88c124702a25dc8b0
+size 33999
diff --git a/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/LargeGeoJson_Mississippi_Lines_PixelOffset(0).png b/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/LargeGeoJson_Mississippi_Lines_PixelOffset(0).png
index df716f82..5739b6ee 100644
--- a/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/LargeGeoJson_Mississippi_Lines_PixelOffset(0).png
+++ b/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/LargeGeoJson_Mississippi_Lines_PixelOffset(0).png
@@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
-oid sha256:cadc4b69bfcd9374f441611e9c7164d5d871b254ad5f9b3ad10ba2b3b88d8a5f
-size 4473
+oid sha256:b26d8c98a2cf7ae07b6dbbb32a7c49e469ad9d28942281a8d692228f0b8c4357
+size 4637
diff --git a/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/LargeGeoJson_Mississippi_Lines_PixelOffset(5500).png b/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/LargeGeoJson_Mississippi_Lines_PixelOffset(5500).png
index 010cfadc..98a7d8ad 100644
--- a/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/LargeGeoJson_Mississippi_Lines_PixelOffset(5500).png
+++ b/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/LargeGeoJson_Mississippi_Lines_PixelOffset(5500).png
@@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
-oid sha256:466cc101cd71a1e8ea13ab405012773d8e507f96ef0ac9b1bf9d3119d087d073
-size 41030
+oid sha256:1bab48a84c5d959935a0562abeeac4d125b0d12ad7f1a3d91600a10ac682941b
+size 41277
diff --git a/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/SvgPathRenderSvgPath_Rgba32_Blank100x100_type-arrows.png b/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/SvgPathRenderSvgPath_Rgba32_Blank100x100_type-arrows.png
index 8991c564..2097252d 100644
--- a/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/SvgPathRenderSvgPath_Rgba32_Blank100x100_type-arrows.png
+++ b/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/SvgPathRenderSvgPath_Rgba32_Blank100x100_type-arrows.png
@@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
-oid sha256:bcb2bd1764b18c6572a11e4712690321e929cd5c8407e907da93c75604e2e45e
-size 424
+oid sha256:413fcf57c48e2df176245c326825cd166d722f7be14e312534b8eae4e525f58e
+size 415
diff --git a/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/SvgPathRenderSvgPath_Rgba32_Blank110x50_type-wave.png b/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/SvgPathRenderSvgPath_Rgba32_Blank110x50_type-wave.png
index f87631f7..5632ae65 100644
--- a/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/SvgPathRenderSvgPath_Rgba32_Blank110x50_type-wave.png
+++ b/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/SvgPathRenderSvgPath_Rgba32_Blank110x50_type-wave.png
@@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
-oid sha256:42cf6e22abc4704a88820c9841f5be8b6d606c4b509ece4427545922b8b66c0b
-size 612
+oid sha256:78b8541a7997330de4abc12d04bc45d3e71d7cc1b1a802cf9012c01917944951
+size 533
diff --git a/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/SvgPathRenderSvgPath_Rgba32_Blank110x70_type-zag.png b/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/SvgPathRenderSvgPath_Rgba32_Blank110x70_type-zag.png
index 6fa81d28..614c9d88 100644
--- a/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/SvgPathRenderSvgPath_Rgba32_Blank110x70_type-zag.png
+++ b/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/SvgPathRenderSvgPath_Rgba32_Blank110x70_type-zag.png
@@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
-oid sha256:c4fa78b477da68330eca8148e9259660c99f0568c0543e3e050d6cb696a3a891
-size 536
+oid sha256:168f45a774d6f6c7ebb26a91c3d822920887c871a625de64d0a141c45cb64e3d
+size 429
diff --git a/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/SvgPathRenderSvgPath_Rgba32_Blank500x400_type-bumpy.png b/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/SvgPathRenderSvgPath_Rgba32_Blank500x400_type-bumpy.png
index 60f59e23..0dca8bf8 100644
--- a/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/SvgPathRenderSvgPath_Rgba32_Blank500x400_type-bumpy.png
+++ b/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/SvgPathRenderSvgPath_Rgba32_Blank500x400_type-bumpy.png
@@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
-oid sha256:0ceff800d714be52e0ed80ecf99a0e5111d723c3b947f85073f20a35f5a3b93f
-size 4832
+oid sha256:1fcfbac9140365a15fedfa27f03bded7bfdf2048f90d9a905fb80ab7233f4a0d
+size 4783
diff --git a/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/SvgPathRenderSvgPath_Rgba32_Blank500x400_type-chopped_oval.png b/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/SvgPathRenderSvgPath_Rgba32_Blank500x400_type-chopped_oval.png
index 0f80e4d2..fbc52ca5 100644
--- a/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/SvgPathRenderSvgPath_Rgba32_Blank500x400_type-chopped_oval.png
+++ b/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/SvgPathRenderSvgPath_Rgba32_Blank500x400_type-chopped_oval.png
@@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
-oid sha256:09c7976b47a421005aba5440b8a1c0de9f3c086dae25fc28398af282d4ea4a07
-size 2819
+oid sha256:bc47d2b0c2c777ddf9e86e05f80195212486ae1046a6eb316aaf87ec27a50f46
+size 2740
diff --git a/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/SvgPathRenderSvgPath_Rgba32_Blank500x400_type-pie_big.png b/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/SvgPathRenderSvgPath_Rgba32_Blank500x400_type-pie_big.png
index fa73bacd..7918fb4e 100644
--- a/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/SvgPathRenderSvgPath_Rgba32_Blank500x400_type-pie_big.png
+++ b/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/SvgPathRenderSvgPath_Rgba32_Blank500x400_type-pie_big.png
@@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
-oid sha256:577da1878a30515d65e071b7d595b6bb0af3818e564d034ac55b0cbb4ada7656
-size 2523
+oid sha256:f0cf90a562acfc1d4eb725de87cbdb21cccb28f499f694a20884e938342c8a23
+size 2323
diff --git a/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/SvgPathRenderSvgPath_Rgba32_Blank500x400_type-pie_small.png b/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/SvgPathRenderSvgPath_Rgba32_Blank500x400_type-pie_small.png
index 556cadba..a7b5d817 100644
--- a/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/SvgPathRenderSvgPath_Rgba32_Blank500x400_type-pie_small.png
+++ b/tests/Images/ReferenceOutput/Drawing/ProcessWithDrawingCanvasTests/SvgPathRenderSvgPath_Rgba32_Blank500x400_type-pie_small.png
@@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
-oid sha256:1097180d2ccdcb816268f9ea231e7d445a57e60673eb3c156890370808b24af1
-size 4864
+oid sha256:bdd425dda75dc6cb77325a2e4b78452b78a0551298a6d93833ea7adbd19cc5f4
+size 4545
diff --git a/tests/Images/ReferenceOutput/Drawing/WebGPUDrawingBackendTests/BlurredBoxShadow_DifferenceClip_MatchesDefaultOutput_Default.png b/tests/Images/ReferenceOutput/Drawing/WebGPUDrawingBackendTests/BlurredBoxShadow_DifferenceClip_MatchesDefaultOutput_Default.png
index c917703a..ae3b911e 100644
--- a/tests/Images/ReferenceOutput/Drawing/WebGPUDrawingBackendTests/BlurredBoxShadow_DifferenceClip_MatchesDefaultOutput_Default.png
+++ b/tests/Images/ReferenceOutput/Drawing/WebGPUDrawingBackendTests/BlurredBoxShadow_DifferenceClip_MatchesDefaultOutput_Default.png
@@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
-oid sha256:369fd4bec260ebe8bea2ede6549fe5a8b66aa26a41167299eb82d67f34fa4eab
-size 1012
+oid sha256:b28a061465e46add658df5278918c8ca2b7b4c503b5548d997d84506088199ea
+size 982
diff --git a/tests/Images/ReferenceOutput/Drawing/WebGPUDrawingBackendTests/BlurredBoxShadow_DifferenceClip_MatchesDefaultOutput_WebGPU_NativeSurface.png b/tests/Images/ReferenceOutput/Drawing/WebGPUDrawingBackendTests/BlurredBoxShadow_DifferenceClip_MatchesDefaultOutput_WebGPU_NativeSurface.png
index 6f2e3e41..bca6368c 100644
--- a/tests/Images/ReferenceOutput/Drawing/WebGPUDrawingBackendTests/BlurredBoxShadow_DifferenceClip_MatchesDefaultOutput_WebGPU_NativeSurface.png
+++ b/tests/Images/ReferenceOutput/Drawing/WebGPUDrawingBackendTests/BlurredBoxShadow_DifferenceClip_MatchesDefaultOutput_WebGPU_NativeSurface.png
@@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
-oid sha256:7af4bcbe1ed53a037819786b509245d7859b82c1e44fa8b3538cd2256201e676
-size 982
+oid sha256:60346afdaff345ffef7c1547dc15a6129904a270be963cfcb48b44ec145f0f18
+size 978
diff --git a/tests/Images/ReferenceOutput/Drawing/WebGPUDrawingBackendTests/CanApplyPerspectiveTransform_StarWarsCrawl_Default.png b/tests/Images/ReferenceOutput/Drawing/WebGPUDrawingBackendTests/CanApplyPerspectiveTransform_StarWarsCrawl_Default.png
index 196caecb..b2c89f25 100644
--- a/tests/Images/ReferenceOutput/Drawing/WebGPUDrawingBackendTests/CanApplyPerspectiveTransform_StarWarsCrawl_Default.png
+++ b/tests/Images/ReferenceOutput/Drawing/WebGPUDrawingBackendTests/CanApplyPerspectiveTransform_StarWarsCrawl_Default.png
@@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
-oid sha256:1363b9f154e82c1fe09941c687dc3fe6e66dbe46ed70142be8fe955286caddc4
-size 31651
+oid sha256:289f8dcd87fcfcad486d63b896c80f9393e4d3fa08f7fb7a17b767cd8c5a50d2
+size 31806
diff --git a/tests/Images/ReferenceOutput/Drawing/WebGPUDrawingBackendTests/DrawPath_PointStroke_LineCap_MatchesDefaultOutput_Round_Default.png b/tests/Images/ReferenceOutput/Drawing/WebGPUDrawingBackendTests/DrawPath_PointStroke_LineCap_MatchesDefaultOutput_Round_Default.png
index 6fb9c791..024597cf 100644
--- a/tests/Images/ReferenceOutput/Drawing/WebGPUDrawingBackendTests/DrawPath_PointStroke_LineCap_MatchesDefaultOutput_Round_Default.png
+++ b/tests/Images/ReferenceOutput/Drawing/WebGPUDrawingBackendTests/DrawPath_PointStroke_LineCap_MatchesDefaultOutput_Round_Default.png
@@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
-oid sha256:9c01b5077acca5cb55e6eaf0e9c999699ba3d3f5ca106a4df324fb6dba8bd184
-size 581
+oid sha256:e66b8c19404367f773df2f385ebdaf782582a8ee818e0f2a8978e6d70a6421b0
+size 467
diff --git a/tests/Images/ReferenceOutput/Drawing/WebGPUDrawingBackendTests/DrawPath_Stroke_LineCap_MatchesDefaultOutput_Butt_Default.png b/tests/Images/ReferenceOutput/Drawing/WebGPUDrawingBackendTests/DrawPath_Stroke_LineCap_MatchesDefaultOutput_Butt_Default.png
index cca4f8ae..cb6dc19c 100644
--- a/tests/Images/ReferenceOutput/Drawing/WebGPUDrawingBackendTests/DrawPath_Stroke_LineCap_MatchesDefaultOutput_Butt_Default.png
+++ b/tests/Images/ReferenceOutput/Drawing/WebGPUDrawingBackendTests/DrawPath_Stroke_LineCap_MatchesDefaultOutput_Butt_Default.png
@@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
-oid sha256:d2a291e0e895d609a2d56ed301d8416f313119aa8e6ecccc88257b23e0107a57
-size 1790
+oid sha256:2fe035aea44bc93fa7e9d43b2cdf156751b468faaeed19029645072caa7f5aed
+size 1630
diff --git a/tests/Images/ReferenceOutput/Drawing/WebGPUDrawingBackendTests/DrawPath_Stroke_LineCap_MatchesDefaultOutput_Butt_WebGPU_NativeSurface.png b/tests/Images/ReferenceOutput/Drawing/WebGPUDrawingBackendTests/DrawPath_Stroke_LineCap_MatchesDefaultOutput_Butt_WebGPU_NativeSurface.png
index 6f7c92be..b2f2a493 100644
--- a/tests/Images/ReferenceOutput/Drawing/WebGPUDrawingBackendTests/DrawPath_Stroke_LineCap_MatchesDefaultOutput_Butt_WebGPU_NativeSurface.png
+++ b/tests/Images/ReferenceOutput/Drawing/WebGPUDrawingBackendTests/DrawPath_Stroke_LineCap_MatchesDefaultOutput_Butt_WebGPU_NativeSurface.png
@@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
-oid sha256:7e1a210eadae5af13b8644919acf5068516c125c1eeda9a51c5bdf617f17ef7b
-size 1848
+oid sha256:b6922762618ca17a7335c5bdf725adeffbbc9781df1ad5f36ab313daa612053f
+size 1636
diff --git a/tests/Images/ReferenceOutput/Drawing/WebGPUDrawingBackendTests/DrawPath_Stroke_LineCap_MatchesDefaultOutput_Round_Default.png b/tests/Images/ReferenceOutput/Drawing/WebGPUDrawingBackendTests/DrawPath_Stroke_LineCap_MatchesDefaultOutput_Round_Default.png
index ced026b2..027326e8 100644
--- a/tests/Images/ReferenceOutput/Drawing/WebGPUDrawingBackendTests/DrawPath_Stroke_LineCap_MatchesDefaultOutput_Round_Default.png
+++ b/tests/Images/ReferenceOutput/Drawing/WebGPUDrawingBackendTests/DrawPath_Stroke_LineCap_MatchesDefaultOutput_Round_Default.png
@@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
-oid sha256:b94c66753bdcc56c6f845c7a85c79020d8232cbe06de3d94dc75d37ba284dc3d
-size 2011
+oid sha256:d9c6471b0669b15cc48584360bcffa69b081f7254299f0485e0fb65e1412b4d1
+size 1677
diff --git a/tests/Images/ReferenceOutput/Drawing/WebGPUDrawingBackendTests/DrawPath_Stroke_LineCap_MatchesDefaultOutput_Round_WebGPU_NativeSurface.png b/tests/Images/ReferenceOutput/Drawing/WebGPUDrawingBackendTests/DrawPath_Stroke_LineCap_MatchesDefaultOutput_Round_WebGPU_NativeSurface.png
index 17d0d574..0017e563 100644
--- a/tests/Images/ReferenceOutput/Drawing/WebGPUDrawingBackendTests/DrawPath_Stroke_LineCap_MatchesDefaultOutput_Round_WebGPU_NativeSurface.png
+++ b/tests/Images/ReferenceOutput/Drawing/WebGPUDrawingBackendTests/DrawPath_Stroke_LineCap_MatchesDefaultOutput_Round_WebGPU_NativeSurface.png
@@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
-oid sha256:616cfb2ed6114208f2cc72d8b6ccd41109da21dc1a6db0e365c758e1d9f11e44
-size 2183
+oid sha256:c114a60388ad7e37c761ffbbc99c1cf7eb5c8937dac7066a114dd274109e148e
+size 1697
diff --git a/tests/Images/ReferenceOutput/Drawing/WebGPUDrawingBackendTests/DrawPath_Stroke_LineCap_MatchesDefaultOutput_Square_Default.png b/tests/Images/ReferenceOutput/Drawing/WebGPUDrawingBackendTests/DrawPath_Stroke_LineCap_MatchesDefaultOutput_Square_Default.png
index e1916d1c..1190d92a 100644
--- a/tests/Images/ReferenceOutput/Drawing/WebGPUDrawingBackendTests/DrawPath_Stroke_LineCap_MatchesDefaultOutput_Square_Default.png
+++ b/tests/Images/ReferenceOutput/Drawing/WebGPUDrawingBackendTests/DrawPath_Stroke_LineCap_MatchesDefaultOutput_Square_Default.png
@@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
-oid sha256:4f789cae2340ee66ad407b98b85ca654e9611dc19ec6b19fd69524b5395af019
-size 1863
+oid sha256:c5511d3fc923728b17a9e28dff606ac583019635648a31a2e0b670257b8a0148
+size 1694
diff --git a/tests/Images/ReferenceOutput/Drawing/WebGPUDrawingBackendTests/DrawPath_Stroke_LineCap_MatchesDefaultOutput_Square_WebGPU_NativeSurface.png b/tests/Images/ReferenceOutput/Drawing/WebGPUDrawingBackendTests/DrawPath_Stroke_LineCap_MatchesDefaultOutput_Square_WebGPU_NativeSurface.png
index a8431d95..ef747856 100644
--- a/tests/Images/ReferenceOutput/Drawing/WebGPUDrawingBackendTests/DrawPath_Stroke_LineCap_MatchesDefaultOutput_Square_WebGPU_NativeSurface.png
+++ b/tests/Images/ReferenceOutput/Drawing/WebGPUDrawingBackendTests/DrawPath_Stroke_LineCap_MatchesDefaultOutput_Square_WebGPU_NativeSurface.png
@@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
-oid sha256:67b2bc7ffd475a721fcc2d8d4df83a3b79591e9d394dc73cb9e360d63a23b24e
-size 1922
+oid sha256:6432993c475f72ca5defcb239e61662aa4ac37dd9383c0a10cd528809df7fa8a
+size 1695
diff --git a/tests/Images/ReferenceOutput/Drawing/WebGPUDrawingBackendTests/DrawPath_Stroke_LineJoin_MatchesDefaultOutput_Bevel_Default.png b/tests/Images/ReferenceOutput/Drawing/WebGPUDrawingBackendTests/DrawPath_Stroke_LineJoin_MatchesDefaultOutput_Bevel_Default.png
index 10b28ef4..e2787c9b 100644
--- a/tests/Images/ReferenceOutput/Drawing/WebGPUDrawingBackendTests/DrawPath_Stroke_LineJoin_MatchesDefaultOutput_Bevel_Default.png
+++ b/tests/Images/ReferenceOutput/Drawing/WebGPUDrawingBackendTests/DrawPath_Stroke_LineJoin_MatchesDefaultOutput_Bevel_Default.png
@@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
-oid sha256:144553e4b34c08b72cb6136e1c793179471ebe3a4bd310dd0aab79d27f7cff50
-size 7529
+oid sha256:3f3b9ddbc648eb782b8369852ac14d34d3415453fb17da74d432e16fddd46375
+size 5972
diff --git a/tests/Images/ReferenceOutput/Drawing/WebGPUDrawingBackendTests/DrawPath_Stroke_LineJoin_MatchesDefaultOutput_Bevel_WebGPU_NativeSurface.png b/tests/Images/ReferenceOutput/Drawing/WebGPUDrawingBackendTests/DrawPath_Stroke_LineJoin_MatchesDefaultOutput_Bevel_WebGPU_NativeSurface.png
index fb91b635..06057c02 100644
--- a/tests/Images/ReferenceOutput/Drawing/WebGPUDrawingBackendTests/DrawPath_Stroke_LineJoin_MatchesDefaultOutput_Bevel_WebGPU_NativeSurface.png
+++ b/tests/Images/ReferenceOutput/Drawing/WebGPUDrawingBackendTests/DrawPath_Stroke_LineJoin_MatchesDefaultOutput_Bevel_WebGPU_NativeSurface.png
@@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
-oid sha256:39168b48f24c19427241c584fdfa86f283914e1532575dadc3db65248ec8a656
-size 6892
+oid sha256:2db1d334a749c20994026ee7f4e27acf8e06a5d3253db631de7f07ad2700f464
+size 5590
diff --git a/tests/Images/ReferenceOutput/Drawing/WebGPUDrawingBackendTests/DrawPath_Stroke_LineJoin_MatchesDefaultOutput_MiterRevert_Default.png b/tests/Images/ReferenceOutput/Drawing/WebGPUDrawingBackendTests/DrawPath_Stroke_LineJoin_MatchesDefaultOutput_MiterRevert_Default.png
index 6efc5ddf..17046722 100644
--- a/tests/Images/ReferenceOutput/Drawing/WebGPUDrawingBackendTests/DrawPath_Stroke_LineJoin_MatchesDefaultOutput_MiterRevert_Default.png
+++ b/tests/Images/ReferenceOutput/Drawing/WebGPUDrawingBackendTests/DrawPath_Stroke_LineJoin_MatchesDefaultOutput_MiterRevert_Default.png
@@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
-oid sha256:d46c19e3e59dc0df8c5dae7999e889fbca414cf1c71d80088f94eb8ccbd4cdb8
-size 7957
+oid sha256:ba03707792e2cd6173db07f826f19e6f0d784a8ebf710681cc8a614e8a38c262
+size 6308
diff --git a/tests/Images/ReferenceOutput/Drawing/WebGPUDrawingBackendTests/DrawPath_Stroke_LineJoin_MatchesDefaultOutput_MiterRevert_WebGPU_NativeSurface.png b/tests/Images/ReferenceOutput/Drawing/WebGPUDrawingBackendTests/DrawPath_Stroke_LineJoin_MatchesDefaultOutput_MiterRevert_WebGPU_NativeSurface.png
index 85039ae4..8651a232 100644
--- a/tests/Images/ReferenceOutput/Drawing/WebGPUDrawingBackendTests/DrawPath_Stroke_LineJoin_MatchesDefaultOutput_MiterRevert_WebGPU_NativeSurface.png
+++ b/tests/Images/ReferenceOutput/Drawing/WebGPUDrawingBackendTests/DrawPath_Stroke_LineJoin_MatchesDefaultOutput_MiterRevert_WebGPU_NativeSurface.png
@@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
-oid sha256:097da981e01ae4433b3665e437fbd00e992f3c9ac30c4f086db4ee6e9cfd943c
-size 7267
+oid sha256:f2980c5e964c4f292b82fd1017246fcf7a10697f67fc2106878560ce9cafcb1b
+size 5866
diff --git a/tests/Images/ReferenceOutput/Drawing/WebGPUDrawingBackendTests/DrawPath_Stroke_LineJoin_MatchesDefaultOutput_MiterRound_Default.png b/tests/Images/ReferenceOutput/Drawing/WebGPUDrawingBackendTests/DrawPath_Stroke_LineJoin_MatchesDefaultOutput_MiterRound_Default.png
index 6efc5ddf..17046722 100644
--- a/tests/Images/ReferenceOutput/Drawing/WebGPUDrawingBackendTests/DrawPath_Stroke_LineJoin_MatchesDefaultOutput_MiterRound_Default.png
+++ b/tests/Images/ReferenceOutput/Drawing/WebGPUDrawingBackendTests/DrawPath_Stroke_LineJoin_MatchesDefaultOutput_MiterRound_Default.png
@@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
-oid sha256:d46c19e3e59dc0df8c5dae7999e889fbca414cf1c71d80088f94eb8ccbd4cdb8
-size 7957
+oid sha256:ba03707792e2cd6173db07f826f19e6f0d784a8ebf710681cc8a614e8a38c262
+size 6308
diff --git a/tests/Images/ReferenceOutput/Drawing/WebGPUDrawingBackendTests/DrawPath_Stroke_LineJoin_MatchesDefaultOutput_MiterRound_WebGPU_NativeSurface.png b/tests/Images/ReferenceOutput/Drawing/WebGPUDrawingBackendTests/DrawPath_Stroke_LineJoin_MatchesDefaultOutput_MiterRound_WebGPU_NativeSurface.png
index 85039ae4..8651a232 100644
--- a/tests/Images/ReferenceOutput/Drawing/WebGPUDrawingBackendTests/DrawPath_Stroke_LineJoin_MatchesDefaultOutput_MiterRound_WebGPU_NativeSurface.png
+++ b/tests/Images/ReferenceOutput/Drawing/WebGPUDrawingBackendTests/DrawPath_Stroke_LineJoin_MatchesDefaultOutput_MiterRound_WebGPU_NativeSurface.png
@@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
-oid sha256:097da981e01ae4433b3665e437fbd00e992f3c9ac30c4f086db4ee6e9cfd943c
-size 7267
+oid sha256:f2980c5e964c4f292b82fd1017246fcf7a10697f67fc2106878560ce9cafcb1b
+size 5866
diff --git a/tests/Images/ReferenceOutput/Drawing/WebGPUDrawingBackendTests/DrawPath_Stroke_LineJoin_MatchesDefaultOutput_Miter_Default.png b/tests/Images/ReferenceOutput/Drawing/WebGPUDrawingBackendTests/DrawPath_Stroke_LineJoin_MatchesDefaultOutput_Miter_Default.png
index 6efc5ddf..17046722 100644
--- a/tests/Images/ReferenceOutput/Drawing/WebGPUDrawingBackendTests/DrawPath_Stroke_LineJoin_MatchesDefaultOutput_Miter_Default.png
+++ b/tests/Images/ReferenceOutput/Drawing/WebGPUDrawingBackendTests/DrawPath_Stroke_LineJoin_MatchesDefaultOutput_Miter_Default.png
@@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
-oid sha256:d46c19e3e59dc0df8c5dae7999e889fbca414cf1c71d80088f94eb8ccbd4cdb8
-size 7957
+oid sha256:ba03707792e2cd6173db07f826f19e6f0d784a8ebf710681cc8a614e8a38c262
+size 6308
diff --git a/tests/Images/ReferenceOutput/Drawing/WebGPUDrawingBackendTests/DrawPath_Stroke_LineJoin_MatchesDefaultOutput_Miter_WebGPU_NativeSurface.png b/tests/Images/ReferenceOutput/Drawing/WebGPUDrawingBackendTests/DrawPath_Stroke_LineJoin_MatchesDefaultOutput_Miter_WebGPU_NativeSurface.png
index 85039ae4..8651a232 100644
--- a/tests/Images/ReferenceOutput/Drawing/WebGPUDrawingBackendTests/DrawPath_Stroke_LineJoin_MatchesDefaultOutput_Miter_WebGPU_NativeSurface.png
+++ b/tests/Images/ReferenceOutput/Drawing/WebGPUDrawingBackendTests/DrawPath_Stroke_LineJoin_MatchesDefaultOutput_Miter_WebGPU_NativeSurface.png
@@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
-oid sha256:097da981e01ae4433b3665e437fbd00e992f3c9ac30c4f086db4ee6e9cfd943c
-size 7267
+oid sha256:f2980c5e964c4f292b82fd1017246fcf7a10697f67fc2106878560ce9cafcb1b
+size 5866
diff --git a/tests/Images/ReferenceOutput/Drawing/WebGPUDrawingBackendTests/DrawPath_Stroke_LineJoin_MatchesDefaultOutput_Round_Default.png b/tests/Images/ReferenceOutput/Drawing/WebGPUDrawingBackendTests/DrawPath_Stroke_LineJoin_MatchesDefaultOutput_Round_Default.png
index 7a67e330..4a8c7c4f 100644
--- a/tests/Images/ReferenceOutput/Drawing/WebGPUDrawingBackendTests/DrawPath_Stroke_LineJoin_MatchesDefaultOutput_Round_Default.png
+++ b/tests/Images/ReferenceOutput/Drawing/WebGPUDrawingBackendTests/DrawPath_Stroke_LineJoin_MatchesDefaultOutput_Round_Default.png
@@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
-oid sha256:c4853dc191cbedcb3a243d3d5631eec8986dfe780e70c7b70bb25e6d7aa64a0a
-size 7729
+oid sha256:0d7061356c48a1c1b23bc96a0f845891b66a55c401ea6391b9742b375d668968
+size 6120
diff --git a/tests/Images/ReferenceOutput/Drawing/WebGPUDrawingBackendTests/DrawPath_Stroke_LineJoin_MatchesDefaultOutput_Round_WebGPU_NativeSurface.png b/tests/Images/ReferenceOutput/Drawing/WebGPUDrawingBackendTests/DrawPath_Stroke_LineJoin_MatchesDefaultOutput_Round_WebGPU_NativeSurface.png
index ad257f2b..3a9b436a 100644
--- a/tests/Images/ReferenceOutput/Drawing/WebGPUDrawingBackendTests/DrawPath_Stroke_LineJoin_MatchesDefaultOutput_Round_WebGPU_NativeSurface.png
+++ b/tests/Images/ReferenceOutput/Drawing/WebGPUDrawingBackendTests/DrawPath_Stroke_LineJoin_MatchesDefaultOutput_Round_WebGPU_NativeSurface.png
@@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
-oid sha256:300d9ac7e51887d662e5e6d7e95c58b992af4f361837809d0e8385d500441998
-size 7059
+oid sha256:f29d5f61874a5807e517063c909de6f1ea373013d313aac66d828e103dfee091
+size 5761
diff --git a/tests/Images/ReferenceOutput/Drawing/WebGPUDrawingBackendTests/DrawPath_Stroke_MatchesDefaultOutput_Default.png b/tests/Images/ReferenceOutput/Drawing/WebGPUDrawingBackendTests/DrawPath_Stroke_MatchesDefaultOutput_Default.png
index 198949eb..3c52857a 100644
--- a/tests/Images/ReferenceOutput/Drawing/WebGPUDrawingBackendTests/DrawPath_Stroke_MatchesDefaultOutput_Default.png
+++ b/tests/Images/ReferenceOutput/Drawing/WebGPUDrawingBackendTests/DrawPath_Stroke_MatchesDefaultOutput_Default.png
@@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
-oid sha256:8f1f49fa671863807868b7a37b1274fa282222f9eb4af365a014396856e144a8
-size 3171
+oid sha256:4536281ff84d8fb84d2e3ac46510c784baa4d85d382d6120fd7093e8db2ae015
+size 2386
diff --git a/tests/Images/ReferenceOutput/Drawing/WebGPUDrawingBackendTests/DrawPath_Stroke_MatchesDefaultOutput_WebGPU_NativeSurface.png b/tests/Images/ReferenceOutput/Drawing/WebGPUDrawingBackendTests/DrawPath_Stroke_MatchesDefaultOutput_WebGPU_NativeSurface.png
index 75adc79e..34ab7e21 100644
--- a/tests/Images/ReferenceOutput/Drawing/WebGPUDrawingBackendTests/DrawPath_Stroke_MatchesDefaultOutput_WebGPU_NativeSurface.png
+++ b/tests/Images/ReferenceOutput/Drawing/WebGPUDrawingBackendTests/DrawPath_Stroke_MatchesDefaultOutput_WebGPU_NativeSurface.png
@@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
-oid sha256:dc925539f04edb37fc366c5aaa7b611d01379a93796f28586607097df09bca41
-size 1944
+oid sha256:aa884bbf18c919edad7f80de71c5efc93b33f652fd308da11392c5b7c6335efd
+size 1922
diff --git a/tests/Images/ReferenceOutput/Drawing/WebGPUDrawingBackendTests/DrawPath_Stroke_RoundJoinArcDetailScale_MatchesDefaultOutput_MiterRound_0.01_Default.png b/tests/Images/ReferenceOutput/Drawing/WebGPUDrawingBackendTests/DrawPath_Stroke_RoundJoinArcDetailScale_MatchesDefaultOutput_MiterRound_0.01_Default.png
new file mode 100644
index 00000000..dcaf8b6c
--- /dev/null
+++ b/tests/Images/ReferenceOutput/Drawing/WebGPUDrawingBackendTests/DrawPath_Stroke_RoundJoinArcDetailScale_MatchesDefaultOutput_MiterRound_0.01_Default.png
@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:ddc1eface6cb65a2a924072eb405012cc2103269c3c123d402197bf10ebc1acb
+size 2308
diff --git a/tests/Images/ReferenceOutput/Drawing/WebGPUDrawingBackendTests/DrawPath_Stroke_RoundJoinArcDetailScale_MatchesDefaultOutput_MiterRound_0.01_WebGPU_NativeSurface.png b/tests/Images/ReferenceOutput/Drawing/WebGPUDrawingBackendTests/DrawPath_Stroke_RoundJoinArcDetailScale_MatchesDefaultOutput_MiterRound_0.01_WebGPU_NativeSurface.png
new file mode 100644
index 00000000..e742e4da
--- /dev/null
+++ b/tests/Images/ReferenceOutput/Drawing/WebGPUDrawingBackendTests/DrawPath_Stroke_RoundJoinArcDetailScale_MatchesDefaultOutput_MiterRound_0.01_WebGPU_NativeSurface.png
@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:fc1bc30fc386c61408f3c3942b8e908149222758494e4751fe55300ca2f747bb
+size 2047
diff --git a/tests/Images/ReferenceOutput/Drawing/WebGPUDrawingBackendTests/DrawPath_Stroke_RoundJoinArcDetailScale_MatchesDefaultOutput_MiterRound_0.5_Default.png b/tests/Images/ReferenceOutput/Drawing/WebGPUDrawingBackendTests/DrawPath_Stroke_RoundJoinArcDetailScale_MatchesDefaultOutput_MiterRound_0.5_Default.png
new file mode 100644
index 00000000..da4db191
--- /dev/null
+++ b/tests/Images/ReferenceOutput/Drawing/WebGPUDrawingBackendTests/DrawPath_Stroke_RoundJoinArcDetailScale_MatchesDefaultOutput_MiterRound_0.5_Default.png
@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:c20904f8a12548377ee41286e592ce209aecac91049fa073d10142c67b03c939
+size 2298
diff --git a/tests/Images/ReferenceOutput/Drawing/WebGPUDrawingBackendTests/DrawPath_Stroke_RoundJoinArcDetailScale_MatchesDefaultOutput_MiterRound_0.5_WebGPU_NativeSurface.png b/tests/Images/ReferenceOutput/Drawing/WebGPUDrawingBackendTests/DrawPath_Stroke_RoundJoinArcDetailScale_MatchesDefaultOutput_MiterRound_0.5_WebGPU_NativeSurface.png
new file mode 100644
index 00000000..13d4f609
--- /dev/null
+++ b/tests/Images/ReferenceOutput/Drawing/WebGPUDrawingBackendTests/DrawPath_Stroke_RoundJoinArcDetailScale_MatchesDefaultOutput_MiterRound_0.5_WebGPU_NativeSurface.png
@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:7f99215c904bd31bedc6a7d7a81ad844f1a477fd32cf8c1c9b8b44146579f07f
+size 2047
diff --git a/tests/Images/ReferenceOutput/Drawing/WebGPUDrawingBackendTests/DrawPath_Stroke_RoundJoinArcDetailScale_MatchesDefaultOutput_MiterRound_16_Default.png b/tests/Images/ReferenceOutput/Drawing/WebGPUDrawingBackendTests/DrawPath_Stroke_RoundJoinArcDetailScale_MatchesDefaultOutput_MiterRound_16_Default.png
new file mode 100644
index 00000000..5a5e3fd9
--- /dev/null
+++ b/tests/Images/ReferenceOutput/Drawing/WebGPUDrawingBackendTests/DrawPath_Stroke_RoundJoinArcDetailScale_MatchesDefaultOutput_MiterRound_16_Default.png
@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:e846c6bd3947d97033271fd575143fe43bc1c2895fc2872e554d66c0c2410915
+size 2286
diff --git a/tests/Images/ReferenceOutput/Drawing/WebGPUDrawingBackendTests/DrawPath_Stroke_RoundJoinArcDetailScale_MatchesDefaultOutput_MiterRound_16_WebGPU_NativeSurface.png b/tests/Images/ReferenceOutput/Drawing/WebGPUDrawingBackendTests/DrawPath_Stroke_RoundJoinArcDetailScale_MatchesDefaultOutput_MiterRound_16_WebGPU_NativeSurface.png
new file mode 100644
index 00000000..c2c76aa5
--- /dev/null
+++ b/tests/Images/ReferenceOutput/Drawing/WebGPUDrawingBackendTests/DrawPath_Stroke_RoundJoinArcDetailScale_MatchesDefaultOutput_MiterRound_16_WebGPU_NativeSurface.png
@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:3663d3dd033edc5a9436e988b06b282f2565f10fed4970b1f5e9edf876151351
+size 2021
diff --git a/tests/Images/ReferenceOutput/Drawing/WebGPUDrawingBackendTests/DrawPath_Stroke_RoundJoinArcDetailScale_MatchesDefaultOutput_MiterRound_1_Default.png b/tests/Images/ReferenceOutput/Drawing/WebGPUDrawingBackendTests/DrawPath_Stroke_RoundJoinArcDetailScale_MatchesDefaultOutput_MiterRound_1_Default.png
new file mode 100644
index 00000000..34c952a3
--- /dev/null
+++ b/tests/Images/ReferenceOutput/Drawing/WebGPUDrawingBackendTests/DrawPath_Stroke_RoundJoinArcDetailScale_MatchesDefaultOutput_MiterRound_1_Default.png
@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:90b49d2ae2f3aa8ff48da23885854b04f4ccd523a62c98f4b2cb7de9803ac843
+size 2298
diff --git a/tests/Images/ReferenceOutput/Drawing/WebGPUDrawingBackendTests/DrawPath_Stroke_RoundJoinArcDetailScale_MatchesDefaultOutput_MiterRound_1_WebGPU_NativeSurface.png b/tests/Images/ReferenceOutput/Drawing/WebGPUDrawingBackendTests/DrawPath_Stroke_RoundJoinArcDetailScale_MatchesDefaultOutput_MiterRound_1_WebGPU_NativeSurface.png
new file mode 100644
index 00000000..9f1e0578
--- /dev/null
+++ b/tests/Images/ReferenceOutput/Drawing/WebGPUDrawingBackendTests/DrawPath_Stroke_RoundJoinArcDetailScale_MatchesDefaultOutput_MiterRound_1_WebGPU_NativeSurface.png
@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:fdf1b01c7f866d817bdab42ccb2c74d1fc1992408d95437578fae28251a35b41
+size 2044
diff --git a/tests/Images/ReferenceOutput/Drawing/WebGPUDrawingBackendTests/DrawPath_Stroke_RoundJoinArcDetailScale_MatchesDefaultOutput_MiterRound_4_Default.png b/tests/Images/ReferenceOutput/Drawing/WebGPUDrawingBackendTests/DrawPath_Stroke_RoundJoinArcDetailScale_MatchesDefaultOutput_MiterRound_4_Default.png
new file mode 100644
index 00000000..6f7b8eda
--- /dev/null
+++ b/tests/Images/ReferenceOutput/Drawing/WebGPUDrawingBackendTests/DrawPath_Stroke_RoundJoinArcDetailScale_MatchesDefaultOutput_MiterRound_4_Default.png
@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:c7256c181823c985d7d5cbb6d8c7fd98a9408256db0cda9a43ba1d23d94a5ab1
+size 2299
diff --git a/tests/Images/ReferenceOutput/Drawing/WebGPUDrawingBackendTests/DrawPath_Stroke_RoundJoinArcDetailScale_MatchesDefaultOutput_MiterRound_4_WebGPU_NativeSurface.png b/tests/Images/ReferenceOutput/Drawing/WebGPUDrawingBackendTests/DrawPath_Stroke_RoundJoinArcDetailScale_MatchesDefaultOutput_MiterRound_4_WebGPU_NativeSurface.png
new file mode 100644
index 00000000..4cd2c8c4
--- /dev/null
+++ b/tests/Images/ReferenceOutput/Drawing/WebGPUDrawingBackendTests/DrawPath_Stroke_RoundJoinArcDetailScale_MatchesDefaultOutput_MiterRound_4_WebGPU_NativeSurface.png
@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:2b5847b8c6e8ffa182e5cd34293458ae5dd75d8754fbc98e6a2605b8430c74e3
+size 2039
diff --git a/tests/Images/ReferenceOutput/Drawing/WebGPUDrawingBackendTests/DrawPath_Stroke_RoundJoinArcDetailScale_MatchesDefaultOutput_Round_0.01_Default.png b/tests/Images/ReferenceOutput/Drawing/WebGPUDrawingBackendTests/DrawPath_Stroke_RoundJoinArcDetailScale_MatchesDefaultOutput_Round_0.01_Default.png
new file mode 100644
index 00000000..dcaf8b6c
--- /dev/null
+++ b/tests/Images/ReferenceOutput/Drawing/WebGPUDrawingBackendTests/DrawPath_Stroke_RoundJoinArcDetailScale_MatchesDefaultOutput_Round_0.01_Default.png
@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:ddc1eface6cb65a2a924072eb405012cc2103269c3c123d402197bf10ebc1acb
+size 2308
diff --git a/tests/Images/ReferenceOutput/Drawing/WebGPUDrawingBackendTests/DrawPath_Stroke_RoundJoinArcDetailScale_MatchesDefaultOutput_Round_0.01_WebGPU_NativeSurface.png b/tests/Images/ReferenceOutput/Drawing/WebGPUDrawingBackendTests/DrawPath_Stroke_RoundJoinArcDetailScale_MatchesDefaultOutput_Round_0.01_WebGPU_NativeSurface.png
new file mode 100644
index 00000000..e742e4da
--- /dev/null
+++ b/tests/Images/ReferenceOutput/Drawing/WebGPUDrawingBackendTests/DrawPath_Stroke_RoundJoinArcDetailScale_MatchesDefaultOutput_Round_0.01_WebGPU_NativeSurface.png
@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:fc1bc30fc386c61408f3c3942b8e908149222758494e4751fe55300ca2f747bb
+size 2047
diff --git a/tests/Images/ReferenceOutput/Drawing/WebGPUDrawingBackendTests/DrawPath_Stroke_RoundJoinArcDetailScale_MatchesDefaultOutput_Round_0.5_Default.png b/tests/Images/ReferenceOutput/Drawing/WebGPUDrawingBackendTests/DrawPath_Stroke_RoundJoinArcDetailScale_MatchesDefaultOutput_Round_0.5_Default.png
new file mode 100644
index 00000000..da4db191
--- /dev/null
+++ b/tests/Images/ReferenceOutput/Drawing/WebGPUDrawingBackendTests/DrawPath_Stroke_RoundJoinArcDetailScale_MatchesDefaultOutput_Round_0.5_Default.png
@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:c20904f8a12548377ee41286e592ce209aecac91049fa073d10142c67b03c939
+size 2298
diff --git a/tests/Images/ReferenceOutput/Drawing/WebGPUDrawingBackendTests/DrawPath_Stroke_RoundJoinArcDetailScale_MatchesDefaultOutput_Round_0.5_WebGPU_NativeSurface.png b/tests/Images/ReferenceOutput/Drawing/WebGPUDrawingBackendTests/DrawPath_Stroke_RoundJoinArcDetailScale_MatchesDefaultOutput_Round_0.5_WebGPU_NativeSurface.png
new file mode 100644
index 00000000..13d4f609
--- /dev/null
+++ b/tests/Images/ReferenceOutput/Drawing/WebGPUDrawingBackendTests/DrawPath_Stroke_RoundJoinArcDetailScale_MatchesDefaultOutput_Round_0.5_WebGPU_NativeSurface.png
@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:7f99215c904bd31bedc6a7d7a81ad844f1a477fd32cf8c1c9b8b44146579f07f
+size 2047
diff --git a/tests/Images/ReferenceOutput/Drawing/WebGPUDrawingBackendTests/DrawPath_Stroke_RoundJoinArcDetailScale_MatchesDefaultOutput_Round_16_Default.png b/tests/Images/ReferenceOutput/Drawing/WebGPUDrawingBackendTests/DrawPath_Stroke_RoundJoinArcDetailScale_MatchesDefaultOutput_Round_16_Default.png
new file mode 100644
index 00000000..5a5e3fd9
--- /dev/null
+++ b/tests/Images/ReferenceOutput/Drawing/WebGPUDrawingBackendTests/DrawPath_Stroke_RoundJoinArcDetailScale_MatchesDefaultOutput_Round_16_Default.png
@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:e846c6bd3947d97033271fd575143fe43bc1c2895fc2872e554d66c0c2410915
+size 2286
diff --git a/tests/Images/ReferenceOutput/Drawing/WebGPUDrawingBackendTests/DrawPath_Stroke_RoundJoinArcDetailScale_MatchesDefaultOutput_Round_16_WebGPU_NativeSurface.png b/tests/Images/ReferenceOutput/Drawing/WebGPUDrawingBackendTests/DrawPath_Stroke_RoundJoinArcDetailScale_MatchesDefaultOutput_Round_16_WebGPU_NativeSurface.png
new file mode 100644
index 00000000..c2c76aa5
--- /dev/null
+++ b/tests/Images/ReferenceOutput/Drawing/WebGPUDrawingBackendTests/DrawPath_Stroke_RoundJoinArcDetailScale_MatchesDefaultOutput_Round_16_WebGPU_NativeSurface.png
@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:3663d3dd033edc5a9436e988b06b282f2565f10fed4970b1f5e9edf876151351
+size 2021
diff --git a/tests/Images/ReferenceOutput/Drawing/WebGPUDrawingBackendTests/DrawPath_Stroke_RoundJoinArcDetailScale_MatchesDefaultOutput_Round_1_Default.png b/tests/Images/ReferenceOutput/Drawing/WebGPUDrawingBackendTests/DrawPath_Stroke_RoundJoinArcDetailScale_MatchesDefaultOutput_Round_1_Default.png
new file mode 100644
index 00000000..34c952a3
--- /dev/null
+++ b/tests/Images/ReferenceOutput/Drawing/WebGPUDrawingBackendTests/DrawPath_Stroke_RoundJoinArcDetailScale_MatchesDefaultOutput_Round_1_Default.png
@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:90b49d2ae2f3aa8ff48da23885854b04f4ccd523a62c98f4b2cb7de9803ac843
+size 2298
diff --git a/tests/Images/ReferenceOutput/Drawing/WebGPUDrawingBackendTests/DrawPath_Stroke_RoundJoinArcDetailScale_MatchesDefaultOutput_Round_1_WebGPU_NativeSurface.png b/tests/Images/ReferenceOutput/Drawing/WebGPUDrawingBackendTests/DrawPath_Stroke_RoundJoinArcDetailScale_MatchesDefaultOutput_Round_1_WebGPU_NativeSurface.png
new file mode 100644
index 00000000..9f1e0578
--- /dev/null
+++ b/tests/Images/ReferenceOutput/Drawing/WebGPUDrawingBackendTests/DrawPath_Stroke_RoundJoinArcDetailScale_MatchesDefaultOutput_Round_1_WebGPU_NativeSurface.png
@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:fdf1b01c7f866d817bdab42ccb2c74d1fc1992408d95437578fae28251a35b41
+size 2044
diff --git a/tests/Images/ReferenceOutput/Drawing/WebGPUDrawingBackendTests/DrawPath_Stroke_RoundJoinArcDetailScale_MatchesDefaultOutput_Round_4_Default.png b/tests/Images/ReferenceOutput/Drawing/WebGPUDrawingBackendTests/DrawPath_Stroke_RoundJoinArcDetailScale_MatchesDefaultOutput_Round_4_Default.png
new file mode 100644
index 00000000..6f7b8eda
--- /dev/null
+++ b/tests/Images/ReferenceOutput/Drawing/WebGPUDrawingBackendTests/DrawPath_Stroke_RoundJoinArcDetailScale_MatchesDefaultOutput_Round_4_Default.png
@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:c7256c181823c985d7d5cbb6d8c7fd98a9408256db0cda9a43ba1d23d94a5ab1
+size 2299
diff --git a/tests/Images/ReferenceOutput/Drawing/WebGPUDrawingBackendTests/DrawPath_Stroke_RoundJoinArcDetailScale_MatchesDefaultOutput_Round_4_WebGPU_NativeSurface.png b/tests/Images/ReferenceOutput/Drawing/WebGPUDrawingBackendTests/DrawPath_Stroke_RoundJoinArcDetailScale_MatchesDefaultOutput_Round_4_WebGPU_NativeSurface.png
new file mode 100644
index 00000000..4cd2c8c4
--- /dev/null
+++ b/tests/Images/ReferenceOutput/Drawing/WebGPUDrawingBackendTests/DrawPath_Stroke_RoundJoinArcDetailScale_MatchesDefaultOutput_Round_4_WebGPU_NativeSurface.png
@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:2b5847b8c6e8ffa182e5cd34293458ae5dd75d8754fbc98e6a2605b8430c74e3
+size 2039
diff --git a/tests/Images/ReferenceOutput/Drawing/WebGPUDrawingBackendTests/DrawPath_Stroke_RoundJoinLargeRadius_MatchesDefaultOutput_16_Default.png b/tests/Images/ReferenceOutput/Drawing/WebGPUDrawingBackendTests/DrawPath_Stroke_RoundJoinLargeRadius_MatchesDefaultOutput_16_Default.png
new file mode 100644
index 00000000..80533bea
--- /dev/null
+++ b/tests/Images/ReferenceOutput/Drawing/WebGPUDrawingBackendTests/DrawPath_Stroke_RoundJoinLargeRadius_MatchesDefaultOutput_16_Default.png
@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:09d339029ed78750e90fdfa58bc59f16366f468313423dca745cfe45299e9680
+size 4606
diff --git a/tests/Images/ReferenceOutput/Drawing/WebGPUDrawingBackendTests/DrawPath_Stroke_RoundJoinLargeRadius_MatchesDefaultOutput_16_WebGPU_NativeSurface.png b/tests/Images/ReferenceOutput/Drawing/WebGPUDrawingBackendTests/DrawPath_Stroke_RoundJoinLargeRadius_MatchesDefaultOutput_16_WebGPU_NativeSurface.png
new file mode 100644
index 00000000..21bcdcf6
--- /dev/null
+++ b/tests/Images/ReferenceOutput/Drawing/WebGPUDrawingBackendTests/DrawPath_Stroke_RoundJoinLargeRadius_MatchesDefaultOutput_16_WebGPU_NativeSurface.png
@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:aca121a4adee63bb661768db65a1155c425f9c6fa6e3539eeffea14e8aa5f83b
+size 4543
diff --git a/tests/Images/ReferenceOutput/Drawing/WebGPUDrawingBackendTests/DrawPath_Stroke_RoundJoinLargeRadius_MatchesDefaultOutput_1_Default.png b/tests/Images/ReferenceOutput/Drawing/WebGPUDrawingBackendTests/DrawPath_Stroke_RoundJoinLargeRadius_MatchesDefaultOutput_1_Default.png
new file mode 100644
index 00000000..a0b8b79c
--- /dev/null
+++ b/tests/Images/ReferenceOutput/Drawing/WebGPUDrawingBackendTests/DrawPath_Stroke_RoundJoinLargeRadius_MatchesDefaultOutput_1_Default.png
@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:aa146563af0e62f842563b6bfc0acf409db2edf127d959287b16532a652dea04
+size 4412
diff --git a/tests/Images/ReferenceOutput/Drawing/WebGPUDrawingBackendTests/DrawPath_Stroke_RoundJoinLargeRadius_MatchesDefaultOutput_1_WebGPU_NativeSurface.png b/tests/Images/ReferenceOutput/Drawing/WebGPUDrawingBackendTests/DrawPath_Stroke_RoundJoinLargeRadius_MatchesDefaultOutput_1_WebGPU_NativeSurface.png
new file mode 100644
index 00000000..3184ef7d
--- /dev/null
+++ b/tests/Images/ReferenceOutput/Drawing/WebGPUDrawingBackendTests/DrawPath_Stroke_RoundJoinLargeRadius_MatchesDefaultOutput_1_WebGPU_NativeSurface.png
@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:0ccd21cd7b752f53243f6684ff680f1eb8eb4349422e625443a20db45d2ea770
+size 4375
diff --git a/tests/Images/ReferenceOutput/Drawing/WebGPUDrawingBackendTests/DrawText_WithBlurLayerEffect_MatchesDefaultOutput_Default.png b/tests/Images/ReferenceOutput/Drawing/WebGPUDrawingBackendTests/DrawText_WithBlurLayerEffect_MatchesDefaultOutput_Default.png
index fc725a00..b6ada83b 100644
--- a/tests/Images/ReferenceOutput/Drawing/WebGPUDrawingBackendTests/DrawText_WithBlurLayerEffect_MatchesDefaultOutput_Default.png
+++ b/tests/Images/ReferenceOutput/Drawing/WebGPUDrawingBackendTests/DrawText_WithBlurLayerEffect_MatchesDefaultOutput_Default.png
@@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
-oid sha256:b60f2a99fc7c9933ce715377e35fe8164f47a763bdf587a6cec275cfc0e2b162
-size 5398
+oid sha256:8b42b2d432bc1b819859a47b4b402a4a618c056ecee29991c997e79cd15c9c15
+size 5420
diff --git a/tests/Images/ReferenceOutput/Drawing/WebGPUDrawingBackendTests/DrawText_WithColorMatrixLayerEffect_MatchesDefaultOutput_Default.png b/tests/Images/ReferenceOutput/Drawing/WebGPUDrawingBackendTests/DrawText_WithColorMatrixLayerEffect_MatchesDefaultOutput_Default.png
index 9444d2f9..34135456 100644
--- a/tests/Images/ReferenceOutput/Drawing/WebGPUDrawingBackendTests/DrawText_WithColorMatrixLayerEffect_MatchesDefaultOutput_Default.png
+++ b/tests/Images/ReferenceOutput/Drawing/WebGPUDrawingBackendTests/DrawText_WithColorMatrixLayerEffect_MatchesDefaultOutput_Default.png
@@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
-oid sha256:d8541428564bb068ed2dbc7e918d3f7f3f20ce1e68527e141d65f8cbe12ee76f
-size 4175
+oid sha256:638e0ee8a8f197238a3741a67364fa0533da16b009eb1f80a63a9e9b1450205e
+size 4207
diff --git a/tests/Images/ReferenceOutput/Drawing/WebGPUDrawingBackendTests/DrawText_WithDropShadowWriteBack_MatchesDefaultOutput_Default.png b/tests/Images/ReferenceOutput/Drawing/WebGPUDrawingBackendTests/DrawText_WithDropShadowWriteBack_MatchesDefaultOutput_Default.png
index 0b490eea..32fe0a62 100644
--- a/tests/Images/ReferenceOutput/Drawing/WebGPUDrawingBackendTests/DrawText_WithDropShadowWriteBack_MatchesDefaultOutput_Default.png
+++ b/tests/Images/ReferenceOutput/Drawing/WebGPUDrawingBackendTests/DrawText_WithDropShadowWriteBack_MatchesDefaultOutput_Default.png
@@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
-oid sha256:253e1e577594d73f6422526d3fde07ea2d5ff87639d0734c03a399c30a20bbaa
-size 14625
+oid sha256:f2452b8406e7b7e5d6425069b0a5a1c42c861b3bd08f8da476bfa62bbf1c7104
+size 14540
diff --git a/tests/Images/ReferenceOutput/Drawing/WebGPUDrawingBackendTests/DrawText_WithGlowLayerEffect_MatchesDefaultOutput_Default.png b/tests/Images/ReferenceOutput/Drawing/WebGPUDrawingBackendTests/DrawText_WithGlowLayerEffect_MatchesDefaultOutput_Default.png
index 7eea26de..fa126dd1 100644
--- a/tests/Images/ReferenceOutput/Drawing/WebGPUDrawingBackendTests/DrawText_WithGlowLayerEffect_MatchesDefaultOutput_Default.png
+++ b/tests/Images/ReferenceOutput/Drawing/WebGPUDrawingBackendTests/DrawText_WithGlowLayerEffect_MatchesDefaultOutput_Default.png
@@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
-oid sha256:2c7ede84da9cc95a2e5d23f249ead0c859ea066374edf4548bb4659c4865c9f6
-size 10018
+oid sha256:adcd1754e5198b14fc8de7091922d6525b684d758527364689af393a7ac66e41
+size 9960
diff --git a/tests/Images/ReferenceOutput/Drawing/WebGPUDrawingBackendTests/DrawText_WithGlowLayerEffect_MatchesDefaultOutput_WebGPU_NativeSurface.png b/tests/Images/ReferenceOutput/Drawing/WebGPUDrawingBackendTests/DrawText_WithGlowLayerEffect_MatchesDefaultOutput_WebGPU_NativeSurface.png
index 009b2c01..616ae352 100644
--- a/tests/Images/ReferenceOutput/Drawing/WebGPUDrawingBackendTests/DrawText_WithGlowLayerEffect_MatchesDefaultOutput_WebGPU_NativeSurface.png
+++ b/tests/Images/ReferenceOutput/Drawing/WebGPUDrawingBackendTests/DrawText_WithGlowLayerEffect_MatchesDefaultOutput_WebGPU_NativeSurface.png
@@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
-oid sha256:dc9171e009800d7fb19fbcfee6049885917f581baf012c75bf5557891de7ed37
-size 9981
+oid sha256:293a96e77b741dd60ba878fbdaad05ac3fb8f082a650341335f4c976997fa463
+size 9979
diff --git a/tests/Images/ReferenceOutput/Drawing/WebGPUDrawingBackendTests/DrawText_WithInnerShadowLayerEffect_MatchesDefaultOutput_Default.png b/tests/Images/ReferenceOutput/Drawing/WebGPUDrawingBackendTests/DrawText_WithInnerShadowLayerEffect_MatchesDefaultOutput_Default.png
index 86760559..79b0f5ee 100644
--- a/tests/Images/ReferenceOutput/Drawing/WebGPUDrawingBackendTests/DrawText_WithInnerShadowLayerEffect_MatchesDefaultOutput_Default.png
+++ b/tests/Images/ReferenceOutput/Drawing/WebGPUDrawingBackendTests/DrawText_WithInnerShadowLayerEffect_MatchesDefaultOutput_Default.png
@@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
-oid sha256:0a123d2277aec0153b2953acc14ff54faf67e175860ea4aae914fefad7283467
+oid sha256:444b43c1b8718b975431483726053ee8dd33a9e7de06214166dcbb93edf4e9d0
size 7189
diff --git a/tests/Images/ReferenceOutput/Drawing/WebGPUDrawingBackendTests/DrawText_WithPolygonLayerEffectRegion_MatchesDefaultOutput_Default.png b/tests/Images/ReferenceOutput/Drawing/WebGPUDrawingBackendTests/DrawText_WithPolygonLayerEffectRegion_MatchesDefaultOutput_Default.png
index 49eb798c..ea3c3ba6 100644
--- a/tests/Images/ReferenceOutput/Drawing/WebGPUDrawingBackendTests/DrawText_WithPolygonLayerEffectRegion_MatchesDefaultOutput_Default.png
+++ b/tests/Images/ReferenceOutput/Drawing/WebGPUDrawingBackendTests/DrawText_WithPolygonLayerEffectRegion_MatchesDefaultOutput_Default.png
@@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
-oid sha256:aef0eba9adf34c6a97d78f4aefc91132be3e82c1dfeadf79d263c1014e6cddc0
-size 6140
+oid sha256:839030f39b0e827b25688bddf3f62e008a232c6791ba5054c6d8ccd91d371292
+size 6108
diff --git a/tests/Images/ReferenceOutput/Drawing/WebGPUDrawingBackendTests/DrawText_WithRepeatedGlyphs_AfterClear_UsesBlendFastPath_Default.png b/tests/Images/ReferenceOutput/Drawing/WebGPUDrawingBackendTests/DrawText_WithRepeatedGlyphs_AfterClear_UsesBlendFastPath_Default.png
index 1b5d146f..21ade8a3 100644
--- a/tests/Images/ReferenceOutput/Drawing/WebGPUDrawingBackendTests/DrawText_WithRepeatedGlyphs_AfterClear_UsesBlendFastPath_Default.png
+++ b/tests/Images/ReferenceOutput/Drawing/WebGPUDrawingBackendTests/DrawText_WithRepeatedGlyphs_AfterClear_UsesBlendFastPath_Default.png
@@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
-oid sha256:9826c1acc73a0cb357cbe3d6f44e43e0c7ab0fe708d619815656afdf573db03e
-size 10431
+oid sha256:5ec2de0047fe5050bfca91689ae593b8c736226693ed335506ac15021f2ca382
+size 10712
diff --git a/tests/Images/ReferenceOutput/Drawing/WebGPUDrawingBackendTests/DrawText_WithRepeatedGlyphs_UsesCoverageCache_Default.png b/tests/Images/ReferenceOutput/Drawing/WebGPUDrawingBackendTests/DrawText_WithRepeatedGlyphs_UsesCoverageCache_Default.png
index 2835d242..6f730fcb 100644
--- a/tests/Images/ReferenceOutput/Drawing/WebGPUDrawingBackendTests/DrawText_WithRepeatedGlyphs_UsesCoverageCache_Default.png
+++ b/tests/Images/ReferenceOutput/Drawing/WebGPUDrawingBackendTests/DrawText_WithRepeatedGlyphs_UsesCoverageCache_Default.png
@@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
-oid sha256:bbf6734278b7ec25affc9a6f78a9e98948fd2625c61bd402cf91f8982aef13d9
-size 6762
+oid sha256:862755cb820a160d2f1c5507909201cf1b82360d310f622a90cbac81e458dd5b
+size 6727
diff --git a/tests/Images/ReferenceOutput/Drawing/WebGPUDrawingBackendTests/DrawText_WithWebGPUCoverageBackend_RendersAndReleasesPreparedCoverage_Default.png b/tests/Images/ReferenceOutput/Drawing/WebGPUDrawingBackendTests/DrawText_WithWebGPUCoverageBackend_RendersAndReleasesPreparedCoverage_Default.png
index 675f9744..eb3e6876 100644
--- a/tests/Images/ReferenceOutput/Drawing/WebGPUDrawingBackendTests/DrawText_WithWebGPUCoverageBackend_RendersAndReleasesPreparedCoverage_Default.png
+++ b/tests/Images/ReferenceOutput/Drawing/WebGPUDrawingBackendTests/DrawText_WithWebGPUCoverageBackend_RendersAndReleasesPreparedCoverage_Default.png
@@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
-oid sha256:10e82bddab88aa1fcc7f8700cfc3fee54d7c39b5981a1d82df246cce750f6676
-size 32799
+oid sha256:5a5db7127271bad880ce0650122ce26eb2eb62712ee7c37248dd290538fd32c4
+size 33191
diff --git a/tests/Images/ReferenceOutput/Drawing/WebGPUDrawingBackendTests/FillPath_LargeTileCount_MatchesDefaultOutput_Default.png b/tests/Images/ReferenceOutput/Drawing/WebGPUDrawingBackendTests/FillPath_LargeTileCount_MatchesDefaultOutput_Default.png
index 52886cee..3ee365fd 100644
--- a/tests/Images/ReferenceOutput/Drawing/WebGPUDrawingBackendTests/FillPath_LargeTileCount_MatchesDefaultOutput_Default.png
+++ b/tests/Images/ReferenceOutput/Drawing/WebGPUDrawingBackendTests/FillPath_LargeTileCount_MatchesDefaultOutput_Default.png
@@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
-oid sha256:8346d700f5b8459a6a8b6de9339cd7dfbeb76df391a23d2a333bc46d71fcd015
-size 6075
+oid sha256:7742195a2dc0840626426d74e476e2dd8ea0de37ea932729a74c721d6f22a123
+size 5854
diff --git a/tests/Images/ReferenceOutput/Drawing/WebGPUDrawingBackendTests/FillPath_WithLinearGradientBrush_MatchesDefaultOutput_Default.png b/tests/Images/ReferenceOutput/Drawing/WebGPUDrawingBackendTests/FillPath_WithLinearGradientBrush_MatchesDefaultOutput_Default.png
index 76ea9559..97abc62e 100644
--- a/tests/Images/ReferenceOutput/Drawing/WebGPUDrawingBackendTests/FillPath_WithLinearGradientBrush_MatchesDefaultOutput_Default.png
+++ b/tests/Images/ReferenceOutput/Drawing/WebGPUDrawingBackendTests/FillPath_WithLinearGradientBrush_MatchesDefaultOutput_Default.png
@@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
-oid sha256:fbf9cb4f465ba9daa4775c9ddef85af48095675f332ffa8f33decec4707bd5d5
-size 5429
+oid sha256:42b89dae167e246e42144e2b9f0a83360314a376fd4236d83526eb16c4df02af
+size 5388
diff --git a/tests/Images/ReferenceOutput/Drawing/WebGPUDrawingBackendTests/FillPath_WithLinearGradientBrush_MatchesDefaultOutput_WebGPU_NativeSurface.png b/tests/Images/ReferenceOutput/Drawing/WebGPUDrawingBackendTests/FillPath_WithLinearGradientBrush_MatchesDefaultOutput_WebGPU_NativeSurface.png
index 74e32322..2c14af48 100644
--- a/tests/Images/ReferenceOutput/Drawing/WebGPUDrawingBackendTests/FillPath_WithLinearGradientBrush_MatchesDefaultOutput_WebGPU_NativeSurface.png
+++ b/tests/Images/ReferenceOutput/Drawing/WebGPUDrawingBackendTests/FillPath_WithLinearGradientBrush_MatchesDefaultOutput_WebGPU_NativeSurface.png
@@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
-oid sha256:99dc4c868bdb60b0e6b49822a34f9befd8f436b250b1d0ed98632105e18fa939
-size 5368
+oid sha256:9863509f193337f103a7adbb816a66497d1f0929b45d92ab9a40c2f23d65d2cd
+size 5357
diff --git a/tests/Images/ReferenceOutput/Drawing/WebGPUDrawingBackendTests/FillPath_WithPatternBrush_Diagonal_MatchesDefaultOutput_Default.png b/tests/Images/ReferenceOutput/Drawing/WebGPUDrawingBackendTests/FillPath_WithPatternBrush_Diagonal_MatchesDefaultOutput_Default.png
index c03c5632..0726beed 100644
--- a/tests/Images/ReferenceOutput/Drawing/WebGPUDrawingBackendTests/FillPath_WithPatternBrush_Diagonal_MatchesDefaultOutput_Default.png
+++ b/tests/Images/ReferenceOutput/Drawing/WebGPUDrawingBackendTests/FillPath_WithPatternBrush_Diagonal_MatchesDefaultOutput_Default.png
@@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
-oid sha256:1ce686ac157accc5af370ab2f6c2ea6fad9cd9a0e7b2aa443289e80dbbce2422
-size 1977
+oid sha256:9873d75e33d7036686a513a066fb2bb62e18ad49afa3663ad308645b2ccc38db
+size 1967
diff --git a/tests/Images/ReferenceOutput/Drawing/WebGPUDrawingBackendTests/FillPath_WithSweepGradientBrush_MatchesDefaultOutput_Default.png b/tests/Images/ReferenceOutput/Drawing/WebGPUDrawingBackendTests/FillPath_WithSweepGradientBrush_MatchesDefaultOutput_Default.png
index 85c90b53..71271321 100644
--- a/tests/Images/ReferenceOutput/Drawing/WebGPUDrawingBackendTests/FillPath_WithSweepGradientBrush_MatchesDefaultOutput_Default.png
+++ b/tests/Images/ReferenceOutput/Drawing/WebGPUDrawingBackendTests/FillPath_WithSweepGradientBrush_MatchesDefaultOutput_Default.png
@@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
-oid sha256:a434bc0afff981af2e45f63e21bb96b7833f1adbf329f8cc1133496f625b850f
-size 15298
+oid sha256:92fb06b3831a0ebeaaeb7840861030a5b2012aa6d1b3109a1cbc5865d2b2f12e
+size 15266
diff --git a/tests/Images/ReferenceOutput/Drawing/WebGPUDrawingBackendTests/Process_WithWebGPUBackend_MatchesDefaultOutput_Default.png b/tests/Images/ReferenceOutput/Drawing/WebGPUDrawingBackendTests/Process_WithWebGPUBackend_MatchesDefaultOutput_Default.png
index cfef5977..4b5d421c 100644
--- a/tests/Images/ReferenceOutput/Drawing/WebGPUDrawingBackendTests/Process_WithWebGPUBackend_MatchesDefaultOutput_Default.png
+++ b/tests/Images/ReferenceOutput/Drawing/WebGPUDrawingBackendTests/Process_WithWebGPUBackend_MatchesDefaultOutput_Default.png
@@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
-oid sha256:857786ae833c0fd7aa43fd2809eea6099afd0808a57b315d1a3416488290db34
-size 13008
+oid sha256:f1fc4f36c440d0695c40b39283afd723d92b3694754e6b1949bd9063a0c4d1a1
+size 13058
diff --git a/tests/Images/ReferenceOutput/Drawing/WebGPUDrawingBackendTests/SaveLayer_GaussianBlur_OffCanvasLayerBounds_MatchesDefaultOutput_Default.png b/tests/Images/ReferenceOutput/Drawing/WebGPUDrawingBackendTests/SaveLayer_GaussianBlur_OffCanvasLayerBounds_MatchesDefaultOutput_Default.png
index 9a1233a5..fd4e2b5e 100644
--- a/tests/Images/ReferenceOutput/Drawing/WebGPUDrawingBackendTests/SaveLayer_GaussianBlur_OffCanvasLayerBounds_MatchesDefaultOutput_Default.png
+++ b/tests/Images/ReferenceOutput/Drawing/WebGPUDrawingBackendTests/SaveLayer_GaussianBlur_OffCanvasLayerBounds_MatchesDefaultOutput_Default.png
@@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
-oid sha256:6e611d1d098d8261280ab22abb395ea322333a8a432a5f9b81bc2de24482d0db
-size 1179
+oid sha256:474970562d81f68ccaa3c8d5010b1d394e3e9e806c180665344be7874bca6a5e
+size 1160
diff --git a/tests/Images/ReferenceOutput/Drawing/WebGPUDrawingBackendTests/SaveLayer_GaussianBlur_OffCanvasLayerBounds_MatchesDefaultOutput_WebGPU_NativeSurface.png b/tests/Images/ReferenceOutput/Drawing/WebGPUDrawingBackendTests/SaveLayer_GaussianBlur_OffCanvasLayerBounds_MatchesDefaultOutput_WebGPU_NativeSurface.png
index 6fa4dfb4..122f0bb7 100644
--- a/tests/Images/ReferenceOutput/Drawing/WebGPUDrawingBackendTests/SaveLayer_GaussianBlur_OffCanvasLayerBounds_MatchesDefaultOutput_WebGPU_NativeSurface.png
+++ b/tests/Images/ReferenceOutput/Drawing/WebGPUDrawingBackendTests/SaveLayer_GaussianBlur_OffCanvasLayerBounds_MatchesDefaultOutput_WebGPU_NativeSurface.png
@@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
-oid sha256:adee30ae69498ad08919e1e3da8bd89ba688f2548b9b37621e0c734ee6ab3271
-size 1185
+oid sha256:b10453561b2af61082a26954af5b39dc3889f15d1efcecd921d8b2a2952bddb6
+size 1170
diff --git a/tests/Images/ReferenceOutput/Issue_134/LowFontSizeRenderOK_Rgb24_Full_Antialiased.png b/tests/Images/ReferenceOutput/Issue_134/LowFontSizeRenderOK_Rgb24_Full_Antialiased.png
index 06e76046..0d15edf0 100644
--- a/tests/Images/ReferenceOutput/Issue_134/LowFontSizeRenderOK_Rgb24_Full_Antialiased.png
+++ b/tests/Images/ReferenceOutput/Issue_134/LowFontSizeRenderOK_Rgb24_Full_Antialiased.png
@@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
-oid sha256:05626c19e4ce48da6aea6d92a1ad029b29fbf78c93e26b7bcb26300eb6a269e0
-size 526
+oid sha256:1caa01791f3a32a93ba49554e258ac935f2e4fe4361f441206e24a67a2706fd1
+size 536
diff --git a/tests/Images/ReferenceOutput/Issue_134/LowFontSizeRenderOK_Rgb24_None_Antialiased.png b/tests/Images/ReferenceOutput/Issue_134/LowFontSizeRenderOK_Rgb24_None_Antialiased.png
index ca87157c..c77df413 100644
--- a/tests/Images/ReferenceOutput/Issue_134/LowFontSizeRenderOK_Rgb24_None_Antialiased.png
+++ b/tests/Images/ReferenceOutput/Issue_134/LowFontSizeRenderOK_Rgb24_None_Antialiased.png
@@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
-oid sha256:52238dcf60b64d01c672e20eb0b52abaa0cb14a76562cc877396f8f6783d2ba3
-size 943
+oid sha256:668bcd498304b51a26f446fde3c779152f3b9c6696f0c0017eab6bf1ba56cb83
+size 958
diff --git a/tests/Images/ReferenceOutput/Issue_323/DrawPolygonMustDrawoutlineOnly_Pattern_Rgba32_Solid300x300_(255,255,255,255)_scale-0.003.png b/tests/Images/ReferenceOutput/Issue_323/DrawPolygonMustDrawoutlineOnly_Pattern_Rgba32_Solid300x300_(255,255,255,255)_scale-0.003.png
index 9ca5fceb..d2226864 100644
--- a/tests/Images/ReferenceOutput/Issue_323/DrawPolygonMustDrawoutlineOnly_Pattern_Rgba32_Solid300x300_(255,255,255,255)_scale-0.003.png
+++ b/tests/Images/ReferenceOutput/Issue_323/DrawPolygonMustDrawoutlineOnly_Pattern_Rgba32_Solid300x300_(255,255,255,255)_scale-0.003.png
@@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
-oid sha256:5e79c1a0c50a4ebe91fb54c08ecf06a4a49dab9a41f5d5514af8e75c5e7d0a2f
-size 490
+oid sha256:d7cc1b2f260e16f1519c76074d7a5667013a0529bcd3dde442f79ea5b5931a43
+size 414
diff --git a/tests/Images/ReferenceOutput/Issue_323/DrawPolygonMustDrawoutlineOnly_Pattern_Rgba32_Solid300x300_(255,255,255,255)_scale-0.3.png b/tests/Images/ReferenceOutput/Issue_323/DrawPolygonMustDrawoutlineOnly_Pattern_Rgba32_Solid300x300_(255,255,255,255)_scale-0.3.png
index a66b212f..44b4fa7f 100644
--- a/tests/Images/ReferenceOutput/Issue_323/DrawPolygonMustDrawoutlineOnly_Pattern_Rgba32_Solid300x300_(255,255,255,255)_scale-0.3.png
+++ b/tests/Images/ReferenceOutput/Issue_323/DrawPolygonMustDrawoutlineOnly_Pattern_Rgba32_Solid300x300_(255,255,255,255)_scale-0.3.png
@@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
-oid sha256:8a44c340b48e41dad04b551a496e92e3db146ad878b1d303504d957f09b1b05d
-size 1538
+oid sha256:87d55d16d36adc95964e804c9c6461706be686423886f53702e62533dc9eebca
+size 1635
diff --git a/tests/Images/ReferenceOutput/Issue_323/DrawPolygonMustDrawoutlineOnly_Pattern_Rgba32_Solid300x300_(255,255,255,255)_scale-0.7.png b/tests/Images/ReferenceOutput/Issue_323/DrawPolygonMustDrawoutlineOnly_Pattern_Rgba32_Solid300x300_(255,255,255,255)_scale-0.7.png
index c43b8f69..28be582b 100644
--- a/tests/Images/ReferenceOutput/Issue_323/DrawPolygonMustDrawoutlineOnly_Pattern_Rgba32_Solid300x300_(255,255,255,255)_scale-0.7.png
+++ b/tests/Images/ReferenceOutput/Issue_323/DrawPolygonMustDrawoutlineOnly_Pattern_Rgba32_Solid300x300_(255,255,255,255)_scale-0.7.png
@@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
-oid sha256:fe380cf59d1766118e129dc04daf071858848d7fd4fbb70e3a631f89356aeec5
-size 1946
+oid sha256:fa1e2f0e8a523f5110cef37ed69f18901d541f51471af1c3dfbde059c7c24378
+size 2070
diff --git a/tests/Images/ReferenceOutput/Issue_323/DrawPolygonMustDrawoutlineOnly_Pattern_Rgba32_Solid300x300_(255,255,255,255)_scale-1.png b/tests/Images/ReferenceOutput/Issue_323/DrawPolygonMustDrawoutlineOnly_Pattern_Rgba32_Solid300x300_(255,255,255,255)_scale-1.png
index 0b43703c..23cf7970 100644
--- a/tests/Images/ReferenceOutput/Issue_323/DrawPolygonMustDrawoutlineOnly_Pattern_Rgba32_Solid300x300_(255,255,255,255)_scale-1.png
+++ b/tests/Images/ReferenceOutput/Issue_323/DrawPolygonMustDrawoutlineOnly_Pattern_Rgba32_Solid300x300_(255,255,255,255)_scale-1.png
@@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
-oid sha256:d7d79b308432130823e9a76a071d078d0bb1b16ac7b9337cb222c757e338a8cb
-size 1855
+oid sha256:f802edcc3ca5c8a47a3a34af3d0268bd51c7dbcd36b5b05eb74eca5804c35fe0
+size 2021
diff --git a/tests/Images/ReferenceOutput/Issue_323/DrawPolygonMustDrawoutlineOnly_Pattern_Rgba32_Solid300x300_(255,255,255,255)_scale-3.png b/tests/Images/ReferenceOutput/Issue_323/DrawPolygonMustDrawoutlineOnly_Pattern_Rgba32_Solid300x300_(255,255,255,255)_scale-3.png
index 3eae34e6..a3d3de96 100644
--- a/tests/Images/ReferenceOutput/Issue_323/DrawPolygonMustDrawoutlineOnly_Pattern_Rgba32_Solid300x300_(255,255,255,255)_scale-3.png
+++ b/tests/Images/ReferenceOutput/Issue_323/DrawPolygonMustDrawoutlineOnly_Pattern_Rgba32_Solid300x300_(255,255,255,255)_scale-3.png
@@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
-oid sha256:e89f3e12622d8e788152ff8a86342228d7531b1a01497c5d3ce888ccbe785774
-size 2061
+oid sha256:5423d9995985289277152ab70878174aee2a6d2744a76f867f71e5b0439c80a8
+size 2185
diff --git a/tests/Images/ReferenceOutput/Issue_323/DrawPolygonMustDrawoutlineOnly_Rgba32_Solid300x300_(255,255,255,255)_scale-0.003.png b/tests/Images/ReferenceOutput/Issue_323/DrawPolygonMustDrawoutlineOnly_Rgba32_Solid300x300_(255,255,255,255)_scale-0.003.png
index 9ca5fceb..d2226864 100644
--- a/tests/Images/ReferenceOutput/Issue_323/DrawPolygonMustDrawoutlineOnly_Rgba32_Solid300x300_(255,255,255,255)_scale-0.003.png
+++ b/tests/Images/ReferenceOutput/Issue_323/DrawPolygonMustDrawoutlineOnly_Rgba32_Solid300x300_(255,255,255,255)_scale-0.003.png
@@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
-oid sha256:5e79c1a0c50a4ebe91fb54c08ecf06a4a49dab9a41f5d5514af8e75c5e7d0a2f
-size 490
+oid sha256:d7cc1b2f260e16f1519c76074d7a5667013a0529bcd3dde442f79ea5b5931a43
+size 414
diff --git a/tests/Images/ReferenceOutput/Issue_323/DrawPolygonMustDrawoutlineOnly_Rgba32_Solid300x300_(255,255,255,255)_scale-0.3.png b/tests/Images/ReferenceOutput/Issue_323/DrawPolygonMustDrawoutlineOnly_Rgba32_Solid300x300_(255,255,255,255)_scale-0.3.png
index 8ab5dc90..78a95033 100644
--- a/tests/Images/ReferenceOutput/Issue_323/DrawPolygonMustDrawoutlineOnly_Rgba32_Solid300x300_(255,255,255,255)_scale-0.3.png
+++ b/tests/Images/ReferenceOutput/Issue_323/DrawPolygonMustDrawoutlineOnly_Rgba32_Solid300x300_(255,255,255,255)_scale-0.3.png
@@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
-oid sha256:e2ab27967915e9f5425341ded19d7076305e88a8e6fb05c32ed8566894e8c1b8
-size 1447
+oid sha256:037889919e639ae3b601840afc653f046f0a665e74087feac065c39a451e73ec
+size 1079
diff --git a/tests/Images/ReferenceOutput/Issue_323/DrawPolygonMustDrawoutlineOnly_Rgba32_Solid300x300_(255,255,255,255)_scale-0.7.png b/tests/Images/ReferenceOutput/Issue_323/DrawPolygonMustDrawoutlineOnly_Rgba32_Solid300x300_(255,255,255,255)_scale-0.7.png
index ed85147e..af6c6dec 100644
--- a/tests/Images/ReferenceOutput/Issue_323/DrawPolygonMustDrawoutlineOnly_Rgba32_Solid300x300_(255,255,255,255)_scale-0.7.png
+++ b/tests/Images/ReferenceOutput/Issue_323/DrawPolygonMustDrawoutlineOnly_Rgba32_Solid300x300_(255,255,255,255)_scale-0.7.png
@@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
-oid sha256:758f6e30661bd8a0e37a42e5efb3631e5ae7f8a91cbf55e007f4c7b5104e9659
-size 1861
+oid sha256:13d5740ad8289062922dfbd2403c835d5b6f878a24fc87c66739491e12cf3e09
+size 1303
diff --git a/tests/Images/ReferenceOutput/Issue_323/DrawPolygonMustDrawoutlineOnly_Rgba32_Solid300x300_(255,255,255,255)_scale-1.png b/tests/Images/ReferenceOutput/Issue_323/DrawPolygonMustDrawoutlineOnly_Rgba32_Solid300x300_(255,255,255,255)_scale-1.png
index 1be30af7..0c8d668a 100644
--- a/tests/Images/ReferenceOutput/Issue_323/DrawPolygonMustDrawoutlineOnly_Rgba32_Solid300x300_(255,255,255,255)_scale-1.png
+++ b/tests/Images/ReferenceOutput/Issue_323/DrawPolygonMustDrawoutlineOnly_Rgba32_Solid300x300_(255,255,255,255)_scale-1.png
@@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
-oid sha256:a3df7d94657fb325110bbf5046dbd4a186c5629b52dcd7a520dd9f67fbc0bf49
-size 2040
+oid sha256:6097f630f6f424d39960899f242a309940bec100cc474de14382d43f594a2c04
+size 1318
diff --git a/tests/Images/ReferenceOutput/Issue_323/DrawPolygonMustDrawoutlineOnly_Rgba32_Solid300x300_(255,255,255,255)_scale-3.png b/tests/Images/ReferenceOutput/Issue_323/DrawPolygonMustDrawoutlineOnly_Rgba32_Solid300x300_(255,255,255,255)_scale-3.png
index 3c09cb14..a100d287 100644
--- a/tests/Images/ReferenceOutput/Issue_323/DrawPolygonMustDrawoutlineOnly_Rgba32_Solid300x300_(255,255,255,255)_scale-3.png
+++ b/tests/Images/ReferenceOutput/Issue_323/DrawPolygonMustDrawoutlineOnly_Rgba32_Solid300x300_(255,255,255,255)_scale-3.png
@@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
-oid sha256:20161b9743eeb3235cf4bb2dcf458ab27a4f41640670d7f932e48fce11dea7c1
-size 2445
+oid sha256:4a6ef5161ed0f50e7f92be0415c980747208f28e1c36595387a4381f29808a8c
+size 1347
diff --git a/tests/Images/ReferenceOutput/Issue_367/BrushAndTextAlign_Rgba32.png b/tests/Images/ReferenceOutput/Issue_367/BrushAndTextAlign_Rgba32.png
index f90517ab..920eeb24 100644
--- a/tests/Images/ReferenceOutput/Issue_367/BrushAndTextAlign_Rgba32.png
+++ b/tests/Images/ReferenceOutput/Issue_367/BrushAndTextAlign_Rgba32.png
@@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
-oid sha256:e98c9c4463af4d0fd9c067f5cabad7fb8e2789e4cdd8f78b2887cc102b5fdb76
-size 8216
+oid sha256:3a3ac3c4b0fa33dd5a277497f989b93f9e74937aff2b9b910082b8c855d54a8b
+size 8367
diff --git a/tests/Images/ReferenceOutput/Issue_397/DrawTextWithIntersectingClip_Difference_IntersectingClip.png b/tests/Images/ReferenceOutput/Issue_397/DrawTextWithIntersectingClip_Difference_IntersectingClip.png
index 58b315c8..c1557ee7 100644
--- a/tests/Images/ReferenceOutput/Issue_397/DrawTextWithIntersectingClip_Difference_IntersectingClip.png
+++ b/tests/Images/ReferenceOutput/Issue_397/DrawTextWithIntersectingClip_Difference_IntersectingClip.png
@@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
-oid sha256:8ad2cc6db3c251696f6cc0fb5bc93113d74b734fcad67dd1b4f2e3d804bc9b50
-size 4528
+oid sha256:192c3cd765feeef8f0b5a34295a61b129af869d819de6601b3c4ba6e48961374
+size 4600
diff --git a/tests/Images/ReferenceOutput/Issue_397/DrawTextWithIntersectingClip_Intersection_IntersectingClip.png b/tests/Images/ReferenceOutput/Issue_397/DrawTextWithIntersectingClip_Intersection_IntersectingClip.png
index 1e38ccd9..60249b2b 100644
--- a/tests/Images/ReferenceOutput/Issue_397/DrawTextWithIntersectingClip_Intersection_IntersectingClip.png
+++ b/tests/Images/ReferenceOutput/Issue_397/DrawTextWithIntersectingClip_Intersection_IntersectingClip.png
@@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
-oid sha256:47292cb9c07898302dbdd5687a412bcbf13a7c5f8cbb5ee9461b754a1daed3e6
-size 4260
+oid sha256:c3182516e904f7069752444240f7ac0d90337175cb8c48739a348ef42bab7c69
+size 4330
diff --git a/tests/Images/ReferenceOutput/Issue_397/DrawTextWithNonIntersectingClip_Difference_NonIntersectingClip.png b/tests/Images/ReferenceOutput/Issue_397/DrawTextWithNonIntersectingClip_Difference_NonIntersectingClip.png
index ccdabf93..1f08251c 100644
--- a/tests/Images/ReferenceOutput/Issue_397/DrawTextWithNonIntersectingClip_Difference_NonIntersectingClip.png
+++ b/tests/Images/ReferenceOutput/Issue_397/DrawTextWithNonIntersectingClip_Difference_NonIntersectingClip.png
@@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
-oid sha256:a094b1e054ee115fb4442da7b4bb70790be0cedef7a644e809eadb517fc155b4
-size 4619
+oid sha256:18d66c60ec48153e1bdc95c05eadfe6eaffd8d9c3d18e7c6027b38dc56c479ce
+size 4739
diff --git a/tests/Images/ReferenceOutput/Issue_397/DrawTextWithNonIntersectingClip_Intersection_NonIntersectingClip.png b/tests/Images/ReferenceOutput/Issue_397/DrawTextWithNonIntersectingClip_Intersection_NonIntersectingClip.png
index 567ef2b5..819a0e3c 100644
--- a/tests/Images/ReferenceOutput/Issue_397/DrawTextWithNonIntersectingClip_Intersection_NonIntersectingClip.png
+++ b/tests/Images/ReferenceOutput/Issue_397/DrawTextWithNonIntersectingClip_Intersection_NonIntersectingClip.png
@@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
-oid sha256:c203d177d846b0d2ed5096d3d38c0d04185a2e97d1d65f9f2ed0486214b658ff
-size 2684
+oid sha256:9deb115879382e982756b7d15a5628e1a9a5d977eb9c9806d66ea404fcc123b8
+size 4183
diff --git a/tests/Images/ReferenceOutput/Issue_462/CanDrawEmojiFont_Rgba32_Solid492x360_(255,255,255,255)_ColrV1-draw.png b/tests/Images/ReferenceOutput/Issue_462/CanDrawEmojiFont_Rgba32_Solid492x360_(255,255,255,255)_ColrV1-draw.png
index 502f73f1..d515d67d 100644
--- a/tests/Images/ReferenceOutput/Issue_462/CanDrawEmojiFont_Rgba32_Solid492x360_(255,255,255,255)_ColrV1-draw.png
+++ b/tests/Images/ReferenceOutput/Issue_462/CanDrawEmojiFont_Rgba32_Solid492x360_(255,255,255,255)_ColrV1-draw.png
@@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
-oid sha256:da8bff3af82c6d1149bea640e90708da354ab4062dc9e895d882d093c9fe71be
-size 33481
+oid sha256:154cdeaf698de95a44d51cd604f7c809585e7d81ed1926bc9e494bb13bf887b1
+size 33453
diff --git a/tests/Images/ReferenceOutput/Issue_462/CanDrawEmojiFont_Rgba32_Solid492x360_(255,255,255,255)_ColrV1-fill.png b/tests/Images/ReferenceOutput/Issue_462/CanDrawEmojiFont_Rgba32_Solid492x360_(255,255,255,255)_ColrV1-fill.png
index ec77bc3a..333d9fb2 100644
--- a/tests/Images/ReferenceOutput/Issue_462/CanDrawEmojiFont_Rgba32_Solid492x360_(255,255,255,255)_ColrV1-fill.png
+++ b/tests/Images/ReferenceOutput/Issue_462/CanDrawEmojiFont_Rgba32_Solid492x360_(255,255,255,255)_ColrV1-fill.png
@@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
-oid sha256:e72630fdbaa894bc88afad18d1c71fa8dfac0a8b47bae90f06049a37d7ae9e80
-size 10710
+oid sha256:f28d3e2316518999506e1afcfd3ede9a78b1ace1eb507fd9feed87d524d59c32
+size 10649
diff --git a/tests/Images/ReferenceOutput/Issue_462/CanDrawEmojiFont_Rgba32_Solid492x360_(255,255,255,255)_Svg-draw.png b/tests/Images/ReferenceOutput/Issue_462/CanDrawEmojiFont_Rgba32_Solid492x360_(255,255,255,255)_Svg-draw.png
index 4650ff47..d4461be9 100644
--- a/tests/Images/ReferenceOutput/Issue_462/CanDrawEmojiFont_Rgba32_Solid492x360_(255,255,255,255)_Svg-draw.png
+++ b/tests/Images/ReferenceOutput/Issue_462/CanDrawEmojiFont_Rgba32_Solid492x360_(255,255,255,255)_Svg-draw.png
@@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
-oid sha256:a2182ed34ca7ccefe6c117302e90b55b1f751857596acbda7e801e223424c994
-size 33498
+oid sha256:fa5a25544ae7ddb9aa9452c336697054d1751c8776eecb51cd6fde3d7131bd6d
+size 33539
diff --git a/tests/Images/ReferenceOutput/Issue_462/CanDrawEmojiFont_Rgba32_Solid492x360_(255,255,255,255)_Svg-fill.png b/tests/Images/ReferenceOutput/Issue_462/CanDrawEmojiFont_Rgba32_Solid492x360_(255,255,255,255)_Svg-fill.png
index ec77bc3a..333d9fb2 100644
--- a/tests/Images/ReferenceOutput/Issue_462/CanDrawEmojiFont_Rgba32_Solid492x360_(255,255,255,255)_Svg-fill.png
+++ b/tests/Images/ReferenceOutput/Issue_462/CanDrawEmojiFont_Rgba32_Solid492x360_(255,255,255,255)_Svg-fill.png
@@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
-oid sha256:e72630fdbaa894bc88afad18d1c71fa8dfac0a8b47bae90f06049a37d7ae9e80
-size 10710
+oid sha256:f28d3e2316518999506e1afcfd3ede9a78b1ace1eb507fd9feed87d524d59c32
+size 10649