上传图片加水印/logo(引用)
来源:互联网 发布:酷乐潮玩有淘宝吗 编辑:程序博客网 时间:2024/04/30 05:41
这是引用网友的一篇文章,但效果差不很好,最近也在研究这个问题,如果有了新进展会发上来,谢谢大家关注,如果大家有好的方法也可以发到我的论坛里面:http://www.seablue.cn/bbs
ASP.NET上传图片后,要加上水印.比如网址. 文字为白色.但是当背景是白色的时候,水印根本看不到. 到处搜索资料,找画文字阴影的办法. 找了好几个,最后找了个老外的文章,和.Net自带文档里的说法一样. 居然是先画2-5个alpha值不同的灰色文字当阴影.. 再在上面,画正常颜色的文本....汗!!!!!!!!!!!!!!!!!!111 没有办法了,只好将就用了.效果还一般.
Font font=new Font("Arial Black",15,FontStyle.Bold);
SizeF sf=g.MeasureString("ImgGood.Com",font);
PointF pf=new PointF(); pf.X=(250-sf.Width)/2;
pf.Y=(bHeight-sf.Height)/2;
//新建水印bmp
Bitmap floatBmp=new Bitmap((int)sf.Width+3,(int)sf.Height+3,System.Drawing.Imaging.PixelFormat.Format32bppArgb);
//Bitmap floatBmp=new Bitmap(250,100); //Bitmap floatBmp=new Bitmap((int)sf.Width,(int)sf.Height); Graphics fg=Graphics.FromImage(floatBmp);
//画上阴影字符 PointF pt=new PointF(0,0);
System.Drawing.Brush TransparentBrush0 = new System.Drawing.SolidBrush( System.Drawing.Color.FromArgb(50,System.Drawing.Color.Black ) ) ;
System.Drawing.Brush TransparentBrush1 = new System.Drawing.SolidBrush( System.Drawing.Color.FromArgb(20,System.Drawing.Color.Black ) ) ;
fg.DrawString("ImgGood.Com",font,TransparentBrush0,pt.X,pt.Y+1);
fg.DrawString("ImgGood.Com",font,TransparentBrush0,pt.X+1,pt.Y);
fg.DrawString("ImgGood.Com",font,TransparentBrush1,pt.X+1,pt.Y+1);
fg.DrawString("ImgGood.Com",font,TransparentBrush1,pt.X,pt.Y+2);
fg.DrawString("ImgGood.Com",font,TransparentBrush1,pt.X+2,pt.Y);
TransparentBrush0.Dispose();
TransparentBrush1.Dispose();
//画上LOGO字符 fg.SmoothingMode=System.Drawing.Drawing2D.SmoothingMode.HighQuality;
//fg.Clear(Color.Black);
fg.DrawString("ImgGood.Com",font,new SolidBrush(Color.White),pt.X,pt.Y,StringFormat.GenericDefault);
//画水印到 大图 fg.Save(); fg.Dispose();
//设置透明图像的颜色属性
float[][] ptsArray ={ new float[] {1, 0, 0, 0, 0},
new float[] {0, 1, 0, 0, 0}, new float[] {0, 0, 1, 0, 0},
new float[] {0, 0, 0, 0.5f, 0}, new float[] {0, 0, 0, 0, 1}};
ColorMatrix clrMatrix = new ColorMatrix(ptsArray);
ImageAttributes imgAttributes = new ImageAttributes();
imgAttributes.SetColorMatrix(clrMatrix, ColorMatrixFlag.Default,ColorAdjustType.Bitmap);
g.DrawImage(floatBmp,new Rectangle(10,10,(int)sf.Width,(int)sf.Height),0,0,(int)sf.Width,(int)sf.Height,GraphicsUnit.Pixel,imgAttributes);
//========================================================================
g.Save(); g.Dispose();
bigBmp.Save(filePath + "B/" + fileName);
bigBmp.Dispose();
代码不难,不解决了
- 上传图片加水印/logo(引用)
- 上传图片加水印
- PHP图片上传加水印(转)
- 关于图片上传加水印~~
- PHP图片上传加水印
- 图片加水印上传(PHP)
- 上传并加文字水印 上传并加图片水印
- php给上传图片加图片水印
- ASP.NET图片上传,加水印文字和水印图片!
- c# 上传图片加文字水印及图片水印
- 用java处理图片(压缩成小尺寸;加文字和logo水印)
- php给上传图片加水印图案
- 上传图片,加水印并且产生缩略图
- 图片上传以及文章加水印
- ASP.NET图片上传加水印
- 上传图片加水印,缩略图代码
- php多张图片上传加水印
- struts图片的上传,压缩,加水印
- 社区化电子商务日渐升温
- MFC学习
- 互联网项目快速获取风险投资的三种方式
- 免费CSS布局和模板大集合
- 苦闷的日子
- 上传图片加水印/logo(引用)
- 给校内加个背景图片
- DOS下结束进程的命令
- 可视化开发qt程序
- 人老了 记性不好了
- C# 中的委托和事件
- 催促网上书店尽快送书的妙法
- Spring 框架简介
- 程序员创业(一,准备过程)--创业未成功人士讲述未成功经验