这些天做网站需要给图片加水印,就翻硬盘翻这两个方法,但是却找不倒原作者的信息了。这里记录一下:
加图片水印:
/**/ //// <summary> /// 在图片上生成图片水印 /// </summary> /// <param name="Path">原服务器图片路径</param> /// <param name="Path_new">生成的带图片水印的图片路径</param> /// <param name="Path_wm">水印图片路径</param> private void AddWatermark( string Path, string Path_new, string Path_wm) { System.Drawing.Image image = System.Drawing.Image.FromFile(Path); System.Drawing.Image copyImage = System.Drawing.Image.FromFile(Path_wm); System.Drawing.Graphics g = System.Drawing.Graphics.FromImage(image); g.DrawImage(copyImage, new System.Drawing.Rectangle(image.Width - copyImage.Width, image.Height - copyImage.Height, copyImage.Width, copyImage.Height), 0, 0, copyImage.Width+10,copyImage.Height+10, System.Drawing.GraphicsUnit.Pixel); g.Dispose(); image.Save(Path_new); image.Dispose(); copyImage.Dispose(); File.Delete(Path);//删除原图 }加文字水印:
/**/ //// <summary> /// 在图片上增加文字水印 /// </summary> /// <param name="Path">原服务器图片路径</param> /// <param name="Path_sy">生成的带文字水印的图片路径</param> protected void AddWordWatermark( string Path, string Path_sy) { string addText = "测试水印"; System.Drawing.Image image = System.Drawing.Image.FromFile(Path); System.Drawing.Graphics g = System.Drawing.Graphics.FromImage(image); g.DrawImage(image, 0, 0, image.Width, image.Height); System.Drawing.Font f = new System.Drawing.Font("Verdana", 16); System.Drawing.Brush b = new System.Drawing.SolidBrush(System.Drawing.Color.Blue); g.DrawString(addText, f, b, 15, 15); g.Dispose(); image.Save(Path_sy); image.Dispose(); }
原来代码函数名称是用拼音的,我改成E文了。
转载于:https://www.cnblogs.com/KenBlove/articles/484118.html
相关资源:JAVA上百实例源码以及开源项目