Beispiel #1
0
        public void SaveUsesInitialFormatWhenNoFormatIsSpecified()
        {
            // Arrange
            string                  savePath   = @"x:\some-dir\image.png";
            MemoryStream            stream     = null;
            Action <string, byte[]> saveAction = (path, content) =>
            {
                stream = new MemoryStream(content);
            };
            var image = new WebImage(_PngImageBytes);

            // Act
            image.FlipVertical().FlipHorizontal();

            // Assert
            image.Save(
                GetContext(),
                saveAction,
                savePath,
                imageFormat: null,
                forceWellKnownExtension: true
                );

            using (Image savedImage = Image.FromStream(stream))
            {
                Assert.Equal(savedImage.RawFormat, ImageFormat.Png);
            }
        }
        public ActionResult GetImage(ImageAction imageaction)
        {
            WebImage image = new WebImage(Server.MapPath("~/images/twmvclogo.png"));


            switch (imageaction)
            {
            case ImageAction.Resize:
                image = image.Resize(100, 100);
                break;

            case ImageAction.Flip:
                image = image.FlipVertical();
                break;

            case ImageAction.Watermark:
                image = image.AddTextWatermark("TW MVC");
                break;

            case ImageAction.Crop:
                image = image.Crop(50, 50, 50, 50);
                break;

            default:
                throw new ArgumentException("尚未實作");
            }

            return(File(image.GetBytes(), "image/png"));
        }
Beispiel #3
0
        public void GetImage(string horizontalFlip = "", string verticalFlip = "",
                             string rotateLeft     = "", string rotateRight  = "")
        {
            var imagePath = Server.MapPath("~/images/bunny-peanuts.jpg");
            var image     = new WebImage(imagePath);

            if (!string.IsNullOrWhiteSpace(verticalFlip))
            {
                image = image.FlipVertical();
            }
            if (!string.IsNullOrWhiteSpace(horizontalFlip))
            {
                image = image.FlipHorizontal();
            }
            if (!string.IsNullOrWhiteSpace(rotateLeft))
            {
                image = image.RotateLeft();
            }
            if (!string.IsNullOrWhiteSpace(rotateRight))
            {
                image = image.RotateRight();
            }

            image.Write();
        }
Beispiel #4
0
        public void FlipVerticalReturnsFlippedImage()
        {
            WebImage image = new WebImage(_PngImageBytes);

            image.FlipVertical();

            Assert.Equal(160, image.Width);
            Assert.Equal(152, image.Height);
        }
Beispiel #5
0
        public void Process(string p)
        {
            WebImage image = new WebImage(this.ImagePath);

            switch (p)
            {
            case "Original":
                break;

            case "RotateLeft":
                image.RotateLeft();
                break;

            case "RotateRight":
                image.RotateRight();
                break;

            case "FlipHorizontal":
                image.FlipHorizontal();
                break;

            case "FlipVertical":
                image.FlipVertical();
                break;

            case "Resize":
                image.Resize(image.Width / 2, image.Height / 2, preserveAspectRatio: true);
                break;

            case "AddTextWatermark":
                image.AddTextWatermark("Elif Furuncu", fontColor: "Red", fontSize: 14, horizontalAlign: "Center", verticalAlign: "Bottom");
                break;

            case "AddImageWatermark":
                WebImage watermark = new WebImage(this.ImagePath);
                watermark.Resize(50, 50);
                watermark = watermark.Save(Server.MapPath("~/images/watermark.jpeg"), imageFormat: "jpeg");
                image.AddImageWatermark(watermark.FileName, 50, 50, verticalAlign: "Top", horizontalAlign: "Right", opacity: 75);
                break;

            case "Crop":
                image.Crop(0, 0, 100, 100);
                break;

            default:
                break;
            }

            string savePath = Server.MapPath("~/images/last.jpeg");

            WebImage savedImage = image.Save(savePath, imageFormat: "jpeg");


            image.Write();
        }
        public void FlipVerticalReturnsFlippedImage()
        {
            WebImage image = new WebImage(_PngImageBytes);
            image.FlipVertical();

            Assert.Equal(160, image.Width);
            Assert.Equal(152, image.Height);
        }
        public void SaveUsesInitialFormatWhenNoFormatIsSpecified()
        {
            // Arrange
            string savePath = @"x:\some-dir\image.png";
            MemoryStream stream = null;
            Action<string, byte[]> saveAction = (path, content) => { stream = new MemoryStream(content); };
            var image = new WebImage(_PngImageBytes);

            // Act 
            image.FlipVertical().FlipHorizontal();

            // Assert
            image.Save(GetContext(), saveAction, savePath, imageFormat: null, forceWellKnownExtension: true);

            using (Image savedImage = Image.FromStream(stream))
            {
                Assert.Equal(savedImage.RawFormat, ImageFormat.Png);
            }
        }