首页 > 代码库 > 生成图片水印
生成图片水印
public static void AddWaterText(string oldpath,string savepath,string watertext,WaterPositionMode position,string color,int alpha) { Image image = Image.FromFile(oldpath); Bitmap bitmap=new Bitmap(image.Width,image.Height); Graphics graphics = Graphics.FromImage(bitmap); graphics.Clear(Color.White); graphics.DrawImage(image,new Rectangle(0,0,image.Width,image.Height),0,0,image.Width,image.Height,GraphicsUnit.Pixel); Font font=new Font("arial",18); SizeF ziSizeF=new SizeF(); ziSizeF = graphics.MeasureString(watertext, font); float x = 0f; float y = 0f; switch (position) { case WaterPositionMode.LeftTop: x = ziSizeF.Width/2f; y = 8f; break; case WaterPositionMode.LeftBottom: x = ziSizeF.Width/2f; y = image.Height - ziSizeF.Height; break; case WaterPositionMode.RightTop: x = image.Width*1f - ziSizeF.Width/2f; y = 8f; break; case WaterPositionMode.RightBottom: x = image.Width - ziSizeF.Width; y = image.Height - ziSizeF.Height; break; case WaterPositionMode.Center: x = image.Width/2; y = image.Height/2 - ziSizeF.Height/2; break; } try { StringFormat stringFormat = new StringFormat {Alignment = StringAlignment.Center}; SolidBrush solidBrush = new SolidBrush(Color.FromArgb(alpha, 0, 0, 0)); graphics.DrawString(watertext, font, solidBrush, x + 1f, y + 1f, stringFormat); SolidBrush brush = new SolidBrush(Color.FromArgb(alpha, ColorTranslator.FromHtml(color))); graphics.DrawString(watertext, font, brush, x, y, stringFormat); solidBrush.Dispose(); brush.Dispose(); bitmap.Save(savepath, ImageFormat.Jpeg); } catch (Exception e) { } finally { bitmap.Dispose(); image.Dispose(); } } public enum WaterPositionMode { LeftTop, LeftBottom, RightTop, RightBottom, Center }
生成图片水印
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。