999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

基于GDI+的Web端頁面驗(yàn)證碼繪制

2018-03-21 09:27:04李軍連俊光
電腦知識(shí)與技術(shù) 2018年3期

李軍 連俊光

摘要:GDI+,全稱為Graphics Device Interface plus,中文名稱是圖形設(shè)備接口,可滿足程序中對(duì)驗(yàn)證碼繪制及輸出的需求。驗(yàn)證碼,是一種能保證用戶在登錄Web時(shí)賬戶安全的方式,能夠有效防止計(jì)算機(jī)暴力破解。

關(guān)鍵詞:GDI+;驗(yàn)證碼;安全登錄

中圖分類號(hào):TP311 文獻(xiàn)標(biāo)識(shí)碼:A 文章編號(hào):1009-3044(2018)03-0072-02

1 概述

為了杜絕某個(gè)指定的用戶被網(wǎng)絡(luò)hacker使用自己編寫的程序采用隨機(jī)、多次、強(qiáng)制的方法進(jìn)行破解,便產(chǎn)生了驗(yàn)證碼。驗(yàn)證碼本質(zhì)為一張圖片,圖片上的內(nèi)容由形狀不規(guī)則、顏色不同的字母、數(shù)字構(gòu)成,最后通過GDI+輸出到用戶界面上。

2 GDI+介紹

GDI+是用來交換系統(tǒng)和程序的信息,輸出程序中需要的圖形。相對(duì)于GDI增加了許多新的功能:

1) 畫刷可以漸變,在繪制直線時(shí),畫刷漸變,即在繪制一條直線的過程中顏色在漸漸變化。

2) 基數(shù)樣條函數(shù),由指定的點(diǎn)形成樣條,單條曲線按順序連接形成更大曲線即基數(shù)樣條,相比與傳統(tǒng)直線路徑更加準(zhǔn)確。

3) 相對(duì)于GDI只支持區(qū)域的移動(dòng),GDI+支持了區(qū)域的伸縮。

4) 支持的圖像格式更多。

3 GDI+操作方法說明

3.1 FromImage(參數(shù))方法

FromImage是在Graphics類下的方法,用來在畫布上生成畫筆對(duì)象,使用時(shí)傳遞的參數(shù)即為要生成畫筆的畫布對(duì)象。假設(shè)創(chuàng)建的畫布對(duì)象為image,要在image畫布上生成畫筆,便可以使用FromImage方法, Graphics.FromImage(image),此時(shí)即在指定畫布上生成了畫筆,將生成的畫筆對(duì)象賦給Graphics g,便完成了在畫布上創(chuàng)建畫筆的工作。

3.2 Clear(參數(shù))方法

Clear方法是用來改變畫布的背景顏色的,使用Clear方法可以直接改變整塊畫布的顏色。傳遞的參數(shù)即為想要填充的畫布背景顏色。假設(shè)已經(jīng)綁定畫布的畫筆對(duì)象為g,要清空畫布的背景色,使用Clear方法實(shí)現(xiàn),即g.Clear(Color.White)。

3.3 DrawString()方法

DrawString方法用來實(shí)現(xiàn)用畫筆在畫布上畫出要顯示的字符,常用的DrawString方法有4個(gè)參數(shù),DrawString(參數(shù)1,參數(shù)2,參數(shù)3,參數(shù)4),參數(shù)1指定想要在畫布上顯示的字符。參數(shù)2指定字符的字體,參數(shù)3是要顯示的字符狀態(tài),加粗、傾斜等。

參數(shù)4是要顯示的字符的位置,即坐標(biāo)。

3.4 DrawLine () 方法

DrawLine(參數(shù)1,參數(shù)2,參數(shù)3,參數(shù)4,參數(shù)5)方法用于繪制一條連接兩個(gè)指定點(diǎn)的直線。其中,參數(shù)1用于指定繪制線的樣式及顏色、寬度等。參數(shù)2用于指定第一個(gè)點(diǎn)的X坐標(biāo),參數(shù)3用于指定第一個(gè)點(diǎn)的Y坐標(biāo),參數(shù)4用于指定第二個(gè)點(diǎn)的X坐標(biāo),參數(shù)5用于指定第二個(gè)點(diǎn)的Y坐標(biāo)。

3.5 DrawRectangle()方法

DrawRectangle(參數(shù)1,參數(shù)2,參數(shù)3,參數(shù)4,參數(shù)5)方法可以繪制一個(gè)長方形,長方形的樣式及顏色、寬度等由參數(shù)1指定。參數(shù)2用于確定要繪制的長方形的左上角頂點(diǎn)的X坐標(biāo)。參數(shù)3用于確定要繪制的長方形的左上角頂點(diǎn)的Y坐標(biāo)。參數(shù)4給定要繪制的長方形的寬。參數(shù)5給定要繪制的長方形的高。

4 繪制驗(yàn)證碼的基本流程

我們?nèi)粘T谠L問各大網(wǎng)站時(shí)見到的驗(yàn)證碼大多為隨機(jī)的4位數(shù)字,并且在數(shù)字上面散布著各種顏色的線條及像素點(diǎn)。分析出驗(yàn)證碼的特點(diǎn),下面我們便可以開始繪制我們自己的驗(yàn)證碼:

4.1 生成隨機(jī)數(shù)字

4.2 創(chuàng)建畫布

4.3 在畫布上創(chuàng)建畫筆對(duì)象

4.4 清空畫布的背景色

4.5 生成隨機(jī)生成器

4.6 繪制隨機(jī)干擾線

4.7 繪制隨機(jī)干擾點(diǎn)

4.8 保存圖片數(shù)據(jù)

5 繪制驗(yàn)證碼幫助類的完整代碼

5.1 生成隨機(jī)數(shù)字完整代碼

5.2 創(chuàng)建驗(yàn)證碼圖片完整代碼

6 效果圖

在用戶登錄時(shí),顯示了一個(gè)隨機(jī)生成的4位數(shù)的驗(yàn)證碼圖片,如圖11:

7 結(jié)束語

驗(yàn)證碼對(duì)于用戶信息安全具有重要意義,本文使用GDI+實(shí)現(xiàn)了Web端常見的驗(yàn)證碼的繪制,可在實(shí)際應(yīng)用中參考此方法生成驗(yàn)證碼,具有實(shí)用價(jià)值。

參考文獻(xiàn):

[1] 李宏利, 李漢榮, 張衛(wèi)成, 等. 通用地圖標(biāo)繪系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)[J]. 測繪科學(xué), 2005(4).

[2] 金良益, 江南, 張亞軍, 等. 矢量化多邊形優(yōu)化方法[J]. 測繪科學(xué)技術(shù)學(xué)報(bào), 2017(3).

[3] 王強(qiáng), 鄭逢斌, 喬保軍, 等. 一種改進(jìn)的Delaunay三角網(wǎng)生成算法[J]. 計(jì)算機(jī)應(yīng)用與軟件, 2010(8).

主站蜘蛛池模板: 国产精品大白天新婚身材| 日韩欧美中文| 欧美三级不卡在线观看视频| 中文字幕亚洲专区第19页| 亚洲中文字幕97久久精品少妇| 久久毛片网| 欧美亚洲日韩中文| 国内精自视频品线一二区| 国产白浆视频| 亚洲日本www| 久久青青草原亚洲av无码| 中文字幕波多野不卡一区| 99re经典视频在线| 免费不卡视频| 91九色视频网| 亚洲精品成人片在线观看| 久草国产在线观看| 亚洲综合第一区| 手机成人午夜在线视频| 欧美一区二区啪啪| 精品一区二区三区波多野结衣 | 久久久久九九精品影院| 99在线观看精品视频| 免费一级毛片在线播放傲雪网| 国产专区综合另类日韩一区| 一本二本三本不卡无码| 啪啪啪亚洲无码| 中文字幕欧美成人免费| 日韩AV无码免费一二三区| 国产成人av一区二区三区| 国产精品短篇二区| 日本一区高清| 伊人久久福利中文字幕| 青青草欧美| 成人在线第一页| 日本人妻丰满熟妇区| 国产簧片免费在线播放| 熟妇丰满人妻av无码区| 久久黄色视频影| 69免费在线视频| 亚洲人成网站色7777| 亚洲国产精品日韩欧美一区| 欧美日韩午夜| 国产精品观看视频免费完整版| 欧美天天干| 国产成人8x视频一区二区| 亚洲色图综合在线| 亚洲成年人网| 高清色本在线www| 亚洲美女操| 国产成人8x视频一区二区| 欧美成人午夜视频| 欧美色99| 麻豆精品国产自产在线| 无码专区在线观看| a毛片在线播放| 久久精品波多野结衣| 亚洲不卡影院| 亚洲AV无码一区二区三区牲色| 国产视频欧美| 国产精品一区二区无码免费看片| 亚洲V日韩V无码一区二区| 国产区91| 综合色在线| 2020久久国产综合精品swag| 亚洲资源在线视频| 四虎国产成人免费观看| 亚洲日韩精品综合在线一区二区| 伊人久久久久久久| 69国产精品视频免费| 毛片网站观看| 亚洲综合亚洲国产尤物| 久久久无码人妻精品无码| 97青青青国产在线播放| 超清无码一区二区三区| 91在线视频福利| 久久婷婷国产综合尤物精品| 国模私拍一区二区| 亚洲女同一区二区| 99中文字幕亚洲一区二区| 日韩在线播放欧美字幕| 成年人国产网站|