Project.WebUi/Vcode.aspx.cs
(开头部分) 3KB这里只显示每个文件的开头 60 行。登录后可以解锁完整代码。
using System;
using System.Drawing;
using System.Drawing.Imaging;
namespace Project.WebUi
{
public partial class Vcode : System.Web.UI.Page
{
//生成验证码图片
protected void Page_Load(object sender, EventArgs e)
{
//定义图片的宽度
int ImageWidth = 55;
//定义图片高度
int ImageHeigh = 22;
//定义字体,用于绘制文字
Font font = new Font("Arial", 12, FontStyle.Bold);
//定义画笔,用于绘制文字
Brush brush = new SolidBrush(Color.Black);
//定义钢笔,用于绘制干扰线
Pen pen1 = new Pen(Color.FromArgb(255, 100, 100), 0);//这里也可以直接获得一个现有的color对象如:Color.Gold.我是为了美观所以定义和下面一样
Pen pen2 = new Pen(Color.FromArgb(255, 100, 100), 0);//这里根据ARGB值定义获得了一个color对象
//创建一个图像
Bitmap BitImage = new Bitmap(ImageWidth, ImageHeigh);
//从图像获取一个绘画面
Graphics graphics = Graphics.FromImage(BitImage);
//清除整个绘图画面并用颜色填充
graphics.Clear(ColorTranslator.FromHtml("#F0F0F0"));//这里从HTML代码获取color对象
//定义文字的绘制矩形区域
RectangleF rect = new RectangleF(5, 2, ImageWidth, ImageHeigh);
//定义一个随机数对象,用于绘制干扰线
Random rand = new Random();
//生成两条横向的干扰线
for (int i = 0; i < 2; i++)
{
//定义起点
Point p1 = new Point(0, rand.Next(ImageHeigh));
//定义终点
Point p2 = new Point(ImageWidth, rand.Next(ImageHeigh));
//绘制直线
graphics.DrawLine(pen1, p1, p2);
}
//生成两条纵向的干扰线
for (int i = 0; i < 2; i++)
{
//定义起点
Point p1 = new Point(rand.Next(ImageWidth), 0);
//定义终点
Point p2 = new Point(rand.Next(ImageWidth), ImageHeigh);
//绘制直线
graphics.DrawLine(pen2, p1, p2);
}
//绘制验证码文字
后面还有 28 行代码,解锁后查看完整代码
24 小时内免费解锁 3 个项目,之后 1 算力/个。 规则说明
AI 解读 AI
登录后可用,每次 10 算力,解读结果公开显示在下面。
还没有人解读过这个文件。