Exemplo n.º 1
0
        public MediaRenditionInfo Scale(float scale)
        {
            var a = MediaTransformation.ParsePath(path);

            var b = new MediaTransformation(a.Source, a.Format);

            foreach (var transform in a.GetTransforms())
            {
                if (transform is Resize)
                {
                    var resize = (Resize)transform;

                    b.Transform(new Resize(resize.Size.Scale(scale)));
                }
                else if (transform is AnchoredResize)
                {
                    var resize = (AnchoredResize)transform;

                    b.Transform(new AnchoredResize(resize.Size.Scale(scale), resize.Anchor));
                }
                else if (transform is Crop)
                {
                    var crop = (Crop)transform;

                    b.Transform(new Crop(crop.Rectangle.Scale(scale)));
                }
                else
                {
                    b.Transform(transform);
                }
            }

            return new MediaRenditionInfo(b.Width, b.Height, b.GetPath());
        }
Exemplo n.º 2
0
 public MediaRenditionInfo(MediaTransformation transformation)
     : this(transformation, transformation.GetPath())
 { }