工作中需要生成图片模板对图片进行描述 但是不能影响图片展示
经过自己研究封装了一个方法,这个方法可以添加文字 也可以多图拼接
//加载图片 这个是目标图片
string imurl = "D:\\WebSite\\Images\\test.jpg";
//将图片转化Graphics 这个是背景图片
Image img = new Bitmap(new Bitmap("D:\\WebSite\\baohuku.com\\Upload\\Images\\bg.png"), 750, 600);//设置大小
Graphics g = Graphics.FromImage(img);
g.SmoothingMode = System.Drawing.Drawing2D.SmoothingMode.AntiAlias;//加上抗锯齿效果
Point[] destPoints1 = {
new Point(0, 0),//图片左上点
new Point(400, 0),//图片右上点
new Point(0, 600),//图片左下点
};
g.DrawImage(new Bitmap(imurl), destPoints1);//按指定的顶点画图
//定义字体
System.Drawing.Font font = new Font("宋体", 15, FontStyle.Bold);
g.DrawString("图片标题", font, Brushes.Black, 520, 20);
g.DrawString("姓名:" + "美女", font, Brushes.Black, 420, 80);
g.DrawString("性别:" + "女", font, Brushes.Black, 420, 140);
g.DrawString("下载日期:" + "今天", font, Brushes.Black, 420, 200);
RectangleF textArea = new RectangleF(420, 260, 330, 55);
g.DrawString("地点:" + "随意", font, Brushes.Black, textArea);
RectangleF textArea1 = new RectangleF(420, 340, 330, 100);
g.DrawString("描述:" + "O(∩_∩)O哈哈~", font, Brushes.Black, textArea1);
String filename = "TEST.jpg";
string ImagesUrl = "D:\\WebSite\\Images";
img.Save(ImagesUrl + filename);//保存为图片
img.Dispose();//显示释放资源l
g.Dispose();
目标图片和背景
效果图