/// <param name="titleOrDescription"> /// Replaces a placeholder-image with multiple images by comparing title/description /// /// Word Image -> Right Click -> Format Picture -> Alt Text -> Title /// </param> public static void ReplaceMultipleImages(WordprocessingDocument doc, string titleOrDescription, Bitmap[] bitmaps, string newImagePartId, bool adaptSize = false, ImagePartType imagePartType = ImagePartType.Png) { Blip[] blips = FindAllBlips(doc, d => d.Title == titleOrDescription || d.Description == titleOrDescription); if (blips.Count() != bitmaps.Length) { throw new ApplicationException("Images count does not match the images count in word"); } if (adaptSize && !AvoidAdaptSize) { bitmaps = bitmaps.Select(bitmap => { var part = doc.MainDocumentPart !.GetPartById(blips.First().Embed !); using (var stream = part.GetStream()) { Bitmap oldBmp = (Bitmap)Bitmap.FromStream(stream); return(ImageResizer.Resize(bitmap, oldBmp.Width, oldBmp.Height)); } }).ToArray(); } doc.MainDocumentPart !.DeletePart(blips.First().Embed !); var i = 0; var bitmapStack = new Stack <Bitmap>(bitmaps.Reverse()); foreach (var blip in blips) { ImagePart img = CreateImagePart(doc, bitmapStack.Pop(), newImagePartId + i, imagePartType); blip.Embed = doc.MainDocumentPart.GetIdOfPart(img); i++; } }
public virtual ActionResult Index( string file, int? w, int? h) { // find the file var f = Store.Get(file); // resize the image if (w.HasValue && h.HasValue) { var resizer = new ImageResizer(); var image = Image.FromStream(new MemoryStream(f.Item1)); var stream = new MemoryStream(); resizer.ResizeImage( image, new System.Drawing.Size(w.Value, h.Value), stream, ImageFormat.Jpeg); stream.Seek(0, SeekOrigin.Begin); return File(stream, f.Item2); } return File(f.Item1, f.Item2); }
public ActionResult Edit(Certificate certificate, HttpPostedFileBase CertificateImage) { if (ModelState.IsValid) { #region Upload Image if (CertificateImage != null) { if (System.IO.File.Exists(Server.MapPath("/Files/CertificatesImages/" + certificate.Image))) { System.IO.File.Delete(Server.MapPath("/Files/CertificatesImages/" + certificate.Image)); } // Saving Temp Image var newFileName = Guid.NewGuid() + Path.GetExtension(CertificateImage.FileName); CertificateImage.SaveAs(Server.MapPath("/Files/CertificatesImages/Temp/" + newFileName)); // Resize Image ImageResizer image = new ImageResizer(800, 600, true); image.Resize(Server.MapPath("/Files/CertificatesImages/Temp/" + newFileName), Server.MapPath("/Files/CertificatesImages/" + newFileName)); // Deleting Temp Image System.IO.File.Delete(Server.MapPath("/Files/CertificatesImages/Temp/" + newFileName)); certificate.Image = newFileName; } #endregion _repo.Update(certificate); return(RedirectToAction("Index")); } return(View(certificate)); }
/// <summary> /// Compare yolo speed with optimal images in the correct size /// Resize before and resize in yolo /// </summary> public void Start() { var yoloWrapper = new YoloWrapper("yolov2-tiny-voc.cfg", "yolov2-tiny-voc.weights", "voc.names"); var files = Directory.GetFiles(@".\Images"); var imageResizer = new ImageResizer(); var retries = 10; Console.WriteLine("|{0,20}|{1,29}|{2,43}|", "", "Resize with yolo", "Resize before yolo"); Console.WriteLine("|{0,20}|{1,15}|{2,13}|{3,15}|{4,13}|{5,13}|{6,10}|{7,10}|", "Image", "detected items", "elapsed (ms)", " detected items", "resize (ms)", "yolo (ms)", "diff (ms)", "faster"); foreach (var file in files) { for (var i = 0; i < retries; i++) { var fileInfo = new FileInfo(file); var imageData = File.ReadAllBytes(file); var result1 = ProcessResizeAfter(yoloWrapper, imageData); var result2 = ProcessResizeBefore(yoloWrapper, imageResizer, imageData); var diff = result1.Item3 - result2.Item4; Console.WriteLine("|{0,20}|{1,15}|{2,13}|{3,15}|{4,13}|{5,13}|{6,10}|{7,10}|", fileInfo.Name, result1.Item1.Count, result1.Item2, result2.Item1.Count, result2.Item2, result2.Item3, diff.ToString("0.00"), diff > 0); } } yoloWrapper.Dispose(); }
protected void File_Upload(object sender, AjaxFileUploadEventArgs e) { string filename = e.FileName; int userID = 1; // Foreign key to Table Users.. int albumID = 10; // Foreign key to Table Albums.. string username = "******"; // USE Context.User.Identity.Name for authenticated users.. try { // Resize image before upload | Create thumbnail for previews.. Stream fileStream = e.GetStreamContents(); ImageResizer imRes = new ImageResizer(307200, fileStream, Path.GetExtension(filename)); byte[] imageThumbnail; byte[] scaledUploadFile = imRes.ScaleImageFromStream(out imageThumbnail, 200, 200); // Generate a Guid for public file name.. Guid guid = Guid.NewGuid(); AzurePhotoClient blobClient = new AzurePhotoClient("azurephotos"); blobClient.UploadFromBytes(scaledUploadFile, "hq/" + username + "/album/" + albumID + "/" + guid + Path.GetExtension(filename)); blobClient.UploadFromBytes(imageThumbnail, "thumbnail/" + username + "/album/" + albumID + "/" + guid + Path.GetExtension(filename)); // Log photo to DB.. DbAccess dbAccess = new DbAccess(); dbAccess.InsertPhotoToDb(userID, filename, guid, scaledUploadFile.Length, albumID); e.DeleteTemporaryData(); } catch (Exception ex) { // Log error.. } }
public ActionResult Create(Plan plan, List <int> Options, HttpPostedFileBase PlanImage) { if (plan.RentPrice == null) { plan.RentPrice = 0; } if (ModelState.IsValid) { #region Upload Files if (PlanImage != null) { // Saving Temp Image var newFileName = Guid.NewGuid() + Path.GetExtension(PlanImage.FileName); PlanImage.SaveAs(Server.MapPath("/Files/PlanFiles/Temp/" + newFileName)); // Resize Image ImageResizer image = new ImageResizer(370, 270, true); image.Resize(Server.MapPath("/Files/PlanFiles/Temp/" + newFileName), Server.MapPath("/Files/PlanFiles/PlanImages/" + newFileName)); // Deleting Temp Image System.IO.File.Delete(Server.MapPath("/Files/PlanFiles/Temp/" + newFileName)); plan.Image = newFileName; } #endregion _repo.Add(plan); foreach (var option in Options) { _repo.AddOption(plan.Id, option); } return(RedirectToAction("Index", new { realStateId = plan.RealStateId })); } ViewBag.RealStateId = plan.RealStateId; return(View(plan)); }
public ActionResult Create(Service service, HttpPostedFileBase ServiceImage, HttpPostedFileBase ServiceFile) { if (ModelState.IsValid) { #region Upload Image if (ServiceImage != null) { var newFileName = Guid.NewGuid() + Path.GetExtension(ServiceImage.FileName); ServiceImage.SaveAs(Server.MapPath("/Files/Services/Image/" + newFileName)); ImageResizer thumb = new ImageResizer(); thumb.Resize(Server.MapPath("/Files/Services/Image/" + newFileName), Server.MapPath("/Files/Services/Thumb/" + newFileName)); service.Image = newFileName; } #endregion #region Upload File if (ServiceFile != null) { var newFileName = Guid.NewGuid() + Path.GetExtension(ServiceFile.FileName); ServiceFile.SaveAs(Server.MapPath("/Files/Services/File/" + newFileName)); service.File = newFileName; } #endregion _repo.Add(service); return(RedirectToAction("Index")); } return(View(service)); }
private static string GetResizedImagePath(string filepath, int width, int height) { string resizedPath = filepath; if (width > 0 || height > 0) { resizedPath = filepath.GetPathForResizedImage(width, height); if (!Directory.Exists(resizedPath)) { Directory.CreateDirectory(new FileInfo(resizedPath).DirectoryName); } if (!File.Exists(resizedPath)) { var imageResizer = new ImageResizer(filepath); if (width > 0 && height > 0) { imageResizer.Resize(width, height, ImageEncoding.Jpg90); } else if (width > 0) { imageResizer.Resize(width, ImageEncoding.Jpg90); } imageResizer.SaveToFile(resizedPath); imageResizer.Dispose(); } } return(resizedPath); }
protected MeekController(Configuration.Configuration config) { _config = config; _repository = config.GetRepository(); ; _auth = config.GetAuthorization(); _resizer = config.GetImageResizer(); }
public ProfileEnhancedViewModel(INavigation navigation = null) : base(navigation) { _userPivotService = DependencyService.Get <IUserPivotService>(); _trackerPivotService = DependencyService.Get <ITrackerPivotService>(); UserGreeting = string.Empty; JoiningDate = string.Empty; TargetDate = string.Empty; DisplayDetailLink = TextResources.Details; Seperator = "|"; YourGoal = YouLost = ToLoose = GaugeMin = GaugeCurrent = 0; GaugeMax = 100; _imageSizeBadge = App.Configuration.GetImageSizeByID(ImageIdentity.USER_PROFILE_BADGE_ICON); if (_imageSizeBadge != null) { UserBadgeImageHeight = _imageSizeBadge.Height; UserBadgeImageWidth = _imageSizeBadge.Width; } BadgeAchievedImage = ImageResizer.ResizeImage(TextResources.Badge_Null, _imageSizeBadge); MilestoneRequired = false; ShowTrackerDetail = false; UserDetail = new UserPivot(); UserTrackers = new List <TrackerPivot>(); UserTrackersDescending = new List <TrackerPivot>(); YourGoal = YouLostThisWeek = ToLoose = 0; WeightSubmitDetails = TextResources.Weight + " " + TextResources.Submit + " " + TextResources.Details; SetPageImageSize(); }
/// <summary> /// Creates an image from a source image using the closest colors in the Game Boy palette. /// </summary> public static void Main(string[] args) { ParseCommandLineArgs(args, out string convertedImagePath, out string sourceImagePath, out bool resize); if (sourceImagePath == null || convertedImagePath == null) { return; } if (!File.Exists(sourceImagePath)) { Console.Error.WriteLine($"Input image \"{sourceImagePath}\" does not exist."); Environment.Exit(-1); } using (var sourceImage = Image.Load(sourceImagePath)) { if (resize) { var resizer = new ImageResizer(); resizer.Resize(sourceImage, GameBoyConstants.ScreenWidth, GameBoyConstants.ScreenHeight); } var palette = GameBoyColorPalette.Dmg.ToRgba32(); var converter = new ColorConverter(); var convertedImage = converter.Convert(sourceImage, palette); convertedImage.Save(convertedImagePath); } Process.Start(new ProcessStartInfo() { FileName = convertedImagePath, UseShellExecute = true }); }
public ActionResult Edit(Brand brand, HttpPostedFileBase BrandImage) { if (ModelState.IsValid) { #region Upload Image if (BrandImage != null) { if (System.IO.File.Exists(Server.MapPath("/Files/BrandsImages/" + brand.Logo))) { System.IO.File.Delete(Server.MapPath("/Files/BrandsImages/" + brand.Logo)); } // Saving Temp Image var newFileName = Guid.NewGuid() + Path.GetExtension(BrandImage.FileName); BrandImage.SaveAs(Server.MapPath("/Files/BrandsImages/Temp/" + newFileName)); // Resize Image ImageResizer image = new ImageResizer(400, 200, true); image.Resize(Server.MapPath("/Files/BrandsImages/Temp/" + newFileName), Server.MapPath("/Files/BrandsImages/" + newFileName)); // Deleting Temp Image System.IO.File.Delete(Server.MapPath("/Files/BrandsImages/Temp/" + newFileName)); brand.Logo = newFileName; } #endregion _repo.Update(brand); return(RedirectToAction("Index")); } return(View(brand)); }
public ActionResult Edit(ProductGallery productGallery, HttpPostedFileBase Image) { if (ModelState.IsValid) { #region Upload Image if (Image != null) { if (System.IO.File.Exists(Server.MapPath("/Files/ProductImages/ProductGallery/" + productGallery.Image))) { System.IO.File.Delete(Server.MapPath("/Files/ProductImages/ProductGallery/" + productGallery.Image)); } // Saving Temp Image var newFileName = Guid.NewGuid() + Path.GetExtension(Image.FileName); Image.SaveAs(Server.MapPath("/Files/ProductImages/Temp/" + newFileName)); // Resize Image ImageResizer image = new ImageResizer(900, 500, true); image.Resize(Server.MapPath("/Files/ProductImages/Temp/" + newFileName), Server.MapPath("//Files/ProductImages/ProductGallery/" + newFileName)); // Deleting Temp Image System.IO.File.Delete(Server.MapPath("/Files/ProductImages/Temp/" + newFileName)); productGallery.Image = newFileName; } #endregion _repo.Update(productGallery); return(RedirectToAction("Index", new { productId = productGallery.ProductId })); } return(View(productGallery)); }
private void Fix(HtmlDocument document, string elementId) { HtmlNodeCollection htmlNodeCollection = document.DocumentNode.SelectNodes(string.Format("//img[@id='{0}']", elementId)); TempFile tempImage = null; foreach (var elementbyId in htmlNodeCollection) { string image = elementbyId.Attributes["src"].Value; //remove ellipses if any if (image.StartsWith("../")) { image = image.Replace("../", string.Empty); } string serverPath = HttpContext.Current.Server.MapPath("~"); string resolved = Path.Combine(serverPath, image); if (!File.Exists(resolved)) { string directoryName = Path.GetDirectoryName(resolved); resolved = Path.Combine(directoryName, "DefaultLogo.png"); if (!File.Exists(resolved)) { Images.DefaultLogo.Save(resolved); } } if (tempImage == null) { tempImage = CreateTempFile(); ImageResizer.ResizeImage(resolved, tempImage.FileName, 180, 75, true); } elementbyId.Attributes["src"].Value = tempImage.FileName; } //Do not dispose temp file here, file will later be used by other element }
public MeekController() { _repository = BootStrapper.Configuration.GetRepository(); _auth = BootStrapper.Configuration.GetAuthorization(); _resizer = BootStrapper.Configuration.GetImageResizer(); _config = BootStrapper.Configuration; }
public ActionResult Edit(StaticContentDetail staticContentDetail, HttpPostedFileBase StaticContentDetailImage) { if (ModelState.IsValid) { #region Upload Image if (StaticContentDetailImage != null) { if (System.IO.File.Exists(Server.MapPath("/Files/StaticContentImages/Image/" + staticContentDetail.Image))) { System.IO.File.Delete(Server.MapPath("/Files/StaticContentImages/Image/" + staticContentDetail.Image)); } if (System.IO.File.Exists(Server.MapPath("/Files/StaticContentImages/Thumb/" + staticContentDetail.Image))) { System.IO.File.Delete(Server.MapPath("/Files/StaticContentImages/Thumb/" + staticContentDetail.Image)); } var newFileName = Guid.NewGuid() + Path.GetExtension(StaticContentDetailImage.FileName); StaticContentDetailImage.SaveAs(Server.MapPath("/Files/StaticContentImages/Image/" + newFileName)); ImageResizer thumb = new ImageResizer(); thumb.Resize(Server.MapPath("/Files/StaticContentImages/Image/" + newFileName), Server.MapPath("/Files/StaticContentImages/Thumb/" + newFileName)); staticContentDetail.Image = newFileName; } #endregion _repo.Update(staticContentDetail); return(RedirectToAction("Index")); } ViewBag.StaticContentTypeId = new SelectList(_repo.GetStaticContentTypes(), "Id", "Name", staticContentDetail.StaticContentTypeId); return(View(staticContentDetail)); }
public ActionResult Edit(Testimonial testimonial, HttpPostedFileBase TestimonialImage) { if (ModelState.IsValid) { #region Upload Image if (TestimonialImage != null) { if (System.IO.File.Exists(Server.MapPath("/Files/TestimonialImages/" + testimonial.Image))) { System.IO.File.Delete(Server.MapPath("/Files/TestimonialImages/" + testimonial.Image)); } // Saving Temp Image var newFileName = Guid.NewGuid() + Path.GetExtension(TestimonialImage.FileName); TestimonialImage.SaveAs(Server.MapPath("/Files/TestimonialImages/Temp/" + newFileName)); // Resize Image ImageResizer image = new ImageResizer(400, 400); image.Resize(Server.MapPath("/Files/TestimonialImages/Temp/" + newFileName), Server.MapPath("/Files/TestimonialImages/" + newFileName)); // Deleting Temp Image System.IO.File.Delete(Server.MapPath("/Files/TestimonialImages/Temp/" + newFileName)); testimonial.Image = newFileName; } #endregion _repo.Update(testimonial); return(RedirectToAction("Index")); } return(View(testimonial)); }
public static Stream Resize(int width, int height, Stream image, string fileName) { Stream fileStream = new MemoryStream(); Image tempImage = Bitmap.FromStream(image); long maxFactor = width * height; long imageFactor = tempImage.Width * tempImage.Height; if (maxFactor < imageFactor) { using (ImageResizer resizer = new ImageResizer()) { resizer.MimeType = Path.GetExtension(fileName); resizer.SourceImage = tempImage; resizer.Background = ColorTranslator.FromHtml("#fff"); resizer.Mode = ImageResizer.ResizeMode.KeepOriginalAspect; resizer.Width = width; resizer.Height = height; resizer.Process(); resizer.ResultImage.Save(fileStream, tempImage.RawFormat); } } else { image.Seek(0, SeekOrigin.Begin); image.CopyTo(fileStream); } return(fileStream); }
public UploadedFilesResizer(IFileSystem files, ImageResizer resizer, EditSection config) { this.files = files; this.resizer = resizer; this.images = config.Images; sizeNames = config.Images.Sizes.AllElements.Select(s => s.Name).ToArray(); }
public void Fill_Portrait_CropHorizontally_AndResize() { var rect = ImageResizer.GetFillDestinationRectangle(new Size(6, 9), new Size(4, 4)); var expected = new Rectangle(0, -1, 4, 6); Assert.That(rect, Is.EqualTo(expected)); }
public ActionResult Create(RealStateGallery realStateGallery, HttpPostedFileBase Image) { if (ModelState.IsValid) { #region Upload Image if (Image != null) { // Saving Temp Image var newFileName = Guid.NewGuid() + Path.GetExtension(Image.FileName); Image.SaveAs(Server.MapPath("/Files/RealStateImages/Temp/" + newFileName)); // Resize Image ImageResizer image = new ImageResizer(721, 382, false); image.Resize(Server.MapPath("/Files/RealStateImages/Temp/" + newFileName), Server.MapPath("/Files/RealStateImages/Gallery/" + newFileName)); // Deleting Temp Image System.IO.File.Delete(Server.MapPath("/Files/RealStateImages/Temp/" + newFileName)); realStateGallery.Image = newFileName; } #endregion _repo.Add(realStateGallery); return(RedirectToAction("Index", new { realStateId = realStateGallery.RealStateId })); } //ViewBag.RealStateId = realStateGallery.RealStateId; return(View(realStateGallery)); }
void Resize() { Status = FileUploadStatus.Resizing; try { Stream fileStream = file.OpenRead(); using (fileStream) { // Decode DecodedJpeg jpegIn = new JpegDecoder(fileStream).Decode(); if (!ImageResizer.ResizeNeeded(jpegIn.Image, ImageSize)) { return; } else { // Resize DecodedJpeg jpegOut = new DecodedJpeg( new ImageResizer(jpegIn.Image) .Resize(ImageSize, ResamplingFilters.NearestNeighbor), jpegIn.MetaHeaders); // Retain EXIF details // Encode resizeStream = new MemoryStream(); new JpegEncoder(jpegOut, 90, resizeStream).Encode(); // Display resizeStream.Seek(0, SeekOrigin.Begin); FileLength = resizeStream.Length; } } } catch { }; }
private static string GetResizedImagePath(string filepath, int width, int height) { string resizedPath = filepath; if (width > 0 || height > 0) { resizedPath = filepath.GetPathForResizedImage(width, height); if (!Directory.Exists(resizedPath)) Directory.CreateDirectory(new FileInfo(resizedPath).DirectoryName); if (!File.Exists(resizedPath)) { var imageResizer = new ImageResizer(filepath); if (width > 0 && height > 0) { imageResizer.Resize(width, height, ImageEncoding.Jpg90); } else if (width > 0) { imageResizer.Resize(width, ImageEncoding.Jpg90); } imageResizer.SaveToFile(resizedPath); imageResizer.Dispose(); } } return resizedPath; }
private async void AddImage() { await CrossMedia.Current.Initialize(); if (!CrossMedia.Current.IsCameraAvailable || !CrossMedia.Current.IsTakePhotoSupported) { var file = await CrossMedia.Current.PickPhotoAsync(); if (file != null) { if (lstImages.Count >= 4) { await App.Current.MainPage.DisplayAlert("Maximo de imagenes", "Tiene un total de 6 imagenes", "OK"); } else { ImageFile image = new ImageFile { Path = file.Path }; image.Image = ImageResizer.ResizeImage(File.ReadAllBytes(image.Path), 250, 250); lstImages.Add(image); } } return; } }
private void ChangeBadgeAchievedImage() { if (!string.IsNullOrEmpty(BadgeAchievedImage)) { BadgeAchievedImageSource = ImageResizer.ResizeImage(BadgeAchievedImage, BadgeImageSize); } }
public static void GeneratePODForm(WFPICTContext Db, string UploadsFormsPath, string DownloadsFormsPath, string SignPath, Guid Id) { Proof pod = Db.Proofs .Include(x => x.Assignment) .Include(x => x.Assignment.Order) .Include(x => x.Pictures) .Include(x => x.Piano) .Include(x => x.Piano.Statuses) .FirstOrDefault(x => x.Id == Id) ; string templateFormsPath = Path.Combine(UploadsFormsPath, pod.Assignment.Order.DeliveryForm); string podFileName = "POD" + pod.Assignment.Order.OrderNumber + ".pdf"; string podFilePath = Path.Combine(DownloadsFormsPath, pod.Id.ToString() + ".pdf"); string signature = Path.Combine(SignPath, pod.Signature); string signatureResized = Path.Combine(SignPath, "1" + pod.Signature); if (!System.IO.File.Exists(signatureResized)) { ImageResizer.Resize(signature, signatureResized, 150, 150, true); } GeneratePODForm(templateFormsPath, podFilePath, pod.ReceivedBy, pod.ReceivingTime?.ToString(), signatureResized); EmailHelper.SendEmail(pod.Assignment.Order.CallerEmail, "Signed POD Form " + podFileName, "Please find attached Signed Delivery Form " + podFileName, "", new string[] { podFilePath }.ToList()); }
public async Task BindMenuData() { float height = 30, width = 30; var iconSize = App.Configuration.GetImageSizeByID(ImageIdentity.MENU_ITEM_ICON); if (iconSize != null) { height = iconSize.Height; width = iconSize.Width; } var menuItems = await DependencyService.Get <IMenuServices>().GetByApplicationAsync(); MenuItems = (from m in menuItems select new HomeMenuItem { MenuTitle = _helper.GetResource(m.MenuTitle), MenuType = (MenuType)Enum.Parse(typeof(MenuType), m.MenuType), MenuIcon = m.MenuIcon != null ? _helper.GetResource(m.MenuIcon) : "", IconStyle = IconStyle, IconSource = m.MenuIcon != null ? ImageResizer.ResizeImage(_helper.GetResource(m.MenuIcon), iconSize) : null, IconHeight = height, IconWidth = width, IsIconVisible = m.MenuIconVisible, TextStyle = (MenuType)Enum.Parse(typeof(MenuType), m.MenuType) == MenuType.MyProfile ? SelectedStyle : DefaultStyle, IsSelected = (MenuType)Enum.Parse(typeof(MenuType), m.MenuType) == MenuType.MyProfile, ItemPadding = new Thickness(15, 5, 0, 5) }).ToList(); }
public void AspectRatio(string filename, double expected) { using (var resizer = new ImageResizer(GetSource(filename))) { Assert.That(resizer.AspectRatio, Is.EqualTo(expected).Within(0.01)); } }
static void CheckPerformance() { var yoloWrapper = new YoloWrapper("yolov2-tiny-voc.cfg", "yolov2-tiny-voc.weights", "voc.names"); var files = Directory.GetFiles(@".\Images"); var imageResizer = new ImageResizer(); var retrys = 3; Console.WriteLine(string.Format("|{0,40}|{1,5}|{2,25}|{3,5}|{4,25}|{5,10}|{6,10}|", "Image", "items", "elapsed (ms)", "items", "elapsed (ms)", "diff (ms)", "faster")); foreach (var file in files) { for (var i = 0; i < retrys; i++) { var fileInfo = new FileInfo(file); var imageData = File.ReadAllBytes(file); var result1 = ProcessResizeAfter(yoloWrapper, imageData); var result2 = ProcessResizeBefore(yoloWrapper, imageResizer, imageData); var diff = result1.Item3 - result2.Item3; Console.WriteLine(string.Format("|{0,40}|{1,5}|{2,25}|{3,5}|{4,25}|{5,10}|{6,10}|", fileInfo.Name, result1.Item1.Count, result1.Item2, result2.Item1.Count, result2.Item2, diff.ToString("0.00"), diff > 0)); } } }
public ActionResult Create([Bind(Include = "SoftwareId,Title,Description,Text,Visit,CreateDate,ImageName")] Software software , HttpPostedFileBase imgUp) { if (ModelState.IsValid) { if (imgUp != null && imgUp.IsImage()) { software.ImageName = Guid.NewGuid().ToString() + Path.GetExtension(imgUp.FileName); imgUp.SaveAs(Server.MapPath("/Content/Image/Softwares/" + software.ImageName)); ImageResizer imageResizer = new ImageResizer(); imageResizer.Resize(Server.MapPath("/Content/Image/Softwares/" + software.ImageName), Server.MapPath("/Content/Image/Softwares/Thumbnail/" + software.ImageName)); software.CreateDate = DateTime.Now; software.Visit = 0; _softwareBusiness.Insert(software); _softwareBusiness.Save(); return(RedirectToAction("Index")); } ViewBag.NewsImage = true; return(View(software)); } return(View(software)); }
public AudioPlayerViewModel(INavigation navigation = null) : base(navigation) { _localFile = DependencyService.Get <ILocalFile>(); _audioPlayer = DependencyService.Get <IAudioPlayerService>(); _devicePermissionServices = DependencyService.Get <IDevicePermissionServices>(); SetPageImageSize(); MediaFiles = new List <MediaFile>(); CurrentMediaFile = new MediaFile(); PlayButton = ImageResizer.ResizeImage(TextResources.icon_media_play, ButtonImageSize); PauseButton = ImageResizer.ResizeImage(TextResources.icon_media_pause, ButtonImageSize); StopButton = ImageResizer.ResizeImage(TextResources.icon_media_stop, ButtonImageSize); NextButton = ImageResizer.ResizeImage(TextResources.icon_media_next, ButtonImageSize); PreviousButton = ImageResizer.ResizeImage(TextResources.icon_media_previous, ButtonImageSize); PlayPauseButton = PlayButton; IsPlaying = false; IsPause = false; IsMediaExists = false; CurrentSongIndex = 0; CrossMediaManager.Current.PlayingChanged += async(sender, e) => { CurrentPosition = e.Progress; CurrentTimer = e.Position.ToString(@"hh\:mm\:ss"); TotalTimer = e.Duration.ToString(@"hh\:mm\:ss"); double TOLERANCE = 0; if (Math.Abs(e.Progress - 1) < TOLERANCE) { await PlayCurrent(Next()); } }; }
public static Bitmap EmbedImage(string visibleImageFilename, string hiddenImageFilename) { Bitmap visibleImage = new Bitmap(visibleImageFilename); Bitmap hiddenImage = new Bitmap(hiddenImageFilename); // TODO: don't need to resize to a half if hidden image is less than a half hiddenImage = ImageResizer.CropAndResizeBitmap(visibleImage.Size, hiddenImage, 0.5); Bitmap stegImage = new Bitmap(visibleImage.Width, visibleImage.Height); PixelMapper pixelMapper = new PixelMapper(visibleImage.Size, hiddenImage.Size); foreach (PixelMap pm in pixelMapper.GetHiddenToVisiblePixelMapEnumerator()) { foreach (PixelBitsMap pbm in pm.VisibleImagePoints) { BitArray r = copyChannel(visibleImage, hiddenImage, pm.HiddenImagePoint, pbm, Channel.R); BitArray g = copyChannel(visibleImage, hiddenImage, pm.HiddenImagePoint, pbm, Channel.G); BitArray b = copyChannel(visibleImage, hiddenImage, pm.HiddenImagePoint, pbm, Channel.B); Color pixelColor = Color.FromArgb(r.ToInt(), g.ToInt(), b.ToInt()); stegImage.SetPixel(pbm.Point.X, pbm.Point.Y, pixelColor); } } return(stegImage); }
private void SaveBitmap() { if (this.rotatedBitmap == null) { return; } if (!this.isChanged) { return; } MemoryStream stream = new MemoryStream(); this.rotatedBitmap.Compress(Bitmap.CompressFormat.Png, 100, stream); ArticleDetailsActivity.imageLarge = stream.ToArray(); byte[] resizedImage = ImageResizer.ResizeImageAndroid(this.rotatedBitmap, 48 * 2, 85 * 2); Bitmap smallBitmap = BitmapFactory.DecodeByteArray(resizedImage, 0, resizedImage.Length); stream = new MemoryStream(); smallBitmap.Compress(Bitmap.CompressFormat.Png, 100, stream); ArticleDetailsActivity.imageSmall = stream.ToArray(); Intent intent = new Intent(); this.SetResult(Result.Ok, intent); this.rotatedBitmap = null; this.isChanged = false; }
public ActionResult Create(FoodGallery foodGallery, HttpPostedFileBase Image) { if (ModelState.IsValid) { #region Upload Image if (Image != null) { // Saving Temp Image var newFileName = Guid.NewGuid() + Path.GetExtension(Image.FileName); Image.SaveAs(Server.MapPath("/Files/FoodImages/Temp/" + newFileName)); // Resize Image ImageResizer image = new ImageResizer(800, 600, true); image.Resize(Server.MapPath("/Files/FoodImages/Temp/" + newFileName), Server.MapPath("/Files/FoodImages/" + newFileName)); // Deleting Temp Image System.IO.File.Delete(Server.MapPath("/Files/FoodImages/Temp/" + newFileName)); foodGallery.Image = newFileName; } #endregion _repo.Add(foodGallery); return(RedirectToAction("Index")); } //ViewBag.FoodId = foodGallery.FoodId; return(View(foodGallery)); }
void Pipeline_Rewrite(IHttpModule sender, HttpContext context, ImageResizer.Configuration.IUrlEventArgs e) { if (e.QueryString["scache"] == null) e.QueryString["scache"] = "disk"; if (e.VirtualPath.StartsWith("/rw/", StringComparison.OrdinalIgnoreCase)) e.VirtualPath = "/s3/resizer-web" + e.VirtualPath.Substring(3); if (e.VirtualPath.StartsWith("/ri/", StringComparison.OrdinalIgnoreCase)) e.VirtualPath = "/s3/resizer-images" + e.VirtualPath.Substring(3); if (e.VirtualPath.StartsWith("/un/", StringComparison.OrdinalIgnoreCase)) e.VirtualPath = "/remote/images.unsplash.com" + e.VirtualPath.Substring(3); }
private void ResizeAndCopyToSlideshowDirectory(string imagesDirectory) { string[] images = Directory.GetFiles(imagesDirectory); foreach (string image in images) { ImageResizer imageResizer = new ImageResizer(image); string pathToSlide = GetPathToSlideFromImage(image); imageResizer.ResizeAndSave(slideSize, pathToSlide); } }
void Pipeline_PreHandleImage(IHttpModule sender, HttpContext context, ImageResizer.Caching.IResponseArgs e) { if (!ImageResizer.ExtensionMethods.NameValueCollectionExtensions.Get<bool>(e.RewrittenQuerystring, "showbytes", false)) return; var old = e.ResizeImageToStream; ((ResponseArgs)e).ResizeImageToStream = delegate(Stream s) { MemoryStream ms = new MemoryStream(8096); old(ms); WriteTextInPng(ms.Length.ToString("N") + " bytes", s); }; }
public ActionResult Index(HttpPostedFileBase file) { var imageBytes = ReadFully(file.InputStream); var s3Client = new S3Client(); var resizeSettings = new ResizeSettings { Settings = new List<ResizeSetting> { new ResizeSetting { Name = "Large", Width = 700, ImageEncoding = ImageEncoding.Jpg90 }, new ResizeSetting { Name = "Small", Width = 300, ImageEncoding = ImageEncoding.Jpg90 }, new ResizeSetting { Name = "Thumb", Width = 100, Height = 100, ImageEncoding = ImageEncoding.Jpg } } }; Parallel.ForEach(resizeSettings.Settings, resizeSetting => { var imageResizer = new ImageResizer(imageBytes); string fileName = Path.GetFileNameWithoutExtension(file.FileName) + "_" + resizeSetting.Name + ".jpg"; var resizedImage = resizeSetting.Height > 0 ? imageResizer.Resize(resizeSetting.Width, resizeSetting.Height, true, resizeSetting.ImageEncoding) : imageResizer.Resize(resizeSetting.Width, resizeSetting.ImageEncoding); string result = s3Client.AddFile(fileName, new MemoryStream(resizedImage)); }); var vm = new AmazonViewModel { Filename = file.FileName, S3BaseUrl = Settings.Default.S3BaseUrl, CloudfrontBaseUrl = Settings.Default.CloudfrontBaseUrl, Bucket = Settings.Default.AWSPublicFilesBucket, ResizeSettings = resizeSettings }; return View("Index", vm); }
public static void InjectExceptionHandler(ImageResizer.Caching.ResponseArgs ra) { // Wrap the default ResizeImageToStream() var old = ra.ResizeImageToStream; ra.ResizeImageToStream = new ImageResizer.Caching.ResizeImageDelegate(delegate(Stream s) { // We *expect* an AlternateResponseException to be thrown, // that's why we injected this handler in the first place! try { old(s); } catch (AlternateResponseException rce) { ra.ResponseHeaders.ContentType = rce.ContentType; s.Write(rce.ResponseData, 0, rce.ResponseData.Length); } }); }
public void SmallImagesAreNotScaledDown() { foreach (uint offset in new[] { 0, 10, 1000 }) { foreach (var sourceFile in Directory.GetFiles(TestdataDirectory, "*.jpg")) { var targetFile = Path.GetFileNameWithoutExtension(sourceFile) + "_s.jpg"; using (var sourceImage = Image.FromFile(sourceFile)) { var targetMaxSize = (uint)Math.Max(sourceImage.Size.Height, sourceImage.Size.Width) + offset; var resizer = new ImageResizer(75, 0.80f); resizer.Resize(sourceFile, targetFile, targetMaxSize); using (var targetImage = Image.FromFile(targetFile)) { Assert.AreEqual(targetImage.Size, sourceImage.Size); } } } } }
public void Thumbails() { const uint TargetMaxSize = 250; var resizer = new ImageResizer(50, 0.50f); var sourceFiles = Directory.GetFiles(TestdataDirectory); Assert.Greater(sourceFiles.Length, 0); foreach (var sourceFile in sourceFiles) { Console.WriteLine(sourceFile); var sourceFileInfo = new FileInfo(sourceFile); var targetFileInfo = new FileInfo(Path.GetFileNameWithoutExtension(sourceFile) + "_s.jpg"); Assert.DoesNotThrow( () => resizer.Resize(sourceFileInfo.FullName, targetFileInfo.FullName, TargetMaxSize)); Assert.IsTrue(targetFileInfo.Exists); Console.WriteLine("Compression Ratio : {0}", targetFileInfo.Length * 100.0 / sourceFileInfo.Length); Assert.Greater(targetFileInfo.Length, 0); Assert.Less(targetFileInfo.Length, sourceFileInfo.Length); using (var sourceImage = Image.FromFile(sourceFile)) using (var targetImage = Image.FromFile(targetFileInfo.FullName)) { if (targetImage.Size.Height > targetImage.Size.Width) { Assert.AreEqual(targetImage.Size.Height, TargetMaxSize); } else { Assert.AreEqual(targetImage.Size.Width, TargetMaxSize); } // Aspect ratio Assert.That( targetImage.Size.Height / (double)targetImage.Size.Width, Is.EqualTo(sourceImage.Size.Height / (double)sourceImage.Size.Width).Within(0.009)); } } }
public JpegThumbnailGenerator(ImageResizer resizer) { _resizer = resizer; _supportedfileTypes = new[] { ".jpg", ".jpeg", ".gif", ".png" }; _supportedContentTypes = new[] { "image/jpeg", "image/jpg", "image/gif", "image/png", "image/pjepg" }; }
private void ImageProcessing() { lstbDragAndDrop.AllowDrop = false; CheckDirsInList(); string path; List<string> imageExts = new List<string> { ".jpeg", ".jpg", ".png", ".bmp" }; Bitmap[] result=null; progressBar1.Minimum = 0; progressBar1.Maximum = FileList.Count; progressBar1.Value = 0; progressBar1.Visibility = Visibility.Visible; Task.Factory.StartNew(() => { for (int i = 0; i < FileList.Count; i++) { path = FileList[i]; result = null; if (path.ToLowerInvariant().EndsWith(".9.png")) { NinePatchResizer nRes = new NinePatchResizer(); result = nRes.ResizeImage(path); } else if (imageExts.Contains(System.IO.Path.GetExtension(path).ToLowerInvariant())) { ImageResizer imRes = new ImageResizer(); result = imRes.ResizeImage(path); } CreateDir(path); if (result != null) { ImageSaver imS = new ImageSaver(); //TODO: Do not retrive Sourse in Bitmap[] imS.SaveImageArray(result, path); } Dispatcher.Invoke( new Action(()=>{ progressBar1.Value++; }), null); } FileList.Clear(); Dispatcher.Invoke(new Action( () => { MessageBox.Show(Application.Current.MainWindow,"Check Folder with Your Image(s).", "9 Patch Resizer: \"Resizing succed.\""); txtHint.Text = "DragDrop Your Images or 9Patches"; progressBar1.Visibility = Visibility.Hidden; lstbDragAndDrop.AllowDrop = true; }), null); }); }
/// <summary> /// The method to override if you want to replace the entire pipeline. /// All Build() calls call this method first. /// Does nothing in ImageBuilder /// </summary> /// <param name="job"></param> /// <returns></returns> protected virtual RequestedAction BuildJob(ImageResizer.ImageJob job) { if (exts != null) foreach (AbstractImageProcessor p in exts) if (p.BuildJob(job) == RequestedAction.Cancel) return RequestedAction.Cancel; return RequestedAction.None; }
protected void UploadImage() { ImageResizer fullSizeImage = new ImageResizer(ImageFileUpload.PostedFile.InputStream, 75, 300, 250); ImageResizer thumbnailImage = new ImageResizer(ImageFileUpload.PostedFile.InputStream, 75, 120, 100); string fileName = ImageFileUpload.FileName; int fileNameIncrement = 0; int splitOn = fileName.LastIndexOf('.'); int fileNameLength = fileName.Length; string fileNameBefore = fileName.Substring(0, (splitOn)); string file_ext = "jpg"; string file = fileNameBefore + "-" + fileNameIncrement + "." + file_ext; string saveTo = Path.Combine(Server.MapPath("~/uploads"), file); string thumbNailFile = fileNameBefore + "-" + fileNameIncrement + "_thumb." + file_ext; string thumbNailSaveTo = Path.Combine(Server.MapPath("~/uploads"), thumbNailFile); FileInfo fi = new FileInfo(saveTo); FileInfo thumbFi = new FileInfo(thumbNailSaveTo); while (fi.Exists) { file = fileNameBefore + "-" + fileNameIncrement + "." + file_ext; saveTo = Path.Combine(Server.MapPath("~/uploads"), file); fi = new FileInfo(saveTo); thumbNailFile = fileNameBefore + "-" + fileNameIncrement + "_thumb." + file_ext; thumbNailSaveTo = Path.Combine(Server.MapPath("~/uploads"), thumbNailFile); thumbFi = new FileInfo(thumbNailSaveTo); if (fi.Exists) { fileNameIncrement++; } } fullSizeImage.Save(saveTo); thumbnailImage.Save(thumbNailSaveTo); ConnectionStringSettings connectionStringSettings = ConfigurationManager.ConnectionStrings["MainDatabase"]; SqlConnection cnn = new SqlConnection(connectionStringSettings.ConnectionString); SqlCommand InsertCommand = new SqlCommand(); InsertCommand.Connection = cnn; string sql; sql = "INSERT INTO UserProfileImages (UserName, IsMain, BaseFileName) VALUES ('" + Profile.UserName + "', '1', '" + fileNameBefore + "-" + fileNameIncrement + "')"; InsertCommand.CommandText = sql; try { cnn.Open(); InsertCommand.ExecuteNonQuery(); } catch (Exception ex) { Response.Write(ex.ToString()); } finally { cnn.Close(); } }
public Stream GetImage(Photo photo, ResizeMode type, int size) { // クラウドに送り込んだ? if (!photo.IsUploaded) return null; // 処理中? //if (!_processing.Lock(photo.Id)) //{ // var dump = string.Format("[id = {0}, type = {1}, size = {2}]", photo.Id, type, size); // Trace.WriteLine(" can't get lock - " + dump + " : " + DateTime.Now); // return null; //} // ファイルがあるなら即返す var loadName = GenerateFileName(photo.FileName, type, size); var loadPath = CacheFullPath(loadName); var entry = new StorageEntry(photo); var resizer = new ImageResizer(); if (!File.Exists(loadPath)) { // キャッシュになければStorageから取り出す。 var cacheName = RetrieveCache(photo.FileName); if (string.IsNullOrEmpty(cacheName)) return null; // 最適化して回転する var optName = GenerateFileName(photo.FileName, ResizeMode.Optimize); var optPath = CacheFullPath(optName); resizer.Optimize(cacheName, optPath); // ローカルキャッシュにリサイズしたものを取得 GenerateResize(optPath, loadName, type, size); } //_processing.Unlock(photo.Id); var bytes = entry.Load(CachePath, loadName); return bytes == null ? null : new MemoryStream(bytes); }
public void 画像を自動回転() { if (!IsLocal) return; var files = Directory.GetFiles(TestContext.DeploymentDirectory, "*.jpg"); var resizer = new ImageResizer(); foreach (var file in files) { var baseDir = TestContext.TestDir; var path = Path.Combine(baseDir, "orientation-" + Path.GetFileName(file)); // 実行できたなら結果は目視でいいんじゃん? resizer.Optimize(file, path); Assert.IsTrue(File.Exists(path)); } }
public bool Uninstall(ImageResizer.Configuration.Config c) { c.Plugins.remove_plugin(this); c.Pipeline.PreHandleImage -= Pipeline_PreHandleImage; return true; }
// // GET: /Images/ public ImagesController(NHibernateContext nHibernateContext, IFileSystem fileSystem, ImageResizer imageResizer) : base(nHibernateContext) { _fileSystem = fileSystem; _imageResizer = imageResizer; }
public void CreateThumbnail(string path) { ImageResizer imageResizer = new ImageResizer(path); var thumbnailPath = GetThumbnailPath(path); imageResizer.ResizeAndSave(ThumbnailSize, thumbnailPath); }
public void testResize() { String testPath = "testResize/"; String[] pictures = Directory.GetFiles(testPath); int testWidth = 60; int testHeight = 30; ImageResizer iR = new ImageResizer(testPath, testWidth, testHeight); iR.execute(); String directory = "Resized/"; String[] resizedPictures = Directory.GetFiles(directory); Assert.AreEqual(resizedPictures.Length, pictures.Length, "Some images were not resized"); Size testSize = new Size(testWidth, testHeight); for (int i = 0; i < resizedPictures.Length; i++) { Size finalImages = new Bitmap(resizedPictures[i]).Size; Assert.AreEqual(testSize, finalImages, "The image was resized to the wrong size"); } }
public void 小さすぎる画像を100ピクセルにリサイズ() { if (!IsLocal) return; var resizer = new ImageResizer(); var baseDir = TestContext.TestDir; var name = "little.png"; var path = Path.Combine(TestContext.DeploymentDirectory, name); Assert.IsTrue(resizer.Resize(path, ResizeMode.Fit, 100, Path.Combine(baseDir, "fit-" + name))); Assert.IsTrue(resizer.Resize(path, ResizeMode.Clip, 100, Path.Combine(baseDir, "clip-" + name))); }
void btnSaveNewImage_Click(object sender, EventArgs e) { this.lblErrMsg.Text = string.Empty; int order = 0; if (!String.IsNullOrEmpty(tbNewOrder.Text)) { if (!Int32.TryParse(tbNewOrder.Text, out order)) { this.lblErrMsg.Text = "Redni broj mora biti broj."; return; } } object sesobj = Session["imageuploadpreview"]; Validate("uploadimage"); if (Page.IsValid && sesobj != null) { Session.Remove("imageuploadpreview"); byte[] buffer = (byte[])sesobj; MemoryStream ms = new MemoryStream(buffer); System.Drawing.Bitmap bmp = (System.Drawing.Bitmap)System.Drawing.Image.FromStream(ms); var cropinfo = (from p in hfCrop.Value.Split(',') select int.Parse(p)).ToArray(); if (cropinfo[2] != 0 && cropinfo[3] != 0) { bmp = bmp.Clone(new System.Drawing.Rectangle(cropinfo[0], cropinfo[1], cropinfo[2], cropinfo[3]), bmp.PixelFormat); } ImageResizer resizer = new ImageResizer(); resizer.OutputFormat = ImageFormat.Jpeg; resizer.ImgQuality = IMAGE_QUALITY; resizer.MaxHeight = IMAGE_MAX_H; resizer.MaxWidth = IMAGE_MAX_W; byte[] imgRes = resizer.Resize(bmp); bmp.Dispose(); ms.Dispose(); string ext = ".jpg"; // ImageResizer zapravo sve onak postavlja na jpg string title = this.tbNewTitle.Text.Trim(); string desc = this.tbNewDesc.Text.Trim(); string alt = GetOffer().OfferName + " " + title; Collective.OfferImage newImg = Collective.OfferImage.CreateImage(title, desc, alt, GetOffer().OfferId, order, cbNewActive.Checked, (OFFER_IMAGE_UPLOAD_PATH.Last() == '/' ? OFFER_IMAGE_UPLOAD_PATH : OFFER_IMAGE_UPLOAD_PATH + "/"), ext); string saveLocation = Server.MapPath(newImg.Src); if (!System.IO.Directory.Exists(saveLocation)) System.IO.Directory.CreateDirectory(Path.GetDirectoryName(saveLocation)); File.WriteAllBytes(saveLocation, imgRes); imgThumb.Visible = false; this.tbNewTitle.Text = this.tbNewDesc.Text = this.tbNewOrder.Text = string.Empty; this.cbNewActive.Checked = false; FillGrid(); this.upListImages.Update(); this.hfEditItemIndex.Value = this.hfLastEditItemIndex.Value = string.Empty; } }
protected void btnUploadAccommImage_Click(object sender, EventArgs e) { object sesobj = Session["imageuploadpreview"]; Session.Remove("imageuploadpreview"); Validate("uploadimage"); if (IsValid && sesobj != null) { byte[] buffer = (byte[])sesobj; MemoryStream ms = new MemoryStream(buffer); System.Drawing.Bitmap bmp = (System.Drawing.Bitmap)System.Drawing.Image.FromStream(ms); var cropinfo = (from p in hfCrop.Value.Split(',') select int.Parse(p)).ToArray(); bmp = bmp.Clone(new System.Drawing.Rectangle(cropinfo[0], cropinfo[1], cropinfo[2], cropinfo[3]), bmp.PixelFormat); ImageResizer resizer = new ImageResizer(); resizer.OutputFormat = ImageFormat.Jpeg; resizer.ImgQuality = IMAGE_QUALITY; resizer.MaxHeight = IMAGE_MAX_H; resizer.MaxWidth = IMAGE_MAX_W; byte[] imgRes = resizer.Resize(bmp); bmp.Dispose(); string title = tbxAddAccomImageTitle.Text.Trim(); string description = tbxAddAccomImageDescription.Text.Trim(); string fileName = String.Format("accomm_{0}_image_{1}.jpg", accommodation.Name.Replace(' ', '_').Replace('+','-'), "{0}"); string filePath = ACCOMIMAGE_UPLOAD_PATH.Last() == '/' ? ACCOMIMAGE_UPLOAD_PATH : ACCOMIMAGE_UPLOAD_PATH + "/"; string srcLocation = filePath + fileName; UltimateDC.Image image = new UltimateDC.Image() { Src = "", Alt = "" }; dc.Images.InsertOnSubmit(image); //Nakon submitchanges se pojavi id u image, a to mi treba za filename i src atribut dc.SubmitChanges(); srcLocation = string.Format(srcLocation, image.Id); image.Src = string.Format(srcLocation, image.Id); image.Alt = accommodation.Name + " " + title; image.Title = title; image.Description = description; AccommodationImage accommImage = new AccommodationImage(); dc.AccommodationImages.InsertOnSubmit(accommImage); accommImage.Image = image; accommImage.Accommodation = accommodation; dc.SubmitChanges(); string saveLocation = Server.MapPath(srcLocation); if (!System.IO.Directory.Exists(saveLocation)) System.IO.Directory.CreateDirectory(Path.GetDirectoryName(saveLocation)); File.WriteAllBytes(saveLocation, imgRes); imgThumb.Visible = false; RefreshImages(); } }
public void 画像を100ピクセルにリサイズ() { if (!IsLocal) return; var files = Directory.GetFiles(TestContext.DeploymentDirectory, "*.jpg"); var resizer = new ImageResizer(); var baseDir = TestContext.TestDir; foreach (var file in files) { var name = Path.GetFileName(file); var path = Path.Combine(baseDir, "opt-" + name); // 実行できたなら結果は目視でいいんじゃん? resizer.Optimize(file, path); Assert.IsTrue(resizer.Resize(path, ResizeMode.Fit, 100, Path.Combine(baseDir, "fit-" + name))); Assert.IsTrue(resizer.Resize(path, ResizeMode.Clip, 100, Path.Combine(baseDir, "clip-" + name))); } }
private void UploadAndSetLogo(UltimateDC.Agency agency) { if (fuLogo.HasFile) { HttpPostedFile file = fuLogo.PostedFile; if (Common.IsImage(file.ContentType)) { string fileName = String.Format("logo_{0}_{1}{2}", agency.Name.Replace(' ', '_').Replace('+','-'), agency.Id, Path.GetExtension(file.FileName)); string filePath = LOGO_UPLOAD_PATH.Last() == '/' ? LOGO_UPLOAD_PATH : LOGO_UPLOAD_PATH + "/"; string srcLocation = filePath + fileName; string saveLocation = Server.MapPath(srcLocation); ImageResizer resizer = new ImageResizer(); resizer.OutputFormat = ImageFormat.Jpeg; resizer.ImgQuality = IMAGE_QUALITY; resizer.MaxHeight = IMAGE_MAX_H; resizer.MaxWidth = IMAGE_MAX_W; byte[] imgRes = resizer.Resize(file); if (!System.IO.Directory.Exists(saveLocation)) System.IO.Directory.CreateDirectory(Path.GetDirectoryName(saveLocation)); File.WriteAllBytes(saveLocation, imgRes); UltimateDC.Image logo; if (agency.Image == null) { logo = new UltimateDC.Image(); dc.Images.InsertOnSubmit(logo); } else { logo = agency.Image; string oldSaveLocation = Server.MapPath(logo.Src); if (oldSaveLocation != saveLocation && File.Exists(oldSaveLocation)) File.Delete(oldSaveLocation); } logo.Src = srcLocation; logo.Alt = String.Format("{0} logo", agency.Name); agency.Image = logo; } } }
protected void UploadButton_Click(object sender, EventArgs e) { if (ImageFileUpload.HasFile == false) { Label2.Text = "You must select and image before trying to upload it."; return; } try { Bitmap testBmp = new Bitmap(ImageFileUpload.PostedFile.InputStream, true); } catch (ArgumentException errArgument) { // The file wasn't a valid jpg file Label2.Text = "The selected file wasn't a valid image."; return; } ImageResizer fullSizeImage = new ImageResizer(ImageFileUpload.PostedFile.InputStream, 75, 300, 250); ImageResizer thumbnailImage = new ImageResizer(ImageFileUpload.PostedFile.InputStream, 75, 120, 100); string fileName = ImageFileUpload.FileName; int fileNameIncrement = 0; int splitOn = fileName.LastIndexOf('.'); int fileNameLength = fileName.Length; string fileNameBefore = fileName.Substring(0, (splitOn)); string file_ext = "jpg"; string file = fileNameBefore + "-" + fileNameIncrement + "." + file_ext; string saveTo = Path.Combine(Server.MapPath("~/uploads"), file); string thumbNailFile = fileNameBefore + "-" + fileNameIncrement + "_thumb." + file_ext; string thumbNailSaveTo = Path.Combine(Server.MapPath("~/uploads"), thumbNailFile); FileInfo fi = new FileInfo(saveTo); FileInfo thumbFi = new FileInfo(thumbNailSaveTo); while (fi.Exists) { file = fileNameBefore + "-" + fileNameIncrement + "." + file_ext; saveTo = Path.Combine(Server.MapPath("~/uploads"), file); fi = new FileInfo(saveTo); thumbNailFile = fileNameBefore + "-" + fileNameIncrement + "_thumb." + file_ext; thumbNailSaveTo = Path.Combine(Server.MapPath("~/uploads"), thumbNailFile); thumbFi = new FileInfo(thumbNailSaveTo); if (fi.Exists) { fileNameIncrement++; } } fullSizeImage.Save(saveTo); thumbnailImage.Save(thumbNailSaveTo); ConnectionStringSettings connectionStringSettings = ConfigurationManager.ConnectionStrings["MainDatabase"]; SqlConnection cnn = new SqlConnection(connectionStringSettings.ConnectionString); SqlCommand InsertCommand = new SqlCommand(); InsertCommand.Connection = cnn; string sql; sql = "INSERT INTO UserProfileImages (UserName, BaseFileName) VALUES ('" + Profile.UserName + "', '" + fileNameBefore + "-" + fileNameIncrement + "')"; InsertCommand.CommandText = sql; try { cnn.Open(); InsertCommand.ExecuteNonQuery(); } catch (Exception ex) { Response.Write(ex.ToString()); } finally { cnn.Close(); } DataList1.DataBind(); }
public void NormalizeImage() { ImageResizer imageResizer = new ImageResizer(pathOfImage); imageResizer.ResizeAndSave(new Size(NormalizedImageWidth, NormalizedImageHeight)); }
private void GenerateResize(string cacheName, string resizeName, ResizeMode type, int size) { var resizer = new ImageResizer(); var resizePath = CacheFullPath(resizeName); if (type != ResizeMode.Original && !File.Exists(resizePath)) { resizer.Resize(cacheName, type, size, resizePath); } }
/// <summary> /// Internal use only. /// Resolves the specified (potenetially templated) path into a physical path. /// Applies the AddFileExtension setting using the 'ext' variable. /// Supplies the guid, settings.*, filename, path, and originalExt variables. /// The resolver method should supply 'ext', 'width', and 'height' (all of which refer to the final image). /// If AllowDestinationPathVariables=False, only AddFileExtenson will be processed. /// </summary> /// <param name="path"></param> /// <param name="resolver"></param> /// <returns></returns> public string ResolveTemplatedPath(string path, ImageResizer.Util.PathUtils.VariableResolverCallback resolver) { if (!AllowDestinationPathVariables) { //Only add the extension if requested when variables are turned off. return PathUtils.MapPathIfAppRelative(path + (AddFileExtension ? ("." + resolver("ext")) : "")); } if (this.AddFileExtension) path = path + ".<ext>"; path = PathUtils.ResolveVariablesInPath(path, delegate(string p) { //Let the 'resolver' passed to this method take precedence - we provide default values. string result = resolver(p); if (result != null) return result; //GUID in lowercase hexadecimal with no hyphens if ("guid".Equals(p, StringComparison.OrdinalIgnoreCase)) return Guid.NewGuid().ToString("N", NumberFormatInfo.InvariantInfo); //Access to the settings collection string settingsPrefix = "settings."; if (p.StartsWith(settingsPrefix, StringComparison.OrdinalIgnoreCase)) { string subName = p.Substring(settingsPrefix.Length); return Instructions[subName]; } //Access to the instructions collection string instructionsPrefix = "instructions."; if (p.StartsWith(instructionsPrefix, StringComparison.OrdinalIgnoreCase)) { string subName = p.Substring(instructionsPrefix.Length); return Instructions[subName]; } if ("filename".Equals(p,StringComparison.OrdinalIgnoreCase)){ if (SourcePathData == null) throw new ImageProcessingException("You cannot use the <filename> variable in a job that does not have a source filename, such as with a Stream or Bitmap instance"); return Path.GetFileNameWithoutExtension(SourcePathData); } if ("dir".Equals(p, StringComparison.OrdinalIgnoreCase)) { if (SourcePathData == null) throw new ImageProcessingException("You cannot use the <dir> variable in a job that does not have a source filename, such as with a Stream or Bitmap instance"); return Path.GetDirectoryName(SourcePathData); //Just remove the last segment } if ("path".Equals(p, StringComparison.OrdinalIgnoreCase)) { if (SourcePathData == null) throw new ImageProcessingException("You cannot use the <path> variable in a job that does not have a source filename, such as with a Stream or Bitmap instance"); return PathUtils.RemoveExtension(SourcePathData); //Just remove the last segment } if ("originalext".Equals(p, StringComparison.OrdinalIgnoreCase)) { if (SourcePathData == null) throw new ImageProcessingException("You cannot use the <originalext> variable in a job that does not have a source filename, such as with a Stream or Bitmap instance"); return PathUtils.GetExtension(SourcePathData); //Just remove the last segment } return null; }); return PathUtils.MapPathIfAppRelative(path); }