public ActionResult CreateGif(long[] PlayerImageIDs) { string Msg = ""; bool status = true; long ParamPlayerID = 0; PlayerImagesRepository modelRepo = new PlayerImagesRepository(); // var Selected_PlayerImgs = modelRepo.ReadAll(false).Where(m => PlayerImageIDs.Contains(m.PlayerImageID)).ToList(); List <string> ListOfImagePaths = new List <string>(); foreach (var item in PlayerImageIDs) { var Selected_PlayerImgs = modelRepo.ReadOne(item); string FullPath = Server.MapPath(Selected_PlayerImgs.ImageLink); ListOfImagePaths.Add(FullPath); ParamPlayerID = Selected_PlayerImgs.PlayerID; } string PlayerImagesFolder = Path.Combine(Server.MapPath("~" + SecurityUtils.Players_ImagePath + ""), ParamPlayerID.ToString()); modelRepo.CreateGif(ListOfImagePaths, PlayerImagesFolder, ParamPlayerID, ref Msg, ref status, this); //String[] imageFilePaths = new String[] { "D:\\temp\\01.png", "D:\\temp\\02.png", "D:\\temp\\03.png" }; //String outputFilePath = "D:\\temp\\test.gif"; //AnimatedGifEncoder e = new AnimatedGifEncoder(); //e.Start(outputFilePath); //e.SetDelay(1000); ////-1:no repeat,0:always repeat //e.SetRepeat(0); //for (int i = 0, count = imageFilePaths.Length; i < count; i++) //{ // e.AddFrame(Image.FromFile(imageFilePaths[i])); //} //e.Finish(); ///* extract Gif */ //string outputPath = "D:\\temp"; //GifDecoder gifDecoder = new GifDecoder(); //gifDecoder.Read("D:\\temp\\Finalsss.gif"); //for (int i = 0, count = gifDecoder.GetFrameCount(); i < count; i++) //{ // Image frame = gifDecoder.GetFrame(i); // frame i // frame.Save(outputPath + Guid.NewGuid().ToString() + ".png", ImageFormat.Png); //} if (status && SecurityUtils.Enable_PremiumDashboard) { AchievementsRepository achRepo = new AchievementsRepository(); Guid guid = Guid.NewGuid(); AchievementThread = new Thread(() => achRepo.ImageGallery_AchievementPoints(ParamPlayerID, AchievementThread)); AchievementThread.Name = "ImageGallery_BeforeAfterImageCreated_AchievementPoints_" + guid.ToString(); AchievementThread.Start(); } return(new JsonResult { Data = new { status = status, Msg = Msg } }); }
public ActionResult DownloadImage(long id) { PlayerImagesRepository modelRepo = new PlayerImagesRepository(); var playerimg = modelRepo.ReadOne(id); var filename = DateTime.Now.ToString("ddMMyyyy_HHmmss") + ".gif"; var imgPath = Server.MapPath(playerimg.ImageLink); Response.AddHeader("Content-Disposition", "attachment;filename=\"" + filename + "\""); Response.WriteFile(imgPath); Response.End(); return(null); }