/// <inheritdoc /> public IRenderTarget CreateRenderTarget(IEnumerable <object> surfaces) { if (_customSkiaGpu != null) { ICustomSkiaRenderTarget customRenderTarget = _customSkiaGpu.TryCreateRenderTarget(surfaces); if (customRenderTarget != null) { return(new CustomRenderTarget(customRenderTarget)); } } foreach (var surface in surfaces) { if (surface is IGlPlatformSurface glSurface && GrContext != null) { return(new GlRenderTarget(GrContext, glSurface)); } if (surface is IFramebufferPlatformSurface framebufferSurface) { return(new FramebufferRenderTarget(framebufferSurface)); } } throw new NotSupportedException( "Don't know how to create a Skia render target from any of provided surfaces"); }
public CustomRenderTarget(ICustomSkiaRenderTarget renderTarget) { _renderTarget = renderTarget; }