Browse Source

Enable antialiasing for PushGeometryClip

pull/6374/head
Wiesław Šoltés 5 years ago
parent
commit
39e7d362b2
  1. 2
      src/Skia/Avalonia.Skia/DrawingContextImpl.cs
  2. 3
      src/Windows/Avalonia.Direct2D1/Media/DrawingContextImpl.cs

2
src/Skia/Avalonia.Skia/DrawingContextImpl.cs

@ -506,7 +506,7 @@ namespace Avalonia.Skia
public void PushGeometryClip(IGeometryImpl clip)
{
Canvas.Save();
Canvas.ClipPath(((GeometryImpl)clip).EffectivePath);
Canvas.ClipPath(((GeometryImpl)clip).EffectivePath, SKClipOperation.Intersect, true);
}
/// <inheritdoc />

3
src/Windows/Avalonia.Direct2D1/Media/DrawingContextImpl.cs

@ -541,7 +541,8 @@ namespace Avalonia.Direct2D1.Media
ContentBounds = PrimitiveExtensions.RectangleInfinite,
MaskTransform = PrimitiveExtensions.Matrix3x2Identity,
Opacity = 1,
GeometricMask = ((GeometryImpl)clip).Geometry
GeometricMask = ((GeometryImpl)clip).Geometry,
MaskAntialiasMode = AntialiasMode.PerPrimitive
};
var layer = _layerPool.Count != 0 ? _layerPool.Pop() : new Layer(_deviceContext);
_deviceContext.PushLayer(ref parameters, layer);

Loading…
Cancel
Save