zoukankan
html css js c++ java
Asp.net(C#)给图片加上水印效果
private
void
Btn_Upload_Click(
object
sender, System.EventArgs e)
{
if
(UploadFile.PostedFile.FileName.Trim()
!=
""
)
{
//
上传文件
string
extension
=
Path.GetExtension(UploadFile.PostedFile.FileName).ToUpper();
string
fileName
=
DateTime.Now.Year.ToString()
+
DateTime.Now.Month.ToString()
+
DateTime.Now.Day.ToString()
+
DateTime.Now.Hour.ToString()
+
DateTime.Now.Minute.ToString()
+
DateTime.Now.Second.ToString();
string
path
=
Server.MapPath(
"
.
"
)
+
"
/UploadFile/
"
+
fileName
+
extension;
UploadFile.PostedFile.SaveAs(path);
//
加文字水印,注意,这里的代码和以下加图片水印的代码不能共存
System.Drawing.Image image
=
System.Drawing.Image.FromFile(path);
Graphics g
=
Graphics.FromImage(image);
g.DrawImage(image,
0
,
0
, image.Width, image.Height);
Font f
=
new
Font(
"
Verdana
"
,
32
);
Brush b
=
new
SolidBrush(Color.White);
string
addText
=
AddText.Value.Trim();
g.DrawString(addText, f, b,
10
,
10
);
g.Dispose();
//
加图片水印
System.Drawing.Image image
=
System.Drawing.Image.FromFile(path);
System.Drawing.Image copyImage
=
System.Drawing.Image.FromFile( Server.MapPath(
"
.
"
)
+
"
/Alex.gif
"
);
Graphics g
=
Graphics.FromImage(image);
g.DrawImage(copyImage,
new
Rectangle(image.Width
-
copyImage.Width, image.Height
-
copyImage.Height, copyImage.Width, copyImage.Height),
0
,
0
, copyImage.Width, copyImage.Height, GraphicsUnit.Pixel);
g.Dispose();
//
保存加水印过后的图片,删除原始图片
string
newPath
=
Server.MapPath(
"
.
"
)
+
"
/UploadFile/
"
+
fileName
+
"
_new
"
+
extension;
image.Save(newPath);
image.Dispose();
if
(File.Exists(path))
{
File.Delete(path);
}
Response.Redirect(newPath);
}
}
查看全文
相关阅读:
为什么LIKELY和UNLIKELY要用两个叹号
vuex-persist数据持久化存储插件
【ejabberd】安装XMPP服务器ejabberd(Ubuntu 12.04)
Dynamics CRM2013 picklist下拉项行数控制
jdk1.8新日期时间类(DateTime、LocalDateTime)demo代码
webpack插件解析:HtmlWebpackPlugin是干什么的以及如何使用它
marked实现
Vue组件使用、父子组件传值
VUE启动报错
nodejs创建vue项目
原文地址:https://www.cnblogs.com/King0502/p/2019277.html
最新文章
Git入门指南
快速排序算法
装饰器(Python)
使用游标循环进行SQL更新插入的SQL语句
SQL中@@ROWCOUNT函数
常用SQL语句大全
通过一道CTF学习HTTP协议请求走私
Docker学习第四天(Docker四种网络模式)
[web安全原理分析]-SSRF漏洞入门
[web安全原理分析]-XEE漏洞入门
热门文章
前端web安全-CSRF基础入门
SQL注入学习-Dnslog盲注
Docker学习第三天(Docker数据卷管理)
Docker学习第二天(Docker容器管理)
[原题复现][极客大挑战 2019]BuyFlag
[PHP安全特性学习]is_numeric()函数安全漏洞
手机端页面自适应解决方案—rem布局(进阶版,附源码示例)
茶觉 | 林先生的“突破”
数据之路
第十一次作业
Copyright © 2011-2022 走看看