用.net实现按透明度生成水印文件
2006-06-10 15:38
435 查看
/// <summary> /// 生成水印,可按左上、左下、右上、右下、居中、透明度生成文件,只对jpeg或jpg格式有效! /// </summary> /// <param name="sourceFile">底图</param> /// <param name="waterMarkFile">水印图</param> /// <param name="saveFile">要保存的文件</param> /// <param name="local">位置:左上(1)、左下(2)、右上(3)、右下(4)、居中(5)</param> /// <param name="alpha">透明度(1-100)</param> /// <returns>bool,是否成功</returns> public static bool MakeWaterImage(string sourceFile,string waterMarkFile,string saveFile,int local,int alpha) { bool result; if( !File.Exists(sourceFile) || !File.Exists(waterMarkFile)) //如果源图或水印图不存在 return false; FileInfo fi = new FileInfo(sourceFile); //判断文件类型是否合法 if(fi.Extension.ToLower()!=".jpg" & fi.Extension.ToLower()!=".jpeg") return false; try { //原图 Bitmap sImage = new Bitmap(sourceFile); int sWidth = sImage.Width; int sHeight = sImage.Height; //水印图 Bitmap wImage = new Bitmap(waterMarkFile); int wWidth = wImage.Width; int wHeight = wImage.Height; //make Graphics. Graphics g = Graphics.FromImage(sImage); int x; //临时变量 int y; //监时变量 int x1 = 0; //原图和水印图的宽度差,即开始绘图的X位置 int y1 = 0; //原图和水印图的高度差,即开始绘图的Y位置 int w = 0; //生成的水印图的宽度,即结束绘图的X位置 int h = 0; //生成的水印图的高度,即结束绘图的Y位置 int al; //alpha int rl; //Red int gl; //Green int bl; //Blue //校验透明度 if(alpha < 1 || alpha > 100) al = 80; else al = alpha; if(sWidth > wWidth & sHeight > wHeight) //如果源图比水印图大 { switch(local) { case 1: //左上 x1 = 0; y1 = 0; |
相关文章推荐
- 用.net实现按透明度生成水印文件
- 生成水印,可按左上、左下、右上、右下、居中、透明度生成文件
- 生成水印,可按左上、左下、右上、右下、居中、透明度生成文件,只对jpeg或jpg格式有效!
- struts2实现上传文件、生成缩略图、添加文字和图片水印
- 生成水印,可按左上、左下、右上、右下、居中、透明度生成文件,只对jpeg或jpg格式有效!
- 生成水印,可按左上、左下、右上、右下、居中、透明度生成文件,只对jpeg或jpg格式有效![原创]
- 生成水印,可按左上、左下、右上、右下、居中、透明度生成文件
- .Net网络通讯编程[利用Socket实现字串、文件、序列化对象传输]--类设计1
- .Net网络通讯编程[利用Socket实现字串、文件、序列化对象传输]--使用封装的网络服务1
- .Net网络通讯编程[利用Socket实现字串、文件、序列化对象传输]--使用封装的网络服务3[聊天室]
- C#编程实现文件压缩生成zip文件 (转)
- 传智播客.Net培训精品就业班1.zip.001打不开怎么办(copy实现合并文件)
- velocity基础教程--4通过velocity生成文件--网站静态化实现方案
- win7环境下实现cl.exe编译c语言 生成.i .asm .obj .exe 文件
- .NET用HttpFileCollection实现多文件上传
- sql下生成文本文件实现
- Unity 实现转策划Execl文档,并根据Xml配置文件生成代码
- 实现poi方式生成excel文件和web类根据路径生成java实例的反射技术的springmvc方法的方法
- 在ASP.NET网站中实现带列表(其由xml文件控制生成)的视频播放
- Servlet上传文件打水印生成缩略图全攻略(转载)