zoukankan
html css js c++ java
象yhoo相册那样在网页上操作图片(不完全)_2
操作页面后面代码
protected
System.Web.UI.WebControls.Image MyImage;
//
private System.Drawing.Image ResultImg = null;
private
void
Page_Load(
object
sender, System.EventArgs e)
{
//
在此处放置用户代码以初始化页面
if
(
!
Page.IsPostBack)
{
urlStr.Value
=
"
fileName=3_21165.jpg
"
;
ChangImag();
}
}
private
void
Button1_Click(
object
sender, System.EventArgs e)
{
string
strFilename
=
string
.Empty;
System.Drawing.Image i;
strFilename
=
Server.MapPath(
"
img/3_21165.jpg
"
);
i
=
System.Drawing.Image.FromFile(strFilename);
System.Drawing.Bitmap b
=
new
System.Drawing.Bitmap(
500
,
600
);
Graphics g
=
System.Drawing.Graphics.FromImage(b);
//
'切割图片
g.DrawImage(i,
new
Rectangle(
0
,
0
,b.Width,b.Height),
200
,
20
,b.Width,b.Height,GraphicsUnit.Pixel);
Response.ContentType
=
"
image/jpeg
"
;
b.Save(Server.MapPath(
"
img/1.jpg
"
),System.Drawing.Imaging.ImageFormat.Jpeg);
b.Dispose();
Response.Write(
"
<script language='javascript'>alert('OK');</script>
"
);
}
private
void
TurnOne_Click(
object
sender, System.Web.UI.ImageClickEventArgs e)
{
//翻转
#region
//
翻转
string
goUrl
=
urlStr.Value;
int
i
=
goUrl.IndexOf(
"
ring
"
);
if
(i
==-
1
)
{
goUrl
+=
"
&ring=Rotate180FlipY
"
;
}
else
{
string
donum
=
null
;
for
(
int
j
=
i
+
5
;j
<
goUrl.Length;j
++
)
{
if
(goUrl.Substring(j,
1
)
!=
"
&
"
)
{
donum
+=
goUrl.Substring(j,
1
);
}
else
{
break
;
}
}
switch
(donum)
{
case
"
Rotate90FlipNone
"
:
goUrl
=
goUrl.Replace(
"
&ring=Rotate90FlipNone
"
,
"
&ring=Rotate90FlipX
"
);
break
;
case
"
Rotate180FlipNone
"
:
goUrl
=
goUrl.Replace(
"
&ring=Rotate180FlipNone
"
,
"
&ring=Rotate180FlipX
"
);
break
;
case
"
Rotate270FlipNone
"
:
goUrl
=
goUrl.Replace(
"
&ring=Rotate270FlipNone
"
,
"
&ring=Rotate90FlipY
"
);
break
;
case
"
Rotate90FlipX
"
:
goUrl
=
goUrl.Replace(
"
&ring=Rotate90FlipX
"
,
"
&ring=Rotate90FlipNone
"
);
break
;
case
"
Rotate180FlipX
"
:
goUrl
=
goUrl.Replace(
"
&ring=Rotate180FlipX
"
,
"
&ring=Rotate180FlipNone
"
);
break
;
case
"
Rotate270FlipX
"
:
goUrl
=
goUrl.Replace(
"
&ring=Rotate270FlipX
"
,
"
&ring=Rotate90FlipXY
"
);
break
;
case
"
RotateNoneFlipX
"
:
goUrl
=
goUrl.Replace(
"
&ring=RotateNoneFlipX
"
,
""
);
break
;
case
"
Rotate90FlipY
"
:
goUrl
=
goUrl.Replace(
"
&ring=Rotate90FlipY
"
,
"
&ring=Rotate270FlipNone
"
);
break
;
case
"
Rotate180FlipY
"
:
goUrl
=
goUrl.Replace(
"
&ring=Rotate180FlipY
"
,
""
);
break
;
case
"
Rotate270FlipY
"
:
goUrl
=
goUrl.Replace(
"
&ring=Rotate270FlipY
"
,
"
&ring=Rotate90FlipNone
"
);
break
;
case
"
RotateNoneFlipY
"
:
goUrl
=
goUrl.Replace(
"
&ring=RotateNoneFlipY
"
,
"
&ring=Rotate180FlipNone
"
);
break
;
case
"
Rotate90FlipXY
"
:
goUrl
=
goUrl.Replace(
"
&ring=Rotate90FlipXY
"
,
"
&ring=Rotate270FlipX
"
);
break
;
case
"
Rotate180FlipXY
"
:
goUrl
=
goUrl.Replace(
"
&ring=Rotate180FlipXY
"
,
"
&ring=RotateNoneFlipX
"
);
break
;
case
"
Rotate270FlipXY
"
:
goUrl
=
goUrl.Replace(
"
&ring=Rotate270FlipXY
"
,
"
&ring=Rotate90FlipX
"
);
break
;
case
"
RotateNoneFlipXY
"
:
goUrl
=
goUrl.Replace(
"
&ring=RotateNoneFlipXY
"
,
"
&ring=RotateNoneFlipY
"
);
break
;
}
}
#endregion
urlStr.Value
=
goUrl;
ChangImag();
}
private
void
ChangImag()
{
MyImage.ImageUrl
=
"
MyImg.aspx?
"
+
urlStr.Value;
}
private
void
GoRr_Click(
object
sender, System.Web.UI.ImageClickEventArgs e)
{
//顺时钟
#region
//
顺时钟
string
goUrl
=
urlStr.Value;
int
i
=
goUrl.IndexOf(
"
ring
"
);
if
(i
==-
1
)
{
goUrl
+=
"
&ring=Rotate90FlipNone
"
;
}
else
{
string
donum
=
null
;
for
(
int
j
=
i
+
5
;j
<
goUrl.Length;j
++
)
{
if
(goUrl.Substring(j,
1
)
!=
"
&
"
)
{
donum
+=
goUrl.Substring(j,
1
);
}
else
{
break
;
}
}
switch
(donum)
{
case
"
Rotate90FlipNone
"
:
goUrl
=
goUrl.Replace(
"
&ring=Rotate90FlipNone
"
,
"
&ring=Rotate180FlipNone
"
);
break
;
case
"
Rotate180FlipNone
"
:
goUrl
=
goUrl.Replace(
"
&ring=Rotate180FlipNone
"
,
"
&ring=Rotate270FlipNone
"
);
break
;
case
"
Rotate270FlipNone
"
:
goUrl
=
goUrl.Replace(
"
&ring=Rotate270FlipNone
"
,
""
);
break
;
case
"
Rotate90FlipX
"
:
goUrl
=
goUrl.Replace(
"
&ring=Rotate90FlipX
"
,
"
&ring=RotateNoneFlipX
"
);
break
;
case
"
Rotate180FlipX
"
:
goUrl
=
goUrl.Replace(
"
&ring=Rotate180FlipX
"
,
"
&ring=Rotate90FlipX
"
);
break
;
case
"
Rotate270FlipX
"
:
goUrl
=
goUrl.Replace(
"
&ring=Rotate270FlipX
"
,
"
&ring=Rotate180FlipX
"
);
break
;
case
"
RotateNoneFlipX
"
:
goUrl
=
goUrl.Replace(
"
&ring=RotateNoneFlipX
"
,
"
&ring=Rotate270FlipX
"
);
break
;
case
"
Rotate90FlipY
"
:
goUrl
=
goUrl.Replace(
"
&ring=Rotate90FlipY
"
,
"
&ring=RotateNoneFlipY
"
);
break
;
case
"
Rotate180FlipY
"
:
goUrl
=
goUrl.Replace(
"
&ring=Rotate180FlipY
"
,
"
&ring=Rotate90FlipY
"
);
break
;
case
"
Rotate270FlipY
"
:
goUrl
=
goUrl.Replace(
"
&ring=Rotate270FlipY
"
,
"
&ring=Rotate180FlipY
"
);
break
;
case
"
RotateNoneFlipY
"
:
goUrl
=
goUrl.Replace(
"
&ring=RotateNoneFlipY
"
,
"
&ring=Rotate270FlipY
"
);
break
;
case
"
Rotate90FlipXY
"
:
goUrl
=
goUrl.Replace(
"
&ring=Rotate90FlipXY
"
,
"
&ring=Rotate180FlipXY
"
);
break
;
case
"
Rotate180FlipXY
"
:
goUrl
=
goUrl.Replace(
"
&ring=Rotate180FlipXY
"
,
"
&ring=Rotate270FlipXY
"
);
break
;
case
"
Rotate270FlipXY
"
:
goUrl
=
goUrl.Replace(
"
&ring=Rotate270FlipXY
"
,
"
&ring=RotateNoneFlipXY
"
);
break
;
case
"
RotateNoneFlipXY
"
:
goUrl
=
goUrl.Replace(
"
&ring=RotateNoneFlipXY
"
,
"
&ring=Rotate90FlipXY
"
);
break
;
}
}
#endregion
urlStr.Value
=
goUrl;
ChangImag();
}
private
void
GoRl_Click(
object
sender, System.Web.UI.ImageClickEventArgs e)
{
//逆时钟
#region
//
逆时钟
string
goUrl
=
urlStr.Value;
int
i
=
goUrl.IndexOf(
"
ring
"
);
if
(i
==-
1
)
{
goUrl
+=
"
&ring=Rotate270FlipNone
"
;
}
else
{
string
donum
=
null
;
for
(
int
j
=
i
+
5
;j
<
goUrl.Length;j
++
)
{
if
(goUrl.Substring(j,
1
)
!=
"
&
"
)
{
donum
+=
goUrl.Substring(j,
1
);
}
else
{
break
;
}
}
switch
(donum)
{
case
"
Rotate90FlipNone
"
:
goUrl
=
goUrl.Replace(
"
&ring=Rotate90FlipNone
"
,
""
);
break
;
case
"
Rotate180FlipNone
"
:
goUrl
=
goUrl.Replace(
"
&ring=Rotate180FlipNone
"
,
"
&ring=Rotate90FlipNone
"
);
break
;
case
"
Rotate270FlipNone
"
:
goUrl
=
goUrl.Replace(
"
&ring=Rotate270FlipNone
"
,
"
&ring=Rotate180FlipNone
"
);
break
;
case
"
RotateNoneFlipX
"
:
goUrl
=
goUrl.Replace(
"
&ring=RotateNoneFlipX
"
,
"
&ring=Rotate90FlipX
"
);
break
;
case
"
Rotate90FlipX
"
:
goUrl
=
goUrl.Replace(
"
&ring=Rotate90FlipX
"
,
"
&ring=Rotate180FlipX
"
);
break
;
case
"
Rotate180FlipX
"
:
goUrl
=
goUrl.Replace(
"
&ring=Rotate180FlipX
"
,
"
&ring=Rotate270FlipX
"
);
break
;
case
"
Rotate270FlipX
"
:
goUrl
=
goUrl.Replace(
"
&ring=Rotate270FlipX
"
,
"
&ring=RotateNoneFlipX
"
);
break
;
case
"
RotateNoneFlipY
"
:
goUrl
=
goUrl.Replace(
"
&ring=RotateNoneFlipY
"
,
"
&ring=Rotate90FlipY
"
);
break
;
case
"
Rotate90FlipY
"
:
goUrl
=
goUrl.Replace(
"
&ring=Rotate90FlipY
"
,
"
&ring=Rotate180FlipY
"
);
break
;
case
"
Rotate180FlipY
"
:
goUrl
=
goUrl.Replace(
"
&ring=Rotate180FlipY
"
,
"
&ring=Rotate270FlipY
"
);
break
;
case
"
Rotate270FlipY
"
:
goUrl
=
goUrl.Replace(
"
&ring=Rotate270FlipY
"
,
"
&ring=RotateNoneFlipY
"
);
break
;
case
"
RotateNoneFlipXY
"
:
goUrl
=
goUrl.Replace(
"
&ring=RotateNoneFlipXY
"
,
"
&ring=Rotate270FlipXY
"
);
break
;
case
"
Rotate90FlipXY
"
:
goUrl
=
goUrl.Replace(
"
&ring=Rotate90FlipXY
"
,
"
&ring=RotateNoneFlipXY
"
);
break
;
case
"
Rotate180FlipXY
"
:
goUrl
=
goUrl.Replace(
"
&ring=Rotate180FlipXY
"
,
"
&ring=Rotate90FlipXY
"
);
break
;
case
"
Rotate270FlipXY
"
:
goUrl
=
goUrl.Replace(
"
&ring=Rotate270FlipXY
"
,
"
&ring=Rotate180FlipXY
"
);
break
;
}
}
#endregion
urlStr.Value
=
goUrl;
ChangImag();
}
private
void
ContCut_Click(
object
sender, System.Web.UI.ImageClickEventArgs e)
{
对比减小
#region
对比减小
string
goUrl
=
urlStr.Value;
int
i
=
goUrl.IndexOf(
"
Contrast
"
);
string
donum
=
null
;
if
(i
==-
1
)
{
goUrl
+=
"
&Contrast=-0.1
"
;
}
else
{
for
(
int
j
=
i
+
9
;j
<
goUrl.Length;j
++
)
{
if
(goUrl.Substring(j,
1
)
!=
"
&
"
)
{
donum
+=
goUrl.Substring(j,
1
);
}
else
{
break
;
}
}
double
brightnum
=
0
;
try
{
brightnum
=
double
.Parse(donum);
}
catch
{
brightnum
=
0
;
}
if
(brightnum
>-
1
&&
brightnum
<=
1
)
{
brightnum
-=
0.1
;
}
goUrl
=
goUrl.Replace(
"
&Contrast=
"
+
donum,
"
&Contrast=
"
+
brightnum.ToString());
}
urlStr.Value
=
goUrl;
ChangImag();
#endregion
}
private
void
ContAdd_Click(
object
sender, System.Web.UI.ImageClickEventArgs e)
{
对比增加
#region
对比增加
string
goUrl
=
urlStr.Value;
int
i
=
goUrl.IndexOf(
"
Contrast
"
);
string
donum
=
null
;
if
(i
==-
1
)
{
goUrl
+=
"
&Contrast=0.1
"
;
}
else
{
for
(
int
j
=
i
+
9
;j
<
goUrl.Length;j
++
)
{
if
(goUrl.Substring(j,
1
)
!=
"
&
"
)
{
donum
+=
goUrl.Substring(j,
1
);
}
else
{
break
;
}
}
double
brightnum
=
0
;
try
{
brightnum
=
double
.Parse(donum);
}
catch
{
brightnum
=
0
;
}
if
(brightnum
>=-
1
&&
brightnum
<
1
)
{
brightnum
+=
0.1
;
}
goUrl
=
goUrl.Replace(
"
&Contrast=
"
+
donum,
"
&Contrast=
"
+
brightnum.ToString());
}
urlStr.Value
=
goUrl;
ChangImag();
#endregion
}
private
void
BrightAdd_Click(
object
sender, System.Web.UI.ImageClickEventArgs e)
{
亮度增加
#region
亮度增加
string
goUrl
=
urlStr.Value;
int
i
=
goUrl.IndexOf(
"
Bright
"
);
string
donum
=
null
;
if
(i
==-
1
)
{
goUrl
+=
"
&Bright=1.1
"
;
}
else
{
for
(
int
j
=
i
+
7
;j
<
goUrl.Length;j
++
)
{
if
(goUrl.Substring(j,
1
)
!=
"
&
"
)
{
donum
+=
goUrl.Substring(j,
1
);
}
else
{
break
;
}
}
double
brightnum
=
1
;
try
{
brightnum
=
double
.Parse(donum);
}
catch
{
brightnum
=
1
;
}
if
(brightnum
>=
0
&&
brightnum
<
3
)
{
brightnum
+=
0.1
;
}
goUrl
=
goUrl.Replace(
"
&Bright=
"
+
donum,
"
&Bright=
"
+
brightnum.ToString());
}
urlStr.Value
=
goUrl;
ChangImag();
#endregion
}
private
void
BrightCut_Click(
object
sender, System.Web.UI.ImageClickEventArgs e)
{
亮度减少
#region
亮度减少
string
goUrl
=
urlStr.Value;
int
i
=
goUrl.IndexOf(
"
Bright
"
);
if
(i
==-
1
)
{
goUrl
+=
"
&Bright=0.9
"
;
}
else
{
string
donum
=
null
;
for
(
int
j
=
i
+
7
;j
<
goUrl.Length;j
++
)
{
if
(goUrl.Substring(j,
1
)
!=
"
&
"
)
{
donum
+=
goUrl.Substring(j,
1
);
}
else
{
break
;
}
}
double
brightnum
=
1
;
try
{
brightnum
=
double
.Parse(donum);
}
catch
{
brightnum
=
1
;
}
if
(brightnum
>
0
&&
brightnum
<=
3
)
{
brightnum
-=
0.1
;
}
goUrl
=
goUrl.Replace(
"
&Bright=
"
+
donum,
"
&Bright=
"
+
brightnum.ToString());
}
urlStr.Value
=
goUrl;
ChangImag();
#endregion
}
查看全文
相关阅读:
#leetcode687.最长同值路径
#leetcode404.所有左叶子节点之和
#leetcode111.二叉树的最小深度
#leetcode101.对称二叉树
#leetcode437.路径总和II
#leetcode112.路径总和
#leetcode543.二叉树的直径
#leetcode110.平衡二叉树
springboot数据库密码加密-使用自定义加密算法
PHP加密
原文地址:https://www.cnblogs.com/cerxp/p/80870.html
最新文章
MySQL索引原理详解
MySQL文件结构解读
Redis性能调优及缓存常见问题
Redis数据类型使用场景以及Redis高级用法
Redis架构原理与集群演变
工厂模式
面向对象七大设计原则
cesium中的四种拾取pick
Modelsim波形显示字符
一张图说明 iaas paas saas的区别
热门文章
MyBatis-Plus QueryWrapper及LambdaQueryWrapper的使用
git 切换分支 本地代码失踪找回办法
1056 Mice and Rice (25分)队列
1051 Pop Sequence (25分)栈
1016 Phone Bills (25分)
将WPF发布为exe安装包
C#中 一个多线程框架
程序员正确使用百度的方式
关于com.google.gson.JsonSyntaxException时间格式解析错误问题
【转载】偏向锁 轻量级锁、互斥锁的原理
Copyright © 2011-2022 走看看