最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

.Net Core 下使用ZKWeb.System.Drawing實(shí)現(xiàn)驗(yàn)證碼功能(圖形驗(yàn)證碼)

 更新時(shí)間:2016年11月15日 09:28:17   作者:NiaoX  
本文介紹.Net Core下用第三方ZKWeb.System.Drawing實(shí)現(xiàn)驗(yàn)證碼功能。非常不錯(cuò)具有參考借鑒價(jià)值,感興趣的朋友一起看看吧

本文介紹.Net Core下用第三方ZKWeb.System.Drawing實(shí)現(xiàn)驗(yàn)證碼功能。

通過(guò)測(cè)試的系統(tǒng):

Windows 8.1 64bit
Ubuntu Server 16.04 LTS 64bit
Fedora 24 64bit
CentOS 7.2 64bit

可以實(shí)現(xiàn)以下功能:

Open jpg, bmp, ico, png
Save jpg, bmp, ico, png
Resize image
Draw graphics with brush and pen
Open font and draw string

以上是官方給的資料。

No.1 項(xiàng)目引入ZKWeb.System.Drawing

NuGet引入包,不會(huì)的自己百度。

No.2 簡(jiǎn)單的驗(yàn)證碼生成

int codeW = 80;
int codeH = 30;
int fontSize = 16;
Random rnd = new Random();
//顏色列表,用于驗(yàn)證碼、噪線、噪點(diǎn) 
Color[] color = { Color.Black, Color.Red, Color.Blue, Color.Green, Color.Orange, Color.Brown, Color.Brown, Color.DarkBlue };
//字體列表,用于驗(yàn)證碼 
string[] font = { "Times New Roman" };
//驗(yàn)證碼的字符集,去掉了一些容易混淆的字符 
//寫(xiě)入Session、驗(yàn)證碼加密
//WebHelper.WriteSession("session_verifycode", Md5Helper.MD5(chkCode.ToLower(), 16));
//創(chuàng)建畫(huà)布
Bitmap bmp = new Bitmap(codeW, codeH);
Graphics g = Graphics.FromImage(bmp);
g.Clear(Color.White);
//畫(huà)噪線 
for (int i = 0; i < 1; i++)
{
int x1 = rnd.Next(codeW);
int y1 = rnd.Next(codeH);
int x2 = rnd.Next(codeW);
int y2 = rnd.Next(codeH);
Color clr = color[rnd.Next(color.Length)];
g.DrawLine(new Pen(clr), x1, y1, x2, y2);
}
//畫(huà)驗(yàn)證碼字符串 
for (int i = 0; i < chkCode.Length; i++)
{
string fnt = font[rnd.Next(font.Length)];
Font ft = new Font(fnt, fontSize);
Color clr = color[rnd.Next(color.Length)];
g.DrawString(chkCode[i].ToString(), ft, new SolidBrush(clr), (float)i * 18, (float)0);
}
//將驗(yàn)證碼圖片寫(xiě)入內(nèi)存流,并將其以 "image/Png" 格式輸出 
MemoryStream ms = new MemoryStream();
try
{
bmp.Save(ms, ImageFormat.Png);
return ms.ToArray();
}
catch (Exception)
{
return null;
}
finally
{
g.Dispose();
bmp.Dispose();
}

No.3 發(fā)布部署運(yùn)行

直接上圖,不會(huì)的看這里.Net Core 之 Ubuntu 14.04 部署過(guò)程(圖文詳解)

注意:驗(yàn)證碼Windows下生成無(wú)壓力,我用的Ubuntu 14,需要安裝gdi包,運(yùn)行日志中會(huì)有提示。

安裝方法:

Ubuntu 16.04:

apt-get install libgdiplus
cd /usr/lib
ln -s libgdiplus.so gdiplus.dll

Fedora 23:

dnf install libgdiplus
cd /usr/lib64/
ln -s libgdiplus.so.0 gdiplus.dll

CentOS 7:

yum install autoconf automake libtool
yum install freetype-devel fontconfig libXft-devel
yum install libjpeg-turbo-devel libpng-devel giflib-devel libtiff-devel libexif-devel
yum install glib2-devel cairo-devel
git clone https://github.com/mono/libgdiplus
cd libgdiplus
./autogen.sh
make
make install
cd /usr/lib64/
ln -s /usr/local/lib/libgdiplus.so gdiplus.dll

以上所述是小編給大家介紹的.Net Core 下使用ZKWeb.System.Drawing實(shí)現(xiàn)驗(yàn)證碼功能(圖形驗(yàn)證碼),希望對(duì)大家有所幫助,如果大家有任何疑問(wèn)請(qǐng)給我留言,小編會(huì)及時(shí)回復(fù)大家的。在此也非常感謝大家對(duì)腳本之家網(wǎng)站的支持!

相關(guān)文章

最新評(píng)論

芦溪县| 哈密市| 万源市| 恩平市| 屯留县| 青神县| 眉山市| 大丰市| 治县。| 修文县| 景德镇市| 清河县| 长葛市| 阿拉尔市| 蓝山县| 安宁市| 红河县| 且末县| 分宜县| 电白县| 江阴市| 嘉峪关市| 临洮县| 迁安市| 东至县| 青冈县| 龙游县| 西和县| 舞钢市| 淮安市| 崇明县| 罗山县| 左权县| 陆川县| 淮阳县| 肇州县| 德令哈市| 新化县| 德阳市| 岑巩县| 江西省|