IT猫扑网 | 论坛社区 | 网址导航 | 网管博客 | 软件下载 | 下载中心 | 小游戏 | 图片频道 | 免费电影 | 猫扑小说 | 免费代理 | 站长工具 | 登陆 | 会员注册 | 收藏本站 
网管联盟
网管首页 操作系统 路由交换 服务器 数据库 网络安全 系统集成 网络编程 IT认证考试 热门排行 视频教程 杀毒更新 下载 论坛 高级搜索 网站地图
 当前位置:IT猫扑网|网管联盟 > 网络编程 > .Net编程 > ASP.Net:System.Drawing的使用

ASP.Net:System.Drawing的使用

更新时间:2008-05-27  作者:网络转载  来源:IT猫扑网  点击:载入中...   推荐  挑错  收藏  打印  关闭

  利用GDI+绘制图形时候,使用的是System.Drawing名称空间下重要类:Graphics类.本节我们讲通过实例模拟现在网站流行的随机验证码功能.功能描述:在生成的的图片上,随机显示几位数字或字幕,用于用户输入操作.

    在GDITec Web应用程序里,添加一个Web窗体,命名为GDI_Sample2.aspx,我们来设计逻辑代码:

    -----code begin-----
    Imports System.Drawing
    Imports System.Drawing.Bitmap
    Imports System.Drawing.Graphics
    Imports System.Drawing.Imaging
    Public Class GDI_Sample2
    Inherits System.Web.UI.Page
    #Region Web 窗体设计器生成的代码
    此处省略啦窗体设计器生成的代码
    #End Region
    Private Sub Page_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
    在此处放置初始化页的用户代码
    Dim objBitmap As Bitmap
    Dim i As Integer
    声明随机种子,用来随机产生1000个象素点的坐标
    Dim objRandom As Random
    声明画布对象
    objBitmap = New Bitmap(150, 50)
    声明Graphics对象
    Dim objGraphics As Graphics
    指定画布
    objGraphics = Graphics.FromImage(objBitmap)
    设置背景
    objGraphics.Clear(Color.Violet)
    声明随机种子
    objRandom = New Random
    生成随机的500掺杂点
    For i = 1 To 500
    objBitmap.SetPixel(objRandom.Next(150), objRandom.Next(50), Color.Snow)
    objBitmap.SetPixel的方法是绘制点,参数3个,分别是X,Y ,Color
    Next
    For i = 1 To 5
    声明并定义字体,字体大小在10-25之间随机
    Dim objfont As Font = New Font(宋体, objRandom.Next(10, 35), FontStyle.Bold)
    objGraphics.DrawString(Chr(objRandom.Next(Asc(A), Asc(Z))), objfont, Brushes.Black, 30 * (i - 1), objRandom.Next(20))
    objGraphics.DrawString(的重载有6种,上句中的参数分别是字符串,字体,画笔,X,Y
    Next
    声明画笔对象,
    Dim objpen As Pen
    生成5条随机的彩线,对生成的8个字符上面画线
    For i = 1 To 8
    实例化画笔,并设置随机生成画笔颜色,定义画笔笔触大小为1个象素
    objpen = New Pen(Color.FromArgb(objRandom.Next(255), objRandom.Next(255), objRandom.Next(255)), 1)
    objGraphics.DrawLine(objpen, objRandom.Next(150), objRandom.Next(50), objRandom.Next(150), objRandom.Next(50))
    objgraphics.DrawLine 共有4种重载函数,这里我们使用的四个参数分别是画笔,X1,Y1,X2,Y2
    Next
    将objGraphics对象以指定的图形格式(这里是Gif)保存到指定的Stream对象,并输出到客户端.
    objBitmap.Save(Response.OutputStream, Drawing.Imaging.ImageFormat.Gif)
    End Sub
    End Class
    -----code end ------

   保存编译后,运行结果如图11.2所示.

点此在新窗口浏览图片
图11.2 GDI_Sample2.aspx运行结果


    如果要在应用程序用使用GDI_Sample2.aspx生成图片的功能,必须有另外一个Web页面引用.

 

    我们再新建一个Web页面,命名为GDI_Sample3.aspx,添加一个Image控件,设置Image控件的属性:

    <asp:Image id=Image1 runat=server Width=141px Height=51px

    ImageUrl=GDI_Sample2.aspx

    ></asp:Image>

    将GDI_Sample3.aspx保存编译后,预览如图11.3所示.

点此在新窗口浏览图片
图11.3 GDI_Sample3.aspx运行结果


 上一篇:了解使用ASP.NET的脚本语言
 下一篇:.net中各种类型文件解析
ASP.Net:System.Drawing的使用 评论:共有 位网友发表了评论 查看所有评论
评论:请自觉遵守互联网相关政策法规,评论不得超过250字。

用户名: 密码: 匿名? 注册用户
内容搜索:
栏目列表:
热门关键字:
赞助广告:
热点关注:
网管论坛交流: