宝哥软件园

净核心下使用ZKWeb .系统图实现验证码功能(图形验证码)

编辑:宝哥软件园 来源:互联网 时间:2021-09-12

本文介绍。净核心下用第三方ZKWeb .系统图实现验证码功能。

通过测试的系统:

Windows 8.1 64bitUbuntu服务器16.04 LTS 64位64bitFedora 24位centos 7.2 64位

可以实现以下功能:

打开jpg,bmp,ico,pngSave jpg,bmp,ico,pngResize imageDraw带有画笔和钢笔的图形打开字体并绘制字符串

以上是官方给的资料。

第一项目引入ZKWeb .系统图

NuGet引入包,不会的自己百度。

2号简单的验证码生成

int codeW=80 int codeH=30 int font size=16 Random rnd=new Random();//颜色列表,用于验证码、噪线、噪点颜色[]颜色={颜色。黑色,彩色。红色,彩色。蓝色,彩色。绿色,彩色。橙色,彩色。棕色,彩色。棕色,彩色。深蓝色};//字体列表,用于验证码string[]font={ ' Times New Roman ' };//验证码的字符集,去掉了一些容易混淆的字符//写入会议,验证码加密//WebHelper .写入会话('会话验证代码',Md5Helper .MD5(chkCode .ToLower(),16));//创建画布位图bmp=新位图(codeW,CodeH);图形g=图形.来自IMage(BMP);透明(颜色。白色);//画噪线for(int I=0;一1;i ){int x1=rnd .下一步(CodeW);int y1=rnd .下一个(CodeH);int x2=rnd .下一步(CodeW);int y2=rnd .下一个(CodeH);颜色clr=颜色[rnd .下一个(颜色。长度)];g.DrawLine(new Pen(clr),x1,y1,x2,y2);}//画验证码字符串for(int I=0;我是chkCode .长度;i ){string fnt=font[rnd .下一个(字体。长度)];字体ft=新字体(fnt,字号);颜色clr=颜色[rnd .下一个(颜色。长度)];g。拉绳(chkCode[i]).ToString(),ft,new SolidBrush(clr),(float)i * 18,(float)0);}//将验证码图片写入内存流,并将其以图像/Png '格式输出内存流ms=新内存流();尝试{bmp .保存(毫秒,图像格式. png);返回ToArray女士();}catch(异常){返回null}最后{ g . Dispose();bmp .dispose();}第三名发布部署运行

直接上图,不会的看这里。净核心之Ubuntu 14.04部署过程(图文详解)

注意:验证码Windows操作系统操作系统下生成无压力,我用的Ubuntu 14,需要安装图形设备接口包,运行日志中会有提示。

安装方法:

Ubuntu 16.04:

apt-get install libgdipluscd/usr/libln-s libgdiplus。所以格迪普洛斯。dllfedora 23:

未完成(did not finish)安装libgdipluscd/usr/lib 64/ln-s libgdiplus。所以。0 gdiplus。dllcentos 7:

yum install auto nf automake libtoolym install freetype-dev font config LibXft-development yum install libjpeg-turbo-dev libpng-dev gif lib-dev libtiff-development libexif-development yum install gli B2-development cairo-dev git克隆https://github.com/mono/libgdipluscd利格迪普洛斯./autogen。shmakemake install CD/usr/lib 64/ln-s/usr/local/lib/libgdiplus。所以gdiplus.dll以上所述是小编给大家介绍的。网核心下使用ZKWeb .系统图实现验证码功能(图形验证码),希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对我们网站的支持!

更多资讯
游戏推荐
更多+