public string UploadImage(IEnumerable <HttpPostedFileBase> files) { if (files != null) { foreach (var file in files) { if (file != null && file.ContentLength > 0) { var routhPath = Server.MapPath("~/Upload"); string fileName = Path.GetFileNameWithoutExtension(file.FileName); fileName += "_" + Guid.NewGuid().ToString("N"); fileName += Path.GetExtension(file.FileName); var path = Path.Combine(routhPath, fileName); file.SaveAs(path); Bitmap image = new Bitmap(path); PictureAnalysis.GetMostDominantColor(image); string colorName = GetColorName(PictureAnalysis.MostDominantColor); return("/Upload/" + fileName + "æ" + colorName); } } } return(""); }
private ICollection <PictureAnalysis> fillPictureAnalysisListAndSortByStars(int i_Index) { List <PictureAnalysis> pictureAnalyses = new List <PictureAnalysis>(); PictureAnalysis pictureAnalysis; foreach (Photo item in m_PicutresManager.AlbumAt(i_Index).Photos) { pictureAnalysis = new PictureAnalysis { PictureUrl = item.PictureNormalURL, PictureID = item.Id }; pictureAnalysis.CalcStars(item.LikedBy.Count, item.Comments.Count); pictureAnalyses.Add(pictureAnalysis); } pictureAnalyses.Sort(); return(pictureAnalyses); }
/// <inheritdoc/> public async Task <int> GetUserAccentColor(User user) { await _mutex.WaitAsync(); try { if (string.IsNullOrEmpty(user.Avatar)) { return(ColorExtensions.GetDiscriminatorColor(user.Discriminator).ToInt()); } // TODO: Handle avatar change if (_userColorsCache.ContainsKey(user.Id)) { return(_userColorsCache[user.Id]); } PictureAnalysis analysis = new PictureAnalysis(); try { analysis.Analyse(new BitmapImage(user.AvatarUri), 128, 128); } catch { } if (analysis.ColorList.Count > 0) { _userColorsCache.Add(user.Id, analysis.ColorList[0].Color.ToInt()); return(_userColorsCache[user.Id]); } else { return(((Color)App.Current.Resources["BlurpleColor"]).ToInt()); } } finally { _mutex.Release(); } }