public SkiaGraphicsView(Context context, IDrawable drawable = null) : base(context) { _scale = Resources.DisplayMetrics.Density; _canvas = new SkiaCanvas(); _scalingCanvas = new ScalingCanvas(_canvas); Drawable = drawable; }
public SkiaBitmapExportContext( int width, int height, float displayScale, int dpi = 72, bool disposeBitmap = true, bool transparent = true) : base(width, height, dpi) { if (transparent) { var imageInfo = new SKImageInfo(width, height, SKColorType.Rgba8888, SKAlphaType.Premul); _surface = SKSurface.Create(imageInfo); } else { var imageInfo = new SKImageInfo(width, height, SKColorType.Rgb565, SKAlphaType.Opaque); _surface = SKSurface.Create(imageInfo); } if (_surface == null) { Logger.Warn("Unable to create a Skia surface"); return; } _skiaCanvas = _surface.Canvas; var nativeCanvas = new SkiaCanvas { Canvas = _skiaCanvas, DisplayScale = displayScale }; _canvas = new ScalingCanvas(nativeCanvas); _disposeBitmap = disposeBitmap; }
public override void Dispose() { if (_skiaCanvas != null) { _skiaCanvas.Dispose(); _skiaCanvas = null; } if (_surface != null) { _surface.Dispose(); _surface = null; } if (_image != null) { _image.Dispose(); _image = null; } if (_bitmap != null && _disposeBitmap) { _bitmap.Dispose(); _bitmap = null; } _canvas = null; base.Dispose(); }
public NativeGraphicsView(Context context, IAttributeSet attrs, IDrawable drawable = null) : base(context, attrs) { _scale = Resources.DisplayMetrics.Density; _canvas = new NativeCanvas(context); _scalingCanvas = new ScalingCanvas(_canvas); Drawable = drawable; }
public SkiaGraphicsView(IDrawable?drawable = null) { _canvas = new SkiaCanvas(); _scalingCanvas = new ScalingCanvas(_canvas); Drawable = drawable; PaintSurface += OnPaintSurface; }
public GraphicsTimePicker(Context context) : base(context) { _scale = Resources?.DisplayMetrics?.Density ?? 1; _canvas = new PlatformCanvas(context); _scalingCanvas = new ScalingCanvas(_canvas); Touch += OnTouch; }
public SkiaGraphicsView(EvasObject parent, IDrawable drawable = null) : base(parent) { _canvas = new SkiaCanvas(); _scalingCanvas = new ScalingCanvas(_canvas); Drawable = drawable; PaintSurface += OnPaintSurface; IgnorePixelScaling = true; }
public GraphicsEditor(Context context) : base(context) { _scale = Resources?.DisplayMetrics?.Density ?? 1; _canvas = new PlatformCanvas(context); _scalingCanvas = new ScalingCanvas(_canvas); Background = null; }
public NativeBitmapExportContext(int width, int height, float displayScale = 1, int dpi = 72, bool disposeBitmap = true, bool transparent = true) : base(width, height, dpi) { _bitmap = Bitmap.CreateBitmap( width, height, transparent ? Bitmap.Config.Argb8888 : Bitmap.Config.Rgb565); _androidCanvas = new Canvas(_bitmap); var nativeCanvas = new NativeCanvas(null) { Canvas = _androidCanvas, }; _canvas = new ScalingCanvas(nativeCanvas) { DisplayScale = displayScale }; _disposeBitmap = disposeBitmap; }
public static Bitmap GetPatternBitmap( this Paint paint, float scaleX, float scaleY) { var pattern = paint?.Pattern; if (pattern == null) { return(null); } using (var context = new NativeBitmapExportContext((int)(pattern.Width * scaleX), (int)(pattern.Height * scaleY), disposeBitmap: false)) { var scalingCanvas = new ScalingCanvas(context.Canvas); scalingCanvas.Scale(scaleX, scaleY); pattern.Draw(scalingCanvas); return(context.Bitmap); } }
public SkiaGraphicsView(IDrawable drawable = null) { _canvas = new SkiaCanvas(); _scalingCanvas = new ScalingCanvas(_canvas); Drawable = drawable; }
public DirectRenderer(Context context) { _canvas = new NativeCanvas(context); _scalingCanvas = new ScalingCanvas(_canvas); }
public WDSkiaDirectRenderer() { _canvas = new SkiaCanvas(); _scalingCanvas = new ScalingCanvas(_canvas); }