3 changed files with 45 additions and 0 deletions
@ -0,0 +1,32 @@ |
|||
using Avalonia.Platform; |
|||
using Avalonia.Rendering; |
|||
|
|||
namespace Avalonia.Skia |
|||
{ |
|||
internal class ExternalCanvasRenderTarget : IRenderTarget |
|||
{ |
|||
private IExternalCanvasSurface _surface; |
|||
|
|||
public ExternalCanvasRenderTarget(IExternalCanvasSurface canvas) |
|||
{ |
|||
_surface = canvas; |
|||
} |
|||
|
|||
public IDrawingContextImpl CreateDrawingContext(IVisualBrushRenderer visualBrushRenderer) |
|||
{ |
|||
var createInfo = new DrawingContextImpl.CreateInfo |
|||
{ |
|||
Canvas = _surface.Canvas, |
|||
Dpi = _surface.Dpi, |
|||
VisualBrushRenderer = visualBrushRenderer, |
|||
DisableTextLcdRendering = true, |
|||
}; |
|||
|
|||
return new DrawingContextImpl(createInfo); |
|||
} |
|||
|
|||
public void Dispose() |
|||
{ |
|||
} |
|||
} |
|||
} |
|||
@ -0,0 +1,11 @@ |
|||
using SkiaSharp; |
|||
|
|||
namespace Avalonia.Skia |
|||
{ |
|||
public interface IExternalCanvasSurface |
|||
{ |
|||
SKCanvas Canvas { get; } |
|||
|
|||
Vector Dpi { get; } |
|||
} |
|||
} |
|||
Loading…
Reference in new issue