最终效果如图:
CheckCode.aspx.cs代码如下
1
protected void Page_Load(object sender, EventArgs e)
2
{
3
//获取GB2312编码页(表)
4
/**
5
* 生成中文验证验码所要使用的方法
6
* 注,生成中文验证码时要改变一下生成验证码图片的宽度
7
* var imageCode = new System.Drawing.Bitmap((int)Math.Ceiling((code.Length * 22.5)), 23); //定义图片的宽度和高度
8
**/
9
10
//var gb = Encoding.GetEncoding("gb2312");
11
12
////调用函数产生4个随机中文汉字编码
13
//object[] bytes = CreateRegionCode(4);
14
15
////根据汉字编码的字节数组解码出中文汉字
16
//var sbCode = new StringBuilder().Append(gb.GetString((byte[])Convert.ChangeType(bytes[0], typeof(byte[]))))
17
// .Append(gb.GetString((byte[])Convert.ChangeType(bytes[1], typeof(byte[]))))
18
// .Append(gb.GetString((byte[])Convert.ChangeType(bytes[2], typeof(byte[]))))
19
// .Append(gb.GetString((byte[])Convert.ChangeType(bytes[3], typeof(byte[]))));
20
//CreateCheckCodeImage(sbCode.ToString());
21
22
CreateCheckCodeImage(GenerateCheckCode()); //生成数字英文所要使用的方法
23
}
24
25
生成汉字验证码
91
92
生成图片
145
146
生成数据验证码

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

91

92

145

146

使用验证码页面:
1
<form id="formCode" runat="server">
2
<div>
3
<img src="CheckCode.aspx" mce_src="CheckCode.aspx" alt="验证码" />
4
</div>
5
</form>

2

3

4

5
