private IEnumerable <FormatoImmagine> RecuperaFormatiImmaginePrivate() { List <FormatoImmagine> formatiImmagine = new List <FormatoImmagine>(); SqlServerExecuteObject sseo = null; SqlDataReader dr = null; string sSql = "SELECT FormatoImmagineID, Nome, AltezzaMax, AltezzaMin, LarghezzaMax, LarghezzaMin, Abilitato FROM dbo.TBL_FormatiImmagine;"; sseo = new SqlServerExecuteObject(); sseo.CommandText = sSql; dr = SqlProvider.ExecuteReaderObject(sseo); while (dr.Read()) { FormatoImmagine formatoImmagine = RiempiIstanza(dr); formatiImmagine.Add(formatoImmagine); } if (dr != null) { dr.Close(); dr.Dispose(); } return(formatiImmagine); }
public Immagine CreaImmagine(Immagine immagineMaster, FormatoImmagine formato, string nomeFile) { Immagine immagine = null; if (immagineMaster == null) { throw new ArgumentNullException("immagineMaster"); } if (formato == null) { throw new ArgumentNullException("formato"); } immagine = new Immagine(); immagine.ImmagineMasterID = immagineMaster.ID; immagine.FormatoImmagine = formato; immagine.DataInserimento = DateTime.Now; immagine.DataUltimaModifica = immagine.DataInserimento; immagine.Nome_IT = immagineMaster.Nome_IT; immagine.Nome_EN = immagineMaster.Nome_EN; immagine.NomeFile = nomeFile; return(immagine); }
private FormatoImmagine RiempiIstanza(SqlDataReader dr) { if (dr == null) { throw new ArgumentNullException("dr"); } FormatoImmagine formatoImmagine = new FormatoImmagine(); formatoImmagine.ID = dr.GetInt32(0); formatoImmagine.Nome = dr.GetString(1); formatoImmagine.AltezzaMax = dr.GetInt32(2); formatoImmagine.AltezzaMin = dr.GetInt32(3); formatoImmagine.LarghezzaMax = dr.GetInt32(4); formatoImmagine.LarghezzaMin = dr.GetInt32(5); formatoImmagine.Enum = (FormatoImmagineEnum)dr.GetInt32(0); formatoImmagine.Abilitato = dr.GetBoolean(6); return(formatoImmagine); }
public ActionResult EditaFormatiRidimensiona(int id, int formatoImmagineID, int w, int h) { ActionResult result = null; Immagine immagineMaster = null; immagineMaster = ImmagineRepository.Instance.RecuperaImmagine(id); if (immagineMaster != null) { FormatoImmagine formato = FormatoImmagineRepository.Instance.RecuperaFormatoImmagine(formatoImmagineID); Immagine immagine = null; immagine = ImmagineRepository.Instance.RecuperaImmaginiFiglio(immagineMaster.ID).FirstOrDefault(x => x.FormatoImmagine.ID == formato.ID); Bitmap immagineLavoro = null; Bitmap immagineRidimensionata = null; Graphics grpImmagineRidimensionata = null; Rectangle rettangoloRidimensionata; immagineLavoro = new Bitmap(FileUtility.VAImmagineLavoro(immagineMaster.NomeFile)); rettangoloRidimensionata = new Rectangle(0, 0, w, h); immagineRidimensionata = new Bitmap(w, h); grpImmagineRidimensionata = Graphics.FromImage((System.Drawing.Image)immagineRidimensionata); grpImmagineRidimensionata.CompositingQuality = System.Drawing.Drawing2D.CompositingQuality.HighQuality; grpImmagineRidimensionata.SmoothingMode = System.Drawing.Drawing2D.SmoothingMode.HighQuality; grpImmagineRidimensionata.InterpolationMode = System.Drawing.Drawing2D.InterpolationMode.HighQualityBicubic; grpImmagineRidimensionata.DrawImage((System.Drawing.Image)immagineLavoro, rettangoloRidimensionata); grpImmagineRidimensionata.Dispose(); string ext = System.IO.Path.GetExtension(FileUtility.VAImmagine(formato.Enum, immagineMaster.NomeFile)).ToLower(); switch (ext) { case ".jpeg": case ".jpg": immagineRidimensionata.Save(FileUtility.VAImmagine(formato.Enum, immagineMaster.NomeFile), immagineLavoro.RawFormat); break; case ".gif": immagineRidimensionata.Save(FileUtility.VAImmagine(formato.Enum, immagineMaster.NomeFile), immagineLavoro.RawFormat); break; case ".png": immagineRidimensionata.Save(FileUtility.VAImmagine(formato.Enum, immagineMaster.NomeFile), immagineLavoro.RawFormat); break; case ".bmp": immagineRidimensionata.Save(FileUtility.VAImmagine(formato.Enum, immagineMaster.NomeFile), immagineLavoro.RawFormat); break; default: throw new ApplicationException("Formato immagine non supportato: " + ext); } immagineLavoro.Dispose(); ContenutoService cs = new ContenutoService(); if (immagine != null) { immagine.NomeFile = immagineMaster.NomeFile; } else { immagine = cs.CreaImmagine(immagineMaster, formato, immagineMaster.NomeFile); } immagine.Larghezza = immagineRidimensionata.Width; immagine.Altezza = immagineRidimensionata.Height; immagineRidimensionata.Dispose(); cs.SalvaImmagine(immagine); result = RedirectToAction("EditaFormati", new { id = immagineMaster.ID, formatoImmagineID = formato.ID }); } else { result = RedirectToAction("Index"); } return(result); }
public ActionResult EditaFormatiTaglia(int id, int formatoImmagineID, int x1 = 0, int y1 = 0, int x2 = 0, int y2 = 0, int w = 0, int h = 0) { ActionResult result = null; Immagine immagineMaster = null; immagineMaster = ImmagineRepository.Instance.RecuperaImmagine(id); if (immagineMaster != null) { FormatoImmagine formato = FormatoImmagineRepository.Instance.RecuperaFormatoImmagine(formatoImmagineID); Immagine immagine = null; immagine = ImmagineRepository.Instance.RecuperaImmaginiFiglio(immagineMaster.ID).FirstOrDefault(x => x.FormatoImmagine.ID == formato.ID); Bitmap immagineLavoro = null; ImageFormat format = null; Bitmap immagineRisultato = null; immagineLavoro = new Bitmap(FileUtility.VAImmagineLavoro(immagineMaster.NomeFile)); format = immagineLavoro.RawFormat; immagineRisultato = ImageHelper.Ritaglia(immagineLavoro, x1, y1, x2, y2); if (immagineRisultato != null) { immagineLavoro.Dispose(); immagineLavoro = immagineRisultato; } immagineRisultato = ImageHelper.Ridimensiona(immagineLavoro, w, h); if (immagineRisultato != null) { immagineLavoro.Dispose(); } else { immagineRisultato = immagineLavoro; } immagineLavoro = null; string ext = System.IO.Path.GetExtension(FileUtility.VAImmagine(formato.Enum, immagineMaster.NomeFile)).ToLower(); switch (ext) { case ".jpeg": case ".jpg": immagineRisultato.Save(FileUtility.VAImmagine(formato.Enum, immagineMaster.NomeFile), format); break; case ".gif": immagineRisultato.Save(FileUtility.VAImmagine(formato.Enum, immagineMaster.NomeFile), format); break; case ".png": immagineRisultato.Save(FileUtility.VAImmagine(formato.Enum, immagineMaster.NomeFile), format); break; case ".bmp": immagineRisultato.Save(FileUtility.VAImmagine(formato.Enum, immagineMaster.NomeFile), format); break; default: throw new ApplicationException("Formato immagine non supportato: " + ext); } ContenutoService cs = new ContenutoService(); if (immagine != null) { immagine.NomeFile = immagineMaster.NomeFile; } else { immagine = cs.CreaImmagine(immagineMaster, formato, immagineMaster.NomeFile); } immagine.Larghezza = immagineRisultato.Width; immagine.Altezza = immagineRisultato.Height; immagineRisultato.Dispose(); cs.SalvaImmagine(immagine); result = RedirectToAction("EditaFormati", new { id = immagineMaster.ID, formatoImmagineID = formato.ID }); } else { result = RedirectToAction("Index"); } return(result); }