批量生成不同尺寸的图片

static void Main(string[] args)
{
var image = Image.FromFile("C:\\picture\\600.png");
var pictureSize = new List<Picture>();
pictureSize.Add(new Picture { Width = 256, Height = 256 });
pictureSize.Add(new Picture { Width = 48, Height = 48 });
pictureSize.Add(new Picture { Width = 24, Height = 24 });
pictureSize.Add(new Picture { Width = 16, Height = 16 });
//pictureSize.Add(new Picture { Width = 388, Height = 388 });
foreach (var picture in pictureSize)
{
Bitmap map = new Bitmap(picture.Width, picture.Height);
Graphics graphics = Graphics.FromImage(map);
graphics.CompositingQuality = CompositingQuality.HighQuality;
graphics.SmoothingMode = SmoothingMode.HighQuality;
graphics.InterpolationMode = InterpolationMode.HighQualityBicubic;
var imageRectangle = new Rectangle(0, 0, picture.Width, picture.Height);
graphics.DrawImage(image, imageRectangle);
map.Save("C:\\picture\\result\\"+picture.Width + "x" + picture.Height+".png", ImageFormat.Png);
graphics.Dispose();
map.Dispose();
}
image.Dispose();
}

public class Picture
{
public int Height { get; set; }
public int Width { get; set; }
}

posted @ 2016-09-21 11:40  BeierWu  阅读(1110)  评论(0编辑  收藏  举报