C#合并两个图片,并保存到本地

Main方法:
static
void Main(string[] args) { var dateNow = DateTime.Now; string saveFile = Environment.CurrentDirectory+"\\puctures\\" + dateNow.Year.ToString() + (dateNow.Month).ToString() + dateNow.Day.ToString() + dateNow.Hour.ToString() + dateNow.Minute.ToString() + dateNow.Second.ToString()+".jpg"; string imgBackPath = @"D:\Learning\PracticeDemo\PracticeDemo\images\is407-046.jpg"; string imgBackExtension = Path.GetExtension(imgBackPath); string imgPath = @"D:\Learning\PracticeDemo\PracticeDemo\images\is104-052.jpg"; string imgExtension = Path.GetExtension(imgPath); if (File.Exists(imgBackPath) == false||File.Exists(imgPath)==false|| ( imgBackExtension!=".gif"&& imgBackExtension!=".png"&& imgBackExtension!=".jpg" )||( imgBackExtension != ".gif" && imgBackExtension != ".png" && imgBackExtension != ".jpg" ) ) { Console.WriteLine("文件不存在或不支持该扩展名!"); Console.WriteLine("End"); } Image imgBack = Image.FromFile(imgBackPath); Image img = Image.FromFile(imgPath); Bitmap bmp = MergeImgHelp.CombinImage(imgBack, img); MemoryStream ms = new MemoryStream(); bmp.Save(saveFile, ImageFormat.Jpeg); Console.WriteLine("文件保存成功!"); Console.ReadKey(); }
public class MergeImgHelp
    {
        /// <summary>
        /// 合并图片
        /// </summary>
        /// <param name="imgBack"></param>
        /// <param name="img"></param>
        /// <param name="xDeviation"></param>
        /// <param name="yDeviation"></param>
        /// <returns></returns>
        public static Bitmap CombinImage(Image imgBack, Image img, int xDeviation = 0, int yDeviation = 0)
        {
            Bitmap bmp = new Bitmap(imgBack.Width, imgBack.Height);

            Graphics g = Graphics.FromImage(bmp);
            g.Clear(Color.White);
            g.DrawImage(imgBack, 0, 0, imgBack.Width, imgBack.Height);

            g.DrawImage(img, imgBack.Width / 2 - img.Width / 2 + xDeviation, imgBack.Height / 2 - img.Height / 2+yDeviation, img.Width, img.Height);
            GC.Collect();
            return bmp;
        }
    }

 

posted @ 2017-07-20 15:30  Bronc_Li  阅读(7582)  评论(0编辑  收藏  举报