Browse Source

Fix drawing on transparent background

pull/91/head
Scott Williams 9 years ago
parent
commit
07b5ff4e2d
  1. 1
      src/ImageSharp.Drawing/Processors/DrawPathProcessor.cs
  2. 1
      src/ImageSharp.Drawing/Processors/FillRegionProcessor.cs
  3. 3
      tests/ImageSharp.Tests/Drawing/SolidPolygonTests.cs

1
src/ImageSharp.Drawing/Processors/DrawPathProcessor.cs

@ -110,7 +110,6 @@ namespace ImageSharp.Drawing.Processors
Vector4 sourceVector = color.Color.ToVector4();
Vector4 finalColor = Vector4BlendTransforms.PremultipliedLerp(backgroundVector, sourceVector, opacity);
finalColor.W = backgroundVector.W;
TColor packed = default(TColor);
packed.PackFromVector4(finalColor);

1
src/ImageSharp.Drawing/Processors/FillRegionProcessor.cs

@ -202,7 +202,6 @@ namespace ImageSharp.Drawing.Processors
Vector4 sourceVector = applicator[x, y].ToVector4();
Vector4 finalColor = Vector4BlendTransforms.PremultipliedLerp(backgroundVector, sourceVector, opacity);
finalColor.W = backgroundVector.W;
TColor packed = default(TColor);
packed.PackFromVector4(finalColor);

3
tests/ImageSharp.Tests/Drawing/SolidPolygonTests.cs

@ -32,7 +32,6 @@ namespace ImageSharp.Tests.Drawing
using (FileStream output = File.OpenWrite($"{path}/Simple.png"))
{
image
.BackgroundColor(Color.Blue)
.FillPolygon(Color.HotPink, simplePath, new GraphicsOptions(true))
.Save(output);
}
@ -45,7 +44,7 @@ namespace ImageSharp.Tests.Drawing
Assert.Equal(Color.HotPink, sourcePixels[50, 50]);
Assert.Equal(Color.Blue, sourcePixels[2, 2]);
Assert.NotEqual(Color.HotPink, sourcePixels[2, 2]);
}
}
}

Loading…
Cancel
Save