private string UploadCover(HttpPostedFileBase file) { // Initialize variables we'll need for resizing and saving var width = 240; var height = 240; var relativeFileAndPath = "/Uploads/default"; var fileName = Guid.NewGuid().ToString() + file.FileName.Substring(file.FileName.LastIndexOf('.')); // Build absolute path var absPath = HttpContext.Server.MapPath(relativeFileAndPath); var absFileAndPath = absPath + "\\" + fileName; // Create directory as necessary and save image on server if (!Directory.Exists(absPath)) { Directory.CreateDirectory(absPath); } file.SaveAs(absFileAndPath); // Resize image using "ImageResizer" NuGet package. var resizeSettings = new ImageResizer.ResizeSettings { Scale = ImageResizer.ScaleMode.DownscaleOnly, Width = width, Height = height, Mode = ImageResizer.FitMode.Crop }; var b = ImageResizer.ImageBuilder.Current.Build(absFileAndPath, resizeSettings); // Save resized image b.Save(absFileAndPath); // Return relative file path return(relativeFileAndPath + "/" + fileName); }
public ImageResizer.Encoding.IEncoder CreateIfSuitable(ImageResizer.ResizeSettings settings, object original) { if ("bmp".Equals(settings.Format, StringComparison.OrdinalIgnoreCase)) { return(new BmpEncoder()); } return(null); }
private void FileLoader_DoWork(object sender, DoWorkEventArgs e) { ImageResizer.ImageInfo image = ImageResizer.ImageInfo.Build(e.Argument); ImageResizer.ResizeSettings settings = new ImageResizer.ResizeSettings(); settings.ScaleMode = ImageResizer.ScaleMode.None; //image.ResizeImage(settings); e.Result = image; }
//It don't work yet, resize is resolved in browser for now public void ResizeImage(HttpPostedFileBase imageUpload) { ImageResizer.ResizeSettings resizeSettings = new ImageResizer.ResizeSettings { Width = 200, Height = 200 }; ImageResizer.ImageBuilder.Current.Build(imageUpload, imageUpload, resizeSettings); }
private string UploadPhoto(HttpPostedFileBase file) { // Initialize variables we'll need for resizing and saving var widthThumnail = 240; var heightThumnail = 173; var widthLightBox = 1074; var heightLightBox = 768; var relativeFileAndPath = "/Uploads/default"; var idFile = Guid.NewGuid().ToString(); var fileNameThumnail = idFile + "_thumnail" + file.FileName.Substring(file.FileName.LastIndexOf('.')); var fileNameLightBox = idFile + "_lightbox" + file.FileName.Substring(file.FileName.LastIndexOf('.')); var fileNameFull = idFile + file.FileName.Substring(file.FileName.LastIndexOf('.')); // Build absolute path var absPath = HttpContext.Server.MapPath(relativeFileAndPath); var absFileThumnail = absPath + "\\" + fileNameThumnail; var absFileLightBox = absPath + "\\" + fileNameLightBox; var absFileFull = absPath + "\\" + fileNameFull; // Create directory as necessary and save image on server if (!Directory.Exists(absPath)) { Directory.CreateDirectory(absPath); } file.SaveAs(absFileThumnail); file.SaveAs(absFileLightBox); file.SaveAs(absFileFull); // Resize image using "ImageResizer" NuGet package. var resizeThumnail = new ImageResizer.ResizeSettings { Scale = ImageResizer.ScaleMode.DownscaleOnly, Width = widthThumnail, Height = heightThumnail, Mode = ImageResizer.FitMode.Crop }; var b = ImageResizer.ImageBuilder.Current.Build(absFileThumnail, resizeThumnail); var resizeLightBox = new ImageResizer.ResizeSettings { Scale = ImageResizer.ScaleMode.DownscaleOnly, Width = widthLightBox, Height = heightLightBox, Mode = ImageResizer.FitMode.Crop }; var c = ImageResizer.ImageBuilder.Current.Build(absFileThumnail, resizeLightBox); // Save resized image b.Save(absFileThumnail); c.Save(absFileLightBox); // Return relative file path return(relativeFileAndPath + "/" + fileNameFull); }
public MemoryStream ResizeImagePreportional(Stream blobStream, int maxWidth, int maxHeight) { //Resize Image ImageResizer.ResizeSettings settings = new ImageResizer.ResizeSettings(); settings.MaxHeight = maxHeight; settings.MaxWidth = maxWidth; settings.Mode = ImageResizer.FitMode.Max; MemoryStream outputStream = new MemoryStream(); ImageResizer.ImageBuilder.Current.Build(blobStream, outputStream, settings); return(outputStream); }
/// <summary> /// Husk disse værdier!! /// Husk at lave mapperne som den skal gemmes i. /// </summary> /// <param name="image">File som bliver sæt med på Postefile</param> /// <param name="uploadmappe">Hvor henne skal billedet bliv gemt i dens originale billed størrelse</param> /// <param name="ThumpsMappe">Hvilke Thumpsmappe skal den lige i</param> /// <param name="Croppedmappe">Hvilke CroppedeMappe skal den over i.</param> /// <param name="Width">Hvilke størrelse skal den have i bredden</param> /// <param name="Height">Hvilke størrelse skal den have i højden</param> /// <param name="MulitUploadCropped">True/false skal den lave Cropped eller ej?</param> public static void UploadMethod(HttpPostedFile image, string uploadmappe, string ThumpsMappe, string Croppedmappe, int Width, int Height, bool MulitUploadCropped) { //hent at hent "ImageResizer" til at kunne gøre det her på billedet. //laver nyt navn til billedet. //Du har mulighed for at lad være med at tag file navnet og tilføj det ovn i den unikke værdi, men du kan bare også skrive + ".png", ".jpg" eller andet hvis du ønsker det. string filename = DateTime.Now.ToFileTime() + "_" + UploadImgInput.GetRandomNumber(190, 999) + image.FileName; //Gem det originale billede på det angivet sted som du har i upload image.SaveAs(uploadmappe + filename); //definer hvordan thumbsnail skal skaleres ImageResizer.ResizeSettings billedeskalering = new ImageResizer.ResizeSettings(); //checker på om den er sat på False if (MulitUploadCropped == false) { billedeskalering.Width = Width; //udfør selv skaleringen, ImageResizer.ImageBuilder.Current.Build(uploadmappe + filename, ThumpsMappe + filename, billedeskalering); //har gjort det færdig. //Mulighed for at lige det ind i databasen her } //Checker på om den er sat til true til at skulle Croppede billedet. else if (MulitUploadCropped == true) { billedeskalering.Width = Width; //udfør selv skaleringen, ImageResizer.ImageBuilder.Current.Build(uploadmappe + filename, ThumpsMappe + filename, billedeskalering); //har gjort det færdig. billedeskalering = new ImageResizer.ResizeSettings(); billedeskalering.Width = Width; billedeskalering.Height = Height; billedeskalering.Mode = ImageResizer.FitMode.Crop; ImageResizer.ImageBuilder.Current.Build(uploadmappe + filename, Croppedmappe + filename, billedeskalering); //har gjort det færdig. //Mulighed for at lige det ind i databasen her } }
public static void UploadFile(HttpPostedFileBase file, string fileSavingPath, int imageWidth = 0, int imageHeight = 0) { //if (!Directory.Exists(imageSavingPath)) // Directory.CreateDirectory(imageSavingPath); if (System.IO.File.Exists(fileSavingPath)) { System.IO.File.Delete(fileSavingPath); } file.SaveAs(fileSavingPath); if (imageWidth > 0 && imageHeight > 0) { var resizeSettings = new ImageResizer.ResizeSettings { Scale = ImageResizer.ScaleMode.DownscaleOnly, Width = imageWidth, Height = imageHeight, Mode = ImageResizer.FitMode.Crop }; var b = ImageResizer.ImageBuilder.Current.Build(fileSavingPath, resizeSettings); b.Save(fileSavingPath); } }
public static void Run([BlobTrigger("sample-images/{name}")] Stream inputImage, //[Blob("sample-images-sm/{name}", FileAccess.Write)] Stream imageSmall, [Blob("sample-images-md/{name}", FileAccess.Write)] Stream resizedImage) { //IImageFormat format; //using (Image<Rgba32> input = Image.Load<Rgba32>(image, out format)) //{ // ResizeImage(input, imageSmall, ImageSize.Small, format); //} //image.Position = 0; //using (Image<Rgba32> input = Image.Load<Rgba32>(image, out format)) //{ // ResizeImage(input, imageMedium, ImageSize.Medium, format); //} var settings = new ImageResizer.ResizeSettings { MaxWidth = 400, Format = "png" }; }
public JsonResult FileUpload() { try { HttpPostedFile file = null; if (System.Web.HttpContext.Current.Request.Files.AllKeys.Any()) { file = System.Web.HttpContext.Current.Request.Files["HttpPostedFileBase"]; } string stamp = string.Format("{0:yyyy-MM-dd_hh-mm-ss-tt}", DateTime.Now); string filename = file.FileName; string pic = System.IO.Path.GetFileName(filename); string thumbnailpic = System.IO.Path.GetFileName(file.FileName.Split('.')[0] + "_thumb." + file.FileName.Split('.')[1]); string path = System.IO.Path.Combine( Server.MapPath("~/images/subjects"), pic); string thumbpath = System.IO.Path.Combine( Server.MapPath("~/images/subjects"), thumbnailpic); // file is uploaded file.SaveAs(path); ImageResizer.ResizeSettings resizeSetting = new ImageResizer.ResizeSettings { Width = 285, Height = 175, Format = file.FileName.Split('.')[1] }; ImageResizer.ImageBuilder.Current.Build(path, thumbpath, resizeSetting); // after successfully uploading redirect the user return(Json("File Uploaded", JsonRequestBehavior.AllowGet)); } catch { return(Json("Eror")); } }
/// <summary> /// Crops the image. /// </summary> /// <param name="bitmapContent">Content of the bitmap.</param> /// <param name="mimeType">Type of the MIME.</param> /// <returns></returns> private Stream CropImage(Stream bitmapContent, string mimeType) { if (mimeType == "image/svg+xml") { return(bitmapContent); } int[] photoCoords = _hfCropCoords.Value.Split(new char[] { ',' }, StringSplitOptions.RemoveEmptyEntries).Select(a => (int)a.AsDecimal()).ToArray(); int x = photoCoords[0]; int y = photoCoords[1]; int width = photoCoords[2]; int height = photoCoords[3]; int x2 = x + width; int y2 = y + height; System.Drawing.Bitmap bitmap = new System.Drawing.Bitmap(bitmapContent); // intentionally tell imageResizer to ignore the 3200x3200 size limit so that we can crop it first before limiting the size. var sizingPlugin = ImageResizer.Configuration.Config.Current.Plugins.Get <ImageResizer.Plugins.Basic.SizeLimiting>(); var origLimit = sizingPlugin.Limits.TotalBehavior; sizingPlugin.Limits.TotalBehavior = ImageResizer.Plugins.Basic.SizeLimits.TotalSizeBehavior.IgnoreLimits; MemoryStream croppedStream = new MemoryStream(); ImageResizer.ResizeSettings resizeCropSettings = new ImageResizer.ResizeSettings(string.Format("crop={0},{1},{2},{3}", x, y, x2, y2)); MemoryStream imageStream = new MemoryStream(); bitmap.Save(imageStream, bitmap.RawFormat); imageStream.Seek(0, SeekOrigin.Begin); // set the size limit behavior back to what it was try { ImageResizer.ImageBuilder.Current.Build(imageStream, croppedStream, resizeCropSettings); } finally { sizingPlugin.Limits.TotalBehavior = origLimit; } // Make sure Image is no bigger than maxwidth/maxheight. Default to whatever imageresizer's limits are set to int maxWidth = this.MaxImageWidth ?? sizingPlugin.Limits.TotalSize.Width; int maxHeight = this.MaxImageHeight ?? sizingPlugin.Limits.TotalSize.Height; croppedStream.Seek(0, SeekOrigin.Begin); System.Drawing.Bitmap croppedBitmap = new System.Drawing.Bitmap(croppedStream); if ((croppedBitmap.Width > maxWidth) || (croppedBitmap.Height > maxHeight)) { string resizeParams = string.Format("width={0}&height={1}", maxWidth, maxHeight); MemoryStream croppedAndResizedStream = new MemoryStream(); ImageResizer.ResizeSettings resizeSettings = new ImageResizer.ResizeSettings(resizeParams); croppedStream.Seek(0, SeekOrigin.Begin); ImageResizer.ImageBuilder.Current.Build(croppedStream, croppedAndResizedStream, resizeSettings); return(croppedAndResizedStream); } else { return(croppedStream); } }
protected void Button_Gem_Ret_Click(object sender, EventArgs e) { string pris = TextBox_Price.Text; SqlConnection conn = new SqlConnection(ConfigurationManager.ConnectionStrings["ConnectionString"].ToString()); SqlCommand cmd = new SqlCommand(); cmd.Connection = conn; cmd.CommandText = @"UPDATE products SET product_name = @name, FK_category_id = @fk_category, product_price = @price, product_storage = @storage, product_min_storage = @min_storage, product_max_storage = @max_storage, product_recomended_dirt = @dirt, product_growthtime = @growthtime, product_image_1 = @image1, product_image_2 = @image2, product_image_3 = @image3, product_description = @description, product_number = @number WHERE product_id = @product_id"; cmd.Parameters.AddWithValue("@product_id", ViewState["product_id"]); cmd.Parameters.AddWithValue("@name", TextBox_Name.Text); cmd.Parameters.AddWithValue("@number", TextBox_Productnumber.Text); cmd.Parameters.AddWithValue("@price", Convert.ToDecimal(pris)); cmd.Parameters.AddWithValue("@storage", TextBox_Storage.Text); cmd.Parameters.AddWithValue("@min_storage", TextBox_Min_Storage.Text); cmd.Parameters.AddWithValue("@max_storage", TextBox_Max_Storage.Text); cmd.Parameters.AddWithValue("@dirt", TextBox_Dirt.Text); cmd.Parameters.AddWithValue("@growthtime", TextBox_Time.Text); cmd.Parameters.AddWithValue("@description", TextBox_Description.Text); cmd.Parameters.AddWithValue("@fk_category", DropDownList_Categorys.SelectedValue); #region Image 1 string product_image1 = HiddenField_oldImage1.Value; if (FileUpload_Img1.HasFile) { //NewGuid danner uniq navn for billeder product_image1 = Guid.NewGuid() + Path.GetExtension(FileUpload_Img1.FileName); // Opret String UploadeMappe = Server.MapPath("~/images/resizer/Original_Images/"); String CroppedMappe = Server.MapPath("~/images/resizer/Croppede/"); String Filnavn = DateTime.Now.ToFileTime() + FileUpload_Img1.FileName; product_image1 = Filnavn; //Gem det orginale Billede FileUpload_Img1.SaveAs(UploadeMappe + Filnavn); // Definer hvordan ImageResizer.ResizeSettings BilledeSkalering = new ImageResizer.ResizeSettings(); //Lav nogle nye skalerings instillinger BilledeSkalering = new ImageResizer.ResizeSettings(); BilledeSkalering.Width = 120; BilledeSkalering.Height = 90; //Udfør selve skaleringen ImageResizer.ImageBuilder.Current.Build(UploadeMappe + Filnavn, CroppedMappe + Filnavn, BilledeSkalering); string old_img = HiddenField_oldImage1.Value; if (File.Exists(Server.MapPath("~/images/resizer/Croppede/") + old_img)) { File.Delete(Server.MapPath("~/images/resizer/Croppede/") + old_img); } if (File.Exists(Server.MapPath("~/images/resizer/Original_Images/") + old_img)) { File.Delete(Server.MapPath("~/images/resizer/Original_Images/") + old_img); } } cmd.Parameters.AddWithValue("@image1", product_image1); #endregion #region image 2 string product_image2 = HiddenField_oldImage2.Value; if (FileUpload_Img2.HasFile) { //NewGuid danner uniq navn for billeder product_image2 = Guid.NewGuid() + Path.GetExtension(FileUpload_Img2.FileName); // Opret String UploadeMappe = Server.MapPath("~/images/resizer/Original_Images/"); String CroppedMappe = Server.MapPath("~/images/resizer/Croppede/"); String Filnavn = DateTime.Now.ToFileTime() + FileUpload_Img2.FileName; product_image2 = Filnavn; //Gem det orginale Billede FileUpload_Img2.SaveAs(UploadeMappe + Filnavn); // Definer hvordan ImageResizer.ResizeSettings BilledeSkalering = new ImageResizer.ResizeSettings(); //Lav nogle nye skalerings instillinger BilledeSkalering = new ImageResizer.ResizeSettings(); BilledeSkalering.Width = 120; BilledeSkalering.Height = 90; //Udfør selve skaleringen ImageResizer.ImageBuilder.Current.Build(UploadeMappe + Filnavn, CroppedMappe + Filnavn, BilledeSkalering); string old_img = HiddenField_oldImage2.Value; if (File.Exists(Server.MapPath("~/images/resizer/Croppede/") + old_img)) { File.Delete(Server.MapPath("~/images/resizer/Croppede/") + old_img); } if (File.Exists(Server.MapPath("~/images/resizer/Original_Images/") + old_img)) { File.Delete(Server.MapPath("~/images/resizer/Original_Images/") + old_img); } } cmd.Parameters.AddWithValue("@image2", product_image2); #endregion #region Image 3 string product_image3 = HiddenField_oldImage3.Value; if (FileUpload_Img3.HasFile) { //NewGuid danner uniq navn for billeder product_image3 = Guid.NewGuid() + Path.GetExtension(FileUpload_Img3.FileName); // Opret String UploadeMappe = Server.MapPath("~/images/resizer/Original_Images/"); String CroppedMappe = Server.MapPath("~/images/resizer/Croppede/"); String Filnavn = DateTime.Now.ToFileTime() + FileUpload_Img3.FileName; product_image3 = Filnavn; //Gem det orginale Billede FileUpload_Img3.SaveAs(UploadeMappe + Filnavn); // Definer hvordan ImageResizer.ResizeSettings BilledeSkalering = new ImageResizer.ResizeSettings(); //Lav nogle nye skalerings instillinger BilledeSkalering = new ImageResizer.ResizeSettings(); BilledeSkalering.Width = 120; BilledeSkalering.Height = 90; //Udfør selve skaleringen ImageResizer.ImageBuilder.Current.Build(UploadeMappe + Filnavn, CroppedMappe + Filnavn, BilledeSkalering); string old_img = HiddenField_oldImage3.Value; if (File.Exists(Server.MapPath("~/images/resizer/Croppede/") + old_img)) { File.Delete(Server.MapPath("~/images/resizer/Croppede/") + old_img); } if (File.Exists(Server.MapPath("~/images/resizer/Original_Images/") + old_img)) { File.Delete(Server.MapPath("~/images/resizer/Original_Images/") + old_img); } } cmd.Parameters.AddWithValue("@image3", product_image3); #endregion conn.Open(); cmd.ExecuteNonQuery(); conn.Close(); Response.Redirect("Produkter.aspx"); }
public static List <string> UploadSingleImage(string serverPath, HttpPostedFileBase file, int saveAsParam) { string OriginalImagePath = "~/Content/Uploads/UserImages/OriginalImages/"; string XSmallImagePath = "~/Content/Uploads/UserImages/XSmallImages/"; string CruptedImagePath = "~/Content/Uploads/UserImages/CruptedImages/"; List <string> ImagePaths = new List <string>(); if (file != null) { var uniqueName = Guid.NewGuid(); serverPath = serverPath.Replace("~", string.Empty); var fileArray = file.FileName.Split('.'); string extension = fileArray[fileArray.Length - 1].ToLower(); var fileName = uniqueName + "." + extension; if (extension == "jpg" || extension == "jpeg" || extension == "png" || extension == "gif") { if (File.Exists(HttpContext.Current.Server.MapPath(serverPath + fileName))) { ImagePaths.Add("1"); return(ImagePaths); } else { var filePath = HttpContext.Current.Server.MapPath(serverPath + fileName); file.SaveAs(filePath); /* Görselleri boyutlandırmak için ImageResizer namespace`ini kullanıyorum. Bu işlemin dökümantasyonu imageresizing.net adresinde var(Package Manager Console ile hallettim). */ ImageResizer.ResizeSettings ImageSetting = new ImageResizer.ResizeSettings(); ImageSetting.Width = 29; ImageSetting.Height = 29; ImageSetting.Mode = ImageResizer.FitMode.Crop; ImageResizer.ImageBuilder.Current.Build(OriginalImagePath + fileName, XSmallImagePath + fileName, ImageSetting); if (saveAsParam == 1) { ImageSetting.Width = 150; ImageSetting.Height = 150; ImageSetting.Mode = ImageResizer.FitMode.Crop; } else { ImageSetting.Width = 213; ImageSetting.Height = 133; ImageSetting.Mode = ImageResizer.FitMode.Crop; } ImageResizer.ImageBuilder.Current.Build(OriginalImagePath + fileName, CruptedImagePath + fileName, ImageSetting); ImagePaths.Add(serverPath + fileName); ImagePaths.Add(XSmallImagePath.Replace("~", string.Empty) + fileName); ImagePaths.Add(CruptedImagePath.Replace("~", string.Empty) + fileName); return(ImagePaths); } } else { ImagePaths.Add("2"); return(ImagePaths); } } ImagePaths.Add("0"); return(ImagePaths); }
private string UploadCover(HttpPostedFileBase file) { // Initialize variables we'll need for resizing and saving var width = 240; var height = 173; var relativeFileAndPath = "/Uploads/default"; var fileName = Guid.NewGuid().ToString() + file.FileName.Substring(file.FileName.LastIndexOf('.')); // Build absolute path var absPath = HttpContext.Server.MapPath(relativeFileAndPath); var absFileAndPath = absPath + "\\" + fileName; // Create directory as necessary and save image on server if (!Directory.Exists(absPath)) Directory.CreateDirectory(absPath); file.SaveAs(absFileAndPath); // Resize image using "ImageResizer" NuGet package. var resizeSettings = new ImageResizer.ResizeSettings { Scale = ImageResizer.ScaleMode.DownscaleOnly, Width = width, Height = height, Mode = ImageResizer.FitMode.Crop }; var b = ImageResizer.ImageBuilder.Current.Build(absFileAndPath, resizeSettings); // Save resized image b.Save(absFileAndPath); // Return relative file path return relativeFileAndPath + "/" + fileName; }
private string UploadPhoto(HttpPostedFileBase file) { // Initialize variables we'll need for resizing and saving var widthThumnail = 240; var heightThumnail = 173; var widthLightBox = 1074; var heightLightBox = 768; var relativeFileAndPath = "/Uploads/default"; var idFile = Guid.NewGuid().ToString(); var fileNameThumnail = idFile + "_thumnail" + file.FileName.Substring(file.FileName.LastIndexOf('.')); var fileNameLightBox = idFile + "_lightbox" + file.FileName.Substring(file.FileName.LastIndexOf('.')); var fileNameFull = idFile + file.FileName.Substring(file.FileName.LastIndexOf('.')); // Build absolute path var absPath = HttpContext.Server.MapPath(relativeFileAndPath); var absFileThumnail = absPath + "\\" + fileNameThumnail; var absFileLightBox = absPath + "\\" + fileNameLightBox; var absFileFull = absPath + "\\" + fileNameFull; // Create directory as necessary and save image on server if (!Directory.Exists(absPath)) Directory.CreateDirectory(absPath); file.SaveAs(absFileThumnail); file.SaveAs(absFileLightBox); file.SaveAs(absFileFull); // Resize image using "ImageResizer" NuGet package. var resizeThumnail = new ImageResizer.ResizeSettings { Scale = ImageResizer.ScaleMode.DownscaleOnly, Width = widthThumnail, Height = heightThumnail, Mode = ImageResizer.FitMode.Crop }; var b = ImageResizer.ImageBuilder.Current.Build(absFileThumnail, resizeThumnail); var resizeLightBox = new ImageResizer.ResizeSettings { Scale = ImageResizer.ScaleMode.DownscaleOnly, Width = widthLightBox, Height = heightLightBox, Mode = ImageResizer.FitMode.Crop }; var c = ImageResizer.ImageBuilder.Current.Build(absFileThumnail, resizeLightBox); // Save resized image b.Save(absFileThumnail); c.Save(absFileLightBox); // Return relative file path return relativeFileAndPath + "/" + fileNameFull; }
public FileResult GetPhoto(int photoId, int? width, int? height) { using (var db = new Models.OnLeaveContext()) { var photo = db.Photos.FirstOrDefault(p => p.PhotoId == photoId); if (photo != null) { if (width.HasValue && height.HasValue) { // resize image if required var rSetting = new ImageResizer.ResizeSettings(width.Value, height.Value, ImageResizer.FitMode.Stretch, null); rSetting.Anchor = System.Drawing.ContentAlignment.MiddleCenter; rSetting.Scale = ImageResizer.ScaleMode.UpscaleCanvas; rSetting.BackgroundColor = System.Drawing.Color.FromArgb(51, 221, 255); var resizedImage = ImageResizer.ImageBuilder.Current.Build(photo.Image, rSetting); return File(resizedImage.ToByteArray(), MimeMapping.GetMimeMapping(photo.Name)); } else { return File(photo.Image, MimeMapping.GetMimeMapping(photo.Name)); } } } return null; }
/// <summary> /// Crops the image. /// </summary> /// <param name="bitmapContent">Content of the bitmap.</param> /// <param name="mimeType">Type of the MIME.</param> /// <returns></returns> private byte[] CropImage( byte[] bitmapContent, string mimeType ) { if ( mimeType == "image/svg+xml" ) { return bitmapContent; } int[] photoCoords = _hfCropCoords.Value.Split( new char[] { ',' }, StringSplitOptions.RemoveEmptyEntries ).Select( a => (int)a.AsDecimal() ).ToArray(); int x = photoCoords[0]; int y = photoCoords[1]; int width = photoCoords[2]; int height = photoCoords[3]; int x2 = x + width; int y2 = y + height; System.Drawing.Bitmap bitmap = new System.Drawing.Bitmap( new MemoryStream( bitmapContent ) ); // intentionally tell imageResizer to ignore the 3200x3200 size limit so that we can crop it first before limiting the size. var sizingPlugin = ImageResizer.Configuration.Config.Current.Plugins.Get<ImageResizer.Plugins.Basic.SizeLimiting>(); var origLimit = sizingPlugin.Limits.TotalBehavior; sizingPlugin.Limits.TotalBehavior = ImageResizer.Plugins.Basic.SizeLimits.TotalSizeBehavior.IgnoreLimits; MemoryStream croppedStream = new MemoryStream(); ImageResizer.ResizeSettings resizeCropSettings = new ImageResizer.ResizeSettings( string.Format( "crop={0},{1},{2},{3}", x, y, x2, y2 ) ); MemoryStream imageStream = new MemoryStream(); bitmap.Save( imageStream, bitmap.RawFormat ); imageStream.Seek( 0, SeekOrigin.Begin ); // set the size limit behavior back to what it was try { ImageResizer.ImageBuilder.Current.Build( imageStream, croppedStream, resizeCropSettings ); } finally { sizingPlugin.Limits.TotalBehavior = origLimit; } // Make sure Image is no bigger than maxwidth/maxheight. Default to whatever imageresizer's limits are set to int maxWidth = this.MaxImageWidth ?? sizingPlugin.Limits.TotalSize.Width; int maxHeight = this.MaxImageHeight ?? sizingPlugin.Limits.TotalSize.Height; croppedStream.Seek( 0, SeekOrigin.Begin ); System.Drawing.Bitmap croppedBitmap = new System.Drawing.Bitmap( croppedStream ); if ( ( croppedBitmap.Width > maxWidth ) || ( croppedBitmap.Height > maxHeight ) ) { string resizeParams = string.Format( "width={0}&height={1}", maxWidth, maxHeight ); MemoryStream croppedAndResizedStream = new MemoryStream(); ImageResizer.ResizeSettings resizeSettings = new ImageResizer.ResizeSettings( resizeParams ); croppedStream.Seek( 0, SeekOrigin.Begin ); ImageResizer.ImageBuilder.Current.Build( croppedStream, croppedAndResizedStream, resizeSettings ); return croppedAndResizedStream.GetBuffer(); } else { return croppedStream.GetBuffer(); } }
protected void Button_Opret_Click(object sender, EventArgs e) { string pris = TextBox_Price.Text; SqlConnection conn = new SqlConnection(); conn.ConnectionString = ConfigurationManager.ConnectionStrings["ConnectionString"].ToString(); SqlCommand cmd = new SqlCommand(); cmd.Connection = conn; cmd.CommandText = @"INSERT INTO products(product_name, FK_category_id, product_price, product_storage, product_min_storage, product_max_storage, product_recomended_dirt, product_growthtime, product_image_1, product_image_2, product_image_3, product_description, product_number) VALUES (@name, @fk_category, @price, @storage, @min_storage, @max_storage, @recomended_dirt, @growthtime, @image1, @image2, @image3, @description, @number);"; cmd.Parameters.AddWithValue("@name", TextBox_Name.Text); cmd.Parameters.AddWithValue("@price", Convert.ToDecimal(pris)); cmd.Parameters.AddWithValue("@storage", TextBox_Storage.Text); cmd.Parameters.AddWithValue("@min_storage", TextBox_Min_Storage.Text); cmd.Parameters.AddWithValue("@max_storage", TextBox_Max_Storage.Text); cmd.Parameters.AddWithValue("@recomended_dirt", TextBox_Dirt.Text); cmd.Parameters.AddWithValue("@growthtime", TextBox_Time.Text); cmd.Parameters.AddWithValue("@description", TextBox_Description.Text); cmd.Parameters.AddWithValue("@number", TextBox_Productnumber.Text); cmd.Parameters.AddWithValue("@fk_category", DropDownList_Categorys.SelectedValue); //database sti til billede string bill_sti = "intetbillede.jpg"; //Hvis der er en fil i FilUploaden #region image1 if (FileUpload_Img1.HasFile) { //NewGuid danner uniq navn for billeder bill_sti = Guid.NewGuid() + Path.GetExtension(FileUpload_Img1.FileName); // Opret String UploadeMappe = Server.MapPath("~/images/resizer/Original_Images/"); String CroppedMappe = Server.MapPath("~/images/resizer/Croppede/"); String Filnavn = DateTime.Now.ToFileTime() + FileUpload_Img1.FileName; bill_sti = Filnavn; //Gem det orginale Billede FileUpload_Img1.SaveAs(UploadeMappe + Filnavn); // Definer hvordan ImageResizer.ResizeSettings BilledeSkalering = new ImageResizer.ResizeSettings(); //Lav nogle nye skalerings instillinger BilledeSkalering = new ImageResizer.ResizeSettings(); BilledeSkalering.Width = 120; BilledeSkalering.Height = 90; BilledeSkalering.Mode = ImageResizer.FitMode.Crop; //Udfør selve skaleringen ImageResizer.ImageBuilder.Current.Build(UploadeMappe + Filnavn, CroppedMappe + Filnavn, BilledeSkalering); } // Tildel parameter-værdierne, fra input felterne. cmd.Parameters.AddWithValue("@image1", bill_sti); #endregion #region image2 if (FileUpload_Img2.HasFile) { //NewGuid danner uniq navn for billeder bill_sti = Guid.NewGuid() + Path.GetExtension(FileUpload_Img2.FileName); // Opret String UploadeMappe = Server.MapPath("~/images/resizer/Original_Images/"); String CroppedMappe = Server.MapPath("~/images/resizer/Croppede/"); String Filnavn = DateTime.Now.ToFileTime() + FileUpload_Img2.FileName; bill_sti = Filnavn; //Gem det orginale Billede FileUpload_Img2.SaveAs(UploadeMappe + Filnavn); // Definer hvordan ImageResizer.ResizeSettings BilledeSkalering = new ImageResizer.ResizeSettings(); //Lav nogle nye skalerings instillinger BilledeSkalering = new ImageResizer.ResizeSettings(); BilledeSkalering.Width = 90; BilledeSkalering.Height = 120; BilledeSkalering.Mode = ImageResizer.FitMode.Crop; //Udfør selve skaleringen ImageResizer.ImageBuilder.Current.Build(UploadeMappe + Filnavn, CroppedMappe + Filnavn, BilledeSkalering); } // Tildel parameter-værdierne, fra input felterne. cmd.Parameters.AddWithValue("@image2", bill_sti); #endregion #region image3 if (FileUpload_Img3.HasFile) { //NewGuid danner uniq navn for billeder bill_sti = Guid.NewGuid() + Path.GetExtension(FileUpload_Img3.FileName); // Opret String UploadeMappe = Server.MapPath("~/images/resizer/Original_Images/"); String CroppedMappe = Server.MapPath("~/images/resizer/Croppede/"); String Filnavn = DateTime.Now.ToFileTime() + FileUpload_Img3.FileName; bill_sti = Filnavn; //Gem det orginale Billede FileUpload_Img3.SaveAs(UploadeMappe + Filnavn); // Definer hvordan ImageResizer.ResizeSettings BilledeSkalering = new ImageResizer.ResizeSettings(); //Lav nogle nye skalerings instillinger BilledeSkalering = new ImageResizer.ResizeSettings(); BilledeSkalering.Width = 90; BilledeSkalering.Height = 120; BilledeSkalering.Mode = ImageResizer.FitMode.Crop; //Udfør selve skaleringen ImageResizer.ImageBuilder.Current.Build(UploadeMappe + Filnavn, CroppedMappe + Filnavn, BilledeSkalering); } // Tildel parameter-værdierne, fra input felterne. cmd.Parameters.AddWithValue("@image3", bill_sti); #endregion conn.Open(); cmd.ExecuteNonQuery(); conn.Close(); Response.Redirect("Produkter.aspx"); }
public static List <string> UploadSingleImage(string serverPath, HttpPostedFileBase file, int saveAsParam)//Tek resim yükle - //httppostfilebase: Server'a atılacak olan dosyayı barındıracak olan property-dosya yükleme yolu { string OriginalImagePath = "~/Content/Uploads/UserImages/OriginalImages/"; string XSmallImagePath = "~/Content/Uploads/UserImages/XSmallImages/"; string CruptedImagePath = "~/Content/Uploads/UserImages/CruptedImages/"; List <string> ImagePaths = new List <string>(); if (file != null) { var uniqueName = Guid.NewGuid(); //yeni bir guid nesnesi oluşturdu-benzersiz serverPath = serverPath.Replace("~", string.Empty); //serverpath de boşlukları ~ ile değiştirir - string.Empty:uzunluğu "sıfır" olan bir stringi represent etmekte olup kendisine "null" değeri atanmış olup, henüz kendisinin refere ettiği bir string örneklemi bulunmadığını belirtmektedir. var fileArray = file.FileName.Split('.'); //Dosya ismini . ile böldü string extension = fileArray[fileArray.Length - 1].ToLower(); //adresteki uzantıyı küçük harfe çevirdi-uzantı var fileName = uniqueName + "." + extension; //dosya ismi benzersiz ad ve uzantıdan oluşsun if (extension == "jpg" || extension == "jpeg" || extension == "png" || extension == "gif") { if (File.Exists(HttpContext.Current.Server.MapPath(serverPath + fileName)))//Sql'deki dosya yolu hücresinde belirtilen dosyanın local'de olup olmadığını denetler. (Uzak bir sunucudaki dosyaları denetlemez. Sadece kendi local'deki dosyaları denetler.) { ImagePaths.Add("1"); return(ImagePaths); } else { var filePath = HttpContext.Current.Server.MapPath(serverPath + fileName);//Dosya localde yoksa yeni bir dosya yolu belirtir file.SaveAs(filePath);//dosya yolunu kaydeder /* Görselleri boyutlandırmak için ImageResizer namespace`ini kullanıyorum. Bu işlemin dökümantasyonu imageresizing.net adresinde var(Package Manager Console ile hallettim). */ //ResizeSetting:Görüntüyü işlemek için kullanılacak ayarları temsil eder. //FitMode.Crop:Genişlik ve yükseklik kesin değerler olarak kabul edilir -en boy oranı farkı varsa kırpma kullanılır. ImageResizer.ResizeSettings ImageSetting = new ImageResizer.ResizeSettings(); ImageSetting.Width = 29; ImageSetting.Height = 29; ImageSetting.Mode = ImageResizer.FitMode.Crop; ImageResizer.ImageBuilder.Current.Build(OriginalImagePath + fileName, XSmallImagePath + fileName, ImageSetting); if (saveAsParam == 1) { ImageSetting.Width = 150; ImageSetting.Height = 150; ImageSetting.Mode = ImageResizer.FitMode.Crop; } else { ImageSetting.Width = 213; ImageSetting.Height = 133; ImageSetting.Mode = ImageResizer.FitMode.Crop; } ImageResizer.ImageBuilder.Current.Build(OriginalImagePath + fileName, CruptedImagePath + fileName, ImageSetting); ImagePaths.Add(serverPath + fileName); ImagePaths.Add(XSmallImagePath.Replace("~", string.Empty) + fileName); ImagePaths.Add(CruptedImagePath.Replace("~", string.Empty) + fileName); return(ImagePaths); } } else { ImagePaths.Add("2"); return(ImagePaths); } } ImagePaths.Add("0"); return(ImagePaths); }
public static List <string> UploadSingleImage(string serverPath, HttpPostedFileBase file, int saveAsParam) { string OriginalImagePath = "~/Content/Uploads/UserImages/OriginalImages/"; string XSmallImagePath = "~/Content/Uploads/UserImages/XSmallImages/"; string CruptedImagePath = "~/Content/Uploads/UserImages/CruptedImages/"; List <string> ImagePaths = new List <string>(); if (file != null) { var uniqueName = Guid.NewGuid(); serverPath = serverPath.Replace("~", string.Empty); //pictureName.format //burak.yilmaz.jpg //furkan.emre.bayrak.png var fileArray = file.FileName.Split('.'); string extension = fileArray[fileArray.Length - 1].ToLower(); var fileName = uniqueName + "." + extension; if (extension == "jpg" || extension == "jpeg" || extension == "png") { if (File.Exists(HttpContext.Current.Server.MapPath(serverPath + fileName))) { ImagePaths.Add("1"); return(ImagePaths); } else { var filePath = HttpContext.Current.Server.MapPath(serverPath + fileName); file.SaveAs(filePath); ImageResizer.ResizeSettings ImageSettings = new ImageResizer.ResizeSettings(); ImageSettings.Width = 30; ImageSettings.Height = 30; ImageSettings.Mode = ImageResizer.FitMode.Crop; ImageResizer.ImageBuilder.Current.Build(OriginalImagePath + fileName, XSmallImagePath + fileName, ImageSettings); if (saveAsParam == 1) { ImageSettings.Width = 150; ImageSettings.Height = 150; ImageSettings.Mode = ImageResizer.FitMode.Crop; } else { ImageSettings.Width = 250; ImageSettings.Height = 250; ImageSettings.Mode = ImageResizer.FitMode.Crop; } ImageResizer.ImageBuilder.Current.Build(OriginalImagePath + fileName, CruptedImagePath + fileName, ImageSettings); ImagePaths.Add(serverPath + fileName); ImagePaths.Add(XSmallImagePath.Replace("~", string.Empty) + fileName); ImagePaths.Add(CruptedImagePath.Replace("~", string.Empty) + fileName); return(ImagePaths); } } else { ImagePaths.Add("2"); return(ImagePaths); } } else { ImagePaths.Add("3"); return(ImagePaths); } }