好学IT学院:IT信息技术分享交流平台
标签:.NET  来源:转载整理  作者:网络  发布时间:2006-09-02  ★★★加入收藏〗〖手机版
摘要:在使用asp的时候,我们时常要借助第三方控件来实现一些图象功能。而现在,asp.net的推出,我们已经没有必要再使用第三方控件来实现,因为asp.net已经具有强大的功能来实现一些图象处理。现在,我们就来看看怎样使用asp.net的这一强大功能。…

三、画图特效

如果只是将图片显示在网页上,这样未免显得简单。现在,我们来进一步感受asp.net的强大功能。我们将学习图象处理中常用的图象反转、图象切割、图象拉伸等技巧。

现在,我们来看看程序代码:

<%@ page language="vb" debug="true" %>

<%@ import namespace="system.drawing" %>

<%@ import namespace="system.drawing.imaging" %>

<%@ import namespace="system.drawing.drawing2d" %>

<%

dim strfilename as string

dim i as system.drawing.image

strfilename = server.mappath("./chris-fsck.jpg")

i = system.drawing.image.fromfile(strfilename)

dim b as new system.drawing.bitmap(i.width, i.height, pixelformat.format24bpprgb)

dim g as graphics = graphics.fromimage(b)

g.clear(color.blue)

"旋转图片

i.rotateflip(system.drawing.rotatefliptype.rotate90flipx) g.drawimage(i,new point(0,0))

i.rotateflip(system.drawing.rotatefliptype.rotate270flipy)

g.rotatetransform(10)

g.drawimage(i,new point(0,0))

g.rotatetransform(10)

g.drawimage(i,new point(20,20))

g.rotatetransform(10)

g.drawimage(i,new point(40,40))

g.rotatetransform(10)

g.drawimage(i,new point(40,40))

g.rotatetransform(-40)

g.rotatetransform(90)

g.drawimage(i,new rectangle(100,-400,100,50),new rectangle(20,20,i.width-20,i.height-20),graphicsunit.pixel)

g.rotatetransform(-90)

" 拉伸图片

g.drawimage(i,new rectangle(10,10,50,50),new rectangle(20,20,i.width-20,i.height-20),graphicsunit.pixel)

g.drawimage(i,new rectangle(50,10,90,50),new rectangle(20,20,i.width-20,i.height-20),graphicsunit.pixel)

g.drawimage(i,new rectangle(110,10,150,50),new rectangle(20,20,i.width-20,i.height-20),graphicsunit.pixel)

"切割图片

g.drawimage(i,50,100,new rectangle(180,80,60,110),graphicsunit.pixel)

g.drawimage(i,140,100,new rectangle(180,80,60,110),graphicsunit.pixel)

"旋转图片

i.rotateflip(system.drawing.rotatefliptype.rotate180flipx)

g.drawimage(i,230,100,new rectangle(180,110,60,110),graphicsunit.pixel)

response.contenttype="image/jpeg"

b.save(response.outputstream, imageformat.jpeg)

b.dispose()

%>

在以上的程序中,我们看到实现图象处理的各种技巧,仔细观察,我们可以知道旋转图片其实是用了一个rotateflip方法;而切割和拉伸图片,完全是通过设置drawimage的不同参数来实现。

四、总结

asp.net的图象处理可以实现的功能很多,我们在这里其实只是简单的介绍,更多功能的应用,需要我们在实践中摸索、总结。

  • 好学触屏公众号虎力全开、杨帆起航!
  • 好学考试H5触屏版开放内测