Esempio n. 1
0
        //==========================================================================
        public override Drawing GetBaseDrawing()
        {
            if (Data == null)
            {
                return(null);
            }
            ImageSource imageSource = null;

            switch (DataType)
            {
            case "jpeg":
            case "png":
                var bmp = new BitmapImage();
                bmp.BeginInit();
                bmp.StreamSource = new MemoryStream(Data);
                bmp.EndInit();
                imageSource = bmp;
                break;

            case "svg+xml":
                imageSource = SvgReader.Load(new MemoryStream(Data));
                break;
            }
            if (imageSource == null)
            {
                return(null);
            }
            return(new ImageDrawing(imageSource, new Rect(
                                        new Point(X.ToDouble(), Y.ToDouble()),
                                        new Size(Width.ToDouble(), Height.ToDouble())
                                        )));
        }
Esempio n. 2
0
 //==========================================================================
 public override Geometry GetBaseGeometry()
 {
     return(new RectangleGeometry(new Rect(new Point(X.ToDouble(), Y.ToDouble()),
                                           new Size(Width.ToDouble(), Height.ToDouble())),
                                  CornerRadiusX.ToDouble(),
                                  CornerRadiusY.ToDouble()));
 }
        //==========================================================================
        public override Drawing GetBaseDrawing()
        {
            if (Data == null)
            {
                return(null);
            }

            string temp_file = Path.GetTempFileName();

            using (FileStream file_stream = new FileStream(temp_file, FileMode.Create, FileAccess.Write))
                using (BinaryWriter writer = new BinaryWriter(file_stream))
                    writer.Write(Data);

            return(new ImageDrawing(new BitmapImage(new Uri(temp_file)), new Rect(
                                        new Point(X.ToDouble(), Y.ToDouble()),
                                        new Size(Width.ToDouble(), Height.ToDouble())
                                        )));
        }
Esempio n. 4
0
        //==========================================================================
        public override Geometry GetBaseGeometry()
        {
            var eg = new EllipseGeometry(
                new Point(CenterX.ToDouble(),
                          CenterY.ToDouble()),
                Radius.ToDouble(),
                Radius.ToDouble());

            return(eg);
        }
Esempio n. 5
0
        //==========================================================================
        protected override GradientBrush SetBrush(GradientBrush brush)
        {
            LinearGradientBrush linear_gradient_brush = base.SetBrush(brush) as LinearGradientBrush;

            if (linear_gradient_brush != null)
            {
                linear_gradient_brush.StartPoint = new Point(X1.ToDouble(), Y1.ToDouble());
                linear_gradient_brush.EndPoint   = new Point(X2.ToDouble(), Y2.ToDouble());
            }
            return(brush);
        }
        //==========================================================================
        protected override GradientBrush SetBrush(GradientBrush brush)
        {
            RadialGradientBrush radial_gradient_brush = base.SetBrush(brush) as RadialGradientBrush;

            if (radial_gradient_brush != null)
            {
                double cx = CX.ToDouble();
                double cy = CY.ToDouble();
                double fx = (FX != null) ? FX.ToDouble() : cx;
                double fy = (FY != null) ? FY.ToDouble() : cy;

                radial_gradient_brush.GradientOrigin = new Point(fx, fy);
                radial_gradient_brush.RadiusX        = R.ToDouble();
                radial_gradient_brush.RadiusY        = R.ToDouble();
                radial_gradient_brush.Center         = new Point(cx, cy);
            }
            return(brush);
        }
 //==========================================================================
 public override Geometry GetBaseGeometry()
 {
     return(new EllipseGeometry(
                new Point(CenterX.ToDouble(), CenterY.ToDouble()), RadiusX.ToDouble(),
                RadiusY.ToDouble()));
 }
Esempio n. 8
0
 //==========================================================================
 public override Geometry GetBaseGeometry()
 {
     return(new LineGeometry(new Point(X1.ToDouble(), Y1.ToDouble()),
                             new Point(X2.ToDouble(), Y2.ToDouble())));
 }