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
}
查看全文
相关阅读:
网易云信Duilib开发实践和Windows应用界面开发框架源码开源介绍
WebRTC 之ICE浅谈
如何做好 Android 端音视频测试?
技术详解:实现互动直播全过程
视频直播技术:最大限度保障流畅性和清晰度
Python 爬虫之request+beautifulsoup+mysql
Python之Mysql实战
Python多线程的效率
Python 调用Jenkins API自动化发布服务(完整版)
Python爬虫之request +re
原文地址:https://www.cnblogs.com/cerxp/p/80870.html
最新文章
C++11 新特性学习
C++继承、多态与虚表
extern "C" 与函数重载
Nginx的相关介绍
C/C++内存四区
动态规划
梯度提升树 Gradient Boosting Decision Tree
剑指offer-二叉树
决策树 Decision Tree
GAN生成的评价指标 Evaluation of GAN
热门文章
GAN在seq2seq中的应用 Application to Sequence Generation
基于GAN的特征抽取 Feature Extraction by GAN
提升GAN的技术 Tips for Improving GAN
剑指offer-链表&数组
剑指offer-字符串&数字规律
网易云信融合CDN方案及实践
移动端硬解关键流程梳理
浅析State-Thread
TC基础与自动化
BBR在实时音视频领域的应用
Copyright © 2011-2022 走看看