6
Me gustaría agregar una capa a una imagen con el logotipo de la empresa.C# agregar una capa a una imagen
El logotipo debe colocarse en el centro de la imagen (poca opacidad).
¿Cómo puedo hacer eso?
Me gustaría agregar una capa a una imagen con el logotipo de la empresa.C# agregar una capa a una imagen
El logotipo debe colocarse en el centro de la imagen (poca opacidad).
¿Cómo puedo hacer eso?
Aquí está uno que hice anteriormente que crea una nueva insignia para algunas imágenes:
EDITAR, que diseñó la función que yo proporciono una anchoMax y una maxHeight, se cambia el tamaño sin distorsión.
Requisitos:
using System.IO;
using System.Drawing;
using System.Drawing.Drawing2D;
using System.Drawing.Imaging;
el código
using (Image i = Image.FromFile(HttpContext.Current.Server.MapPath(fileName)))
{
float imageWidth = i.PhysicalDimension.Width;
float imageHeight = i.PhysicalDimension.Height;
float percentage = maxWidth/imageWidth;
float newWidth = imageWidth * percentage;
float newHeight = imageHeight * percentage;
if (newHeight > maxHeight)
{
percentage = maxHeight/newHeight;
newWidth = newWidth * percentage;
newHeight = newHeight * percentage;
}
using (Bitmap b = new Bitmap((int)newWidth, (int)newHeight))
{
using (Graphics g = Graphics.FromImage(b))
{
g.InterpolationMode = InterpolationMode.HighQualityBicubic;
g.SmoothingMode = SmoothingMode.AntiAlias;
g.PixelOffsetMode = PixelOffsetMode.HighQuality;
g.CompositingQuality = CompositingQuality.HighQuality;
g.TextRenderingHint = System.Drawing.Text.TextRenderingHint.AntiAlias;
g.DrawImage(i, new Rectangle(0, 0, b.Width, b.Height));
if (effect == "new")
{
using (Image j = Image.FromFile(HttpContext.Current.Server.MapPath("/ImageEffects/") + "new.png", true))
{
g.DrawImage(j, new Rectangle(0, 0, 60, 60));
}
}
Image newImage = Image.FromHbitmap(b.GetHbitmap());
return newImage;
}
}
}
}