public CanvasStyle(CanvasPath path, Brush fill, Brush stroke, double strokeWidth, PenLineJoin strokeLineJoin,
                    PenLineCap lineCap, float strokeMiterLimit, double globalAlpha)
 {
     _path = path;
     _fill = fill;
     _stroke = stroke;
     _strokeWidth = strokeWidth;
     _strokeLineJoin = strokeLineJoin;
     _lineCap = lineCap;
     _globalAlpha = globalAlpha;
     _strokeMiterLimit = strokeMiterLimit;
 }
 public CanvasStyle(CanvasPath path)
 {
     _path = path;
 }
        public CanvasRenderingContext2D(Canvas surface, object container, bool visible)
        {
            _surface = surface;
            _path = new CanvasPath(_surface);
            _stack = new Stack<CanvasState>();
            _visible = visible;
            _container = container;
            SetDefaultValues();
            OnPartialDraw += CanvasRenderingContext2D_OnPartialDraw;

            PluginShaderFilter();
        }