public ApiResponse CropAndSave(int id, byte[] Image) { var obj = Context.MultimediaObjects.FirstOrDefault(p => p.Id == id); var typ = Context.Types.FirstOrDefault(m => m.Id == obj.TypeId); ImageProcesorHelper.ResizeImageResult resizeResult = ImageProcesorHelper.ResizeImage(typ.Width, typ.Height, Image); Image = resizeResult.ResizedImage; byte[] thumbnail = resizeResult.Thumbnail; obj.Contents = Image; obj.Content = Image; obj.FileContent = Convert.ToBase64String(Image); obj.Thumbnail = thumbnail; Context.SaveChanges(); var response = new ApiResponse(); response.Accepted = true; return(response); }
public void Can_Resize_Images() { ImageProcesorHelper.ResizeImageResult resizeResult = null; Image newImage = null; /// Test zmiany rozmiaru obrazka na 500x500 bez miniaturki var bmp1 = ImageToByte(Properties.Resources.Chrysanthemum); resizeResult = ImageProcesorHelper.ResizeImage(500, 500, bmp1, false); Assert.IsNotNull(resizeResult); Assert.IsNotNull(resizeResult.ResizedImage); Assert.IsNull(resizeResult.Thumbnail); newImage = ByteArrayToImage(resizeResult.ResizedImage); Assert.AreEqual(500, newImage.Width); Assert.AreEqual(500, newImage.Height); ///Test zmiany obrazka na rozmiar taki sam jaki ma obrazek oryginalny bez miniaturki var bmp2 = Properties.Resources.Desert; resizeResult = ImageProcesorHelper.ResizeImage(bmp2.Width, bmp2.Height, ImageToByte(bmp2), false); Assert.IsNotNull(resizeResult); Assert.IsNotNull(resizeResult.ResizedImage); Assert.IsNull(resizeResult.Thumbnail); newImage = ByteArrayToImage(resizeResult.ResizedImage); Assert.AreEqual(bmp2.Width, newImage.Width); Assert.AreEqual(bmp2.Height, newImage.Height); ///Test wygenerowania miniaturki var bmp3 = Properties.Resources.Hydrangeas; resizeResult = ImageProcesorHelper.ResizeImage(bmp3.Width, bmp3.Height, ImageToByte(bmp3), true); Assert.IsNotNull(resizeResult); Assert.IsNotNull(resizeResult.ResizedImage); Assert.IsNotNull(resizeResult.Thumbnail); newImage = ByteArrayToImage(resizeResult.Thumbnail); Assert.IsTrue(newImage.Width == ImageProcesorHelper.ThumbnailSize && newImage.Height == ImageProcesorHelper.ThumbnailSize); }