首页 > Windows开发 > 详细

c# 画图生成并下载图片

时间:2020-09-15 20:02:30      阅读:69      评论:0      收藏:0      [点我收藏+]

1.添加引用 

using System.Drawing;

2.画图方法

/// <summary>
/// 画图
/// </summary>

/// <param name="entity">实体 Model.ChargeInfo</param>

/// <param name="pathbg">背景图地址</param>

/// <param name="zpath">其他图 地址</param>
/// <returns></returns>

public byte[] GetReceipt(Model.ChargeInfo entity, string pathbg, string zpath)
{
Image image = Image.FromFile(pathbg);
var dest = new Bitmap(image.Width, image.Height);
Graphics g = Graphics.FromImage(dest);
g.Clear(Color.White);
g.DrawImage(image,new Rectangle(0, 0, dest.Width, dest.Height),0,0, image.Width, image.Height, GraphicsUnit.Pixel);
image.Dispose();
SolidBrush drawBrush = new SolidBrush(Color.Black);
SolidBrush drawred = new SolidBrush(Color.Red);

g.DrawString("年", new Font("微软雅黑", 25, FontStyle.Bold), drawred, 950, 240);
g.DrawString(entity.Putime.Month.ToString(), new Font("微软雅黑", 25), drawBrush, 1020, 240);
g.DrawString("月", new Font("微软雅黑", 25, FontStyle.Bold), drawred, 1090, 240);
g.DrawString(entity.Putime.Day.ToString(), new Font("微软雅黑", 25), drawBrush, 1160, 240);
g.DrawString("日", new Font("微软雅黑", 25, FontStyle.Bold), drawred, 1230, 240);

Image zimg = Image.FromFile(zpath);
g.DrawImage(zimg, new Rectangle((dest.Width / 2 - zimg.Width / 2-250), (dest.Height - zimg.Height / 2-30) + 30, 320, 200), 0, 0, zimg.Width, zimg.Height, GraphicsUnit.Pixel);

System.IO.MemoryStream ms = new System.IO.MemoryStream();
dest.Save(ms, System.Drawing.Imaging.ImageFormat.Bmp);
return ms.ToArray();
}

3.action调用画图方法

public ActionResult GetReceipt(int id)
{

ChargeInfo charge = db.ChargeInfo.Find(id);
charge.sta = db.standard.Find(charge.SID);
charge.TUser = db.TUser.Find(charge.UID);
if (charge.TUser == null)
{
charge.TUser = new TUser();
}
App_Code.ImgDarwing img = new App_Code.ImgDarwing();

var dest = img.GetReceipt(charge, Server.MapPath("~/images/timg.jpg"), Server.MapPath("~/images/cz.png"));
return File(dest, "application/octet-stream", "会费收据" + ".bmp");//下载图片
//return File(dest, "image/bmp");//预览图片
}

c# 画图生成并下载图片

原文:https://www.cnblogs.com/keke2/p/13674473.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!