Exemple #1
0
        public override Brush GetBrush(double opacity, SVG svg, SVGRender svgRender, Rect bounds)
        {
            var db = new DrawingBrush()
            {
                Drawing = svgRender.LoadGroup(m_elements, null, false)
            };

            db.TileMode      = TileMode.Tile;
            db.Transform     = PatternTransform;
            db.Viewport      = new Rect(X, Y, Width / bounds.Width, Height / bounds.Height);
            db.ViewportUnits = BrushMappingMode.RelativeToBoundingBox;
            return(db);
        }
        public override Brush GetBrush(double opacity, SVG svg, SVGRender svgRender, Rect bounds)
        {
            if (Brush != null)
            {
                return(Brush);
            }
            foreach (var server in m_pattternPaintServers)
            {
                svgRender.SVG.PaintServers.AddServer(server.Key, server.Value);
            }

            var db = new DrawingBrush()
            {
                Drawing = svgRender.LoadGroup(m_elements, null, false)
            };

            db.TileMode      = TileMode.Tile;
            db.Transform     = PatternTransform;
            db.Viewport      = new Rect(X, Y, Width / bounds.Width, Height / bounds.Height);
            db.ViewportUnits = BrushMappingMode.RelativeToBoundingBox;
            Brush            = db;
            return(db);
        }