c#代码输入图片

时间:2023-03-08 20:09:39

Image bgimage = Image.FromFile(flieUrl + bgImg);
if (bgimage != null)
{
Bitmap bmp1 = new Bitmap(bgimage); //新建一个背景图大小的图像文件
Bitmap bmp2 = new Bitmap(bmp1);//将图片流复制到新的图片流中

Graphics draw = null;

int towidth = bgimage.Width;
int toheight = bgimage.Height;

//新建一个bmp图片
System.Drawing.Image bitmap = new System.Drawing.Bitmap(towidth, toheight);
System.Drawing.Image bitmap2 = new System.Drawing.Bitmap(towidth, toheight);
//新建一个画板
System.Drawing.Graphics g = System.Drawing.Graphics.FromImage(bitmap);
g.CompositingQuality = System.Drawing.Drawing2D.CompositingQuality.HighQuality;

//在指定位置并且按指定大小绘制原图片的指定部分
g.DrawImage(bgimage, 0, 0);

try
{
//画二维码
Image code_img = Image.FromStream(ms);
g.DrawImage(code_img, new Rectangle(Convert.ToInt32(bgimage.Width / 5), bgimage.Height / 3, code_img.Width, code_img.Height));
code_img.Dispose();

//画运营商logo和名称
//Image logo_img = Image.FromFile(GlobalLogic.GetFileServerAddress() + op.Logo);
//g.DrawImage(logo_img, new Rectangle(10, 10, logo_img.Width, logo_img.Height));
//logo_img.Dispose();

Font f = new Font("宋体", 20, FontStyle.Bold);
Brush br = new SolidBrush(Color.White);
if (op.OpertorsName.Length > 15)
{
op.OpertorsName = op.OpertorsName.Substring(0, 10) + "...";
}
g.DrawString(op.OpertorsName, f, br, new RectangleF(Convert.ToInt32(bgimage.Width / 3.5), 40, 400, 40));

//画门店名称
Font fc = new Font("宋体", 20, FontStyle.Bold);
Brush brc = new SolidBrush(Color.White);
g.DrawString(storeName, fc, brc, new RectangleF(Convert.ToInt32(bgimage.Width / 2.5), bgimage.Height - (bgimage.Height / 5), 400, 40));

Random r = new Random();
string uploadFileName = DateTime.Now.ToString("MMddhhmmss") + r.Next(100000, 999999);
url = string.Format("/Upload/Temp/{0}", uploadFileName);
//以jpg格式保存缩略图

//用新建立的image对象拷贝bitmap对象 让g对象可以释放资源
draw = Graphics.FromImage(bitmap2);
draw.DrawImage(bitmap, 0, 0);

bgimage.Dispose();
bitmap.Dispose();
g.Dispose();
//保存调整在这里即可

bitmap2.Save(HttpContext.Current.Server.MapPath(url) + ".jpg", System.Drawing.Imaging.ImageFormat.Jpeg);
url = url + ".jpg";

}
catch (System.Exception e)
{
throw e;
}
finally
{

}