上传水印图片就是一个选择图片、添加水印、进行上传的过程

绘制图片需要准备:

  画布 - 大小

  笔 - 颜色、粗细、样式

  用什么字体

  要画什么(李献策lxc)

步骤:

一、引用 System.Drawing 命名空间

二、设置<上传>按钮点击事件

1、判断是否选中文件

//判断是否选中文件,如果未选中则提示并跳出代码
if (FileUpload1.FileName.Length <= )
{
Response.Write("<script>alert('未选中任何文件!');</script>");
return;
}

2、准备画布,即要加水印的图片

//准备画布,即要加水印的图片
System.Drawing.Image img = System.Drawing.Image.FromStream(FileUpload1.FileContent);

3、绘制 Graphics

//进行绘制
Graphics g = Graphics.FromImage(img);//要绘制的图片 string s = "2017年,鸡年大吉!";//要添加的文字水印
Font f = new Font("微软雅黑", );//文字的字体和大小
Brush b = new SolidBrush(Color.Red);//画刷的颜色
PointF p = new PointF(, );//水印起始坐标 g.DrawString(s,f,b,p);//进行绘制

4、进行保存

//保存图片
string Rpath = "Images/" + DateTime.Now.ToString("yyyyMMddhhmmssms") + FileUpload1.FileName;
img.Save(Server.MapPath(Rpath));

5、设置 Image 控件显示水印图片

//设置Image控件显示图片
Image1.ImageUrl = Rpath;

完整代码:

//<上传>按钮点击事件
void Button1_Click(object sender, EventArgs e)
{
//判断是否选中文件,如果未选中则提示并跳出代码
if (FileUpload1.FileName.Length <= )
{
Response.Write("<script>alert('未选中任何文件!');</script>");
return;
} //准备画布,即要加水印的图片
System.Drawing.Image img = System.Drawing.Image.FromStream(FileUpload1.FileContent); //进行绘制
Graphics g = Graphics.FromImage(img);//要绘制的图片 string s = "2017年,鸡年大吉!";//要添加的文字水印
Font f = new Font("微软雅黑", );//文字的字体和大小
Brush b = new SolidBrush(Color.Red);//画刷的颜色
PointF p = new PointF(, );//水印起始坐标 g.DrawString(s, f, b, p);//进行绘制 //保存图片
string Rpath = "Images/" + DateTime.Now.ToString("yyyyMMddhhmmssms") + FileUpload1.FileName;
img.Save(Server.MapPath(Rpath)); //设置Image控件显示图片
Image1.ImageUrl = Rpath;
}

绘制图片加水印-<上传>按钮代码

C#-WebForm-★ 上传水印图片 ★的更多相关文章

  1. thinkphp 3.2.3整合ueditor 1.4,给上传的图片加水印

    今天分享一下thinkphp 3.2.3整合ueditor 1.4,给上传的图片加水印.博主是新手,在这里卡住了很久(>_<) thinkphp 3.2.3整合ueditor 1.4 下载 ...

  2. MVC&WebForm对照学习:文件上传(以图片为例)

    原文  http://www.tuicool.com/articles/myM7fe 主题 HTMLMVC模式Asp.net 博客园::首页::  ::  ::  ::管理 5 Posts :: 0 ...

  3. 上传GIF图片方法!

    有朋友问,如何上传GIF图片,在此做一下说明.方法是:在第二栏“上传图片”栏——选择“无水印”——选择文件(找到文件)——点击上传——点击插入——我选的图片 ——上传成功了!

  4. PHP之ThinkPHP框架(验证码、文件上传、图片处理)

     验证码 验证码是框架自带有的,比之前使用GD库简单方便许多,其实现原理基本相似,都是生成图片,保存验证码值到Session中,表单提交验证码,然后进行值的对比验证. 简单的显示: <form ...

  5. ASP.NET、JAVA跨服务器远程上传文件(图片)的相关解决方案整合

    一.图片提交例: A端--提交图片 protected void Page_Load(object sender, EventArgs e) { if (!IsPostBack) { string u ...

  6. 如何预览将要上传的图片-使用H5的FileAPI

    这篇将要说的东西已经不新鲜了. 参考资料: Reading files in JavaScript using the File APIs (鉴于作者在美国, 我姑且认为作者母语是英语, 当然链接中有 ...

  7. js上传压缩图片

    原文链接:http://blog.csdn.net/iefreer/article/details/53039848 手机用户拍的照片通常会有2M以上,这对服务器带宽产生较大压力. 因此在某些应用下( ...

  8. php 实现接收客户端上传的图片

    今天,遇到一个服务端接收客户端上传图片的需求,经过学习.我写了个简单的demo 以备下次学习. 首先服务器接收的发送图片的请求一定要是post请求,而且请求一定要加上 enctype="mu ...

  9. KindEditor上传本地图片在ASP.NET MVC的配置

    http://www.cnblogs.com/upupto/archive/2010/08/24/1807202.html 本文解决KindEditor上传本地图片在ASP.NET MVC中的配置. ...

随机推荐

  1. Eclipse c++代码提示,覆盖下面代码的问题。

    今天在使用Eclipse自动提示时,会覆盖下面行的代码!!! 这个错误几乎不能忍,goolge无果. 手动尝试去掉,全部代码提示,终于找到解法办法,但是原因未知. 如下图:需要去掉 "Par ...

  2. mysql线上一个定时备份脚本

    数据库服务使用的是阿里云的mysql,远程进行定时的全量备份,备份到本地,以防万一.mysql数据库远程备份的数据最好打包压缩: [root@huanqiuPC crontab]# pwd/Data/ ...

  3. TP框架实现分页

    TP框架自带分页的实现方法,所以使用这个分页方案,不用再重新造轮子 1,先看效果图 2,源码 /** * TODO 基础分页的相同代码封装,使前台的代码更少 * @param $m 模型,引用传递 * ...

  4. BZOJ 1854 【Scoi2010】 游戏

    Description lxhgww最近迷上了一款游戏,在游戏里,他拥有很多的装备,每种装备都有2个属性,这些属性的值用[1,10000]之间的数表示.当他使用某种装备时,他只能使用该装备的某一个属性 ...

  5. 通用权限管理系统组件3.9 的 Oracle 数据库创建脚本参考

    ---------------------------------------------------- -- Export file for user USERCENTER -- -- Create ...

  6. mac上开启ftp

    开启 sudo -s launchctl load -w /System/Library/LaunchDaemons/ftp.plist 关闭 sudo -s launchctl unload -w ...

  7. mybatis 3.2.8 + log4j2.0.2 控制台输出sql语句

    mybatis3.2.7有一个bug,使用log4j2 (2.0.2)版本时,会找不到类 ,导致启动失败,详见 https://github.com/mybatis/mybatis-3/issues/ ...

  8. python 测试驱动开发的简单例子

    一.需求分析 需求:一个类 MyClass,有两个功能:add, sub 1.先功能设计 # myclass.py class MyClass(object): # 加法 def add(self): ...

  9. 化茧成蝶,开源NetWorkSocket通讯组件

    前言 前后历时三年,期间大量参考.Net Framework和Asp.net MVC源代码,写写删删再重构,组件如今更新到V1.5.x了.从原来的丑小鸭,变成今天拥有稳定和强大的tcp协议支持基础层, ...

  10. 以HTML为表现的日志记录组件

    日志搬家:http://www.loogn.net/blog/Article.aspx?id=21 关于日志记录,如果你不想随用随写,又不想用log4net的话,也许你可以了解一下这个! 我也是个很懒 ...