[發(fā)明專利]一種圖片驗證碼的生成方法無效
| 申請?zhí)枺?/td> | 201310035137.6 | 申請日: | 2013-01-30 |
| 公開(公告)號: | CN103971315A | 公開(公告)日: | 2014-08-06 |
| 發(fā)明(設(shè)計)人: | 陳耀 | 申請(專利權(quán))人: | 江蘇中通洋軟件服務(wù)有限公司 |
| 主分類號: | G06T1/00 | 分類號: | G06T1/00 |
| 代理公司: | 暫無信息 | 代理人: | 暫無信息 |
| 地址: | 225000 江蘇*** | 國省代碼: | 江蘇;32 |
| 權(quán)利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關(guān)鍵詞: | 一種 圖片 驗證 生成 方法 | ||
技術(shù)領(lǐng)域
本發(fā)明涉及網(wǎng)絡(luò)應(yīng)用技術(shù)領(lǐng)域,具體的涉及一種圖片驗證碼的生成方法。
背景技術(shù)
隨著計算機和計算機網(wǎng)絡(luò)的日益普及,互聯(lián)網(wǎng)已經(jīng)深入到人們工作、學習和生活的各個領(lǐng)域。在當今信息網(wǎng)絡(luò)時代,信息安全顯的越來越重要,為了防止有些別有用心的用戶利用機器人(惡意程序)自動注冊、自動登錄、惡意灌水和惡意增加數(shù)據(jù)庫訪問,用特定程序暴力破解密碼,可采用驗證碼技術(shù)。目前大部分網(wǎng)絡(luò)信息系統(tǒng)都有圖片驗證碼的功能。本方案提供一種簡單快捷生成圖形驗證碼的方法,并添加了驗證生成的有效期。
發(fā)明內(nèi)容
本發(fā)明提出一種簡單快捷生成圖形驗證碼的方法,包括以下步驟:
預(yù)設(shè)字符步驟,將在畫布上所要顯示的字符自定義到數(shù)組vitrine中;
字符串checkcode的生成步驟,用戶請求生成驗證碼,并設(shè)置要求輸入的驗證碼的長度length,系統(tǒng)通過調(diào)用rnd.Next(vitrine.Length-1)產(chǎn)生隨機數(shù),根據(jù)所產(chǎn)生的隨機數(shù)在自定義數(shù)組vitrine中找出相應(yīng)的字符,重復(fù)上述隨機產(chǎn)生隨機數(shù)過程,直至產(chǎn)生隨機數(shù)的個數(shù)滿足于用戶設(shè)置要求輸入的驗證碼的長度length;
創(chuàng)建空白image步驟,設(shè)置當前字體的大小為fontsize,根據(jù)字體的大小跟所畫字符串的長度創(chuàng)建一幅空白image,Image = new Bitmap((int)Math.Ceiling(checkcode.Length * fontsize), 22),根據(jù)Image生一個Graphics gr = Graphics.FromImage(Image)對象;
畫字符串checkcode步驟,調(diào)用gr.DrawStringde的方法畫字符串;
驗證碼的輸出步驟,將上述所畫字符串checkconde保存在Session中,將圖片以流的形式輸出到網(wǎng)頁上,Image.Save(Response.OutputStream,System.Drawing.Imaging.ImageFormat.Gif)。
在畫字符串checkcode的步驟之后,包含畫圖片干擾線步驟,創(chuàng)建Random對象rnd1,調(diào)用方法rnd1.Next(Image.Width)跟rnd1.Next(Image.Heigth)每次分別產(chǎn)生兩個點x,y。
在所述的畫圖片干擾線步驟之后,還包括添加干擾點步驟,調(diào)用image.SetPixel()的方法產(chǎn)生隨機點,根據(jù)隨機點設(shè)置干擾點。
在添加干擾點步驟之后,還包括畫圖片邊框步驟,調(diào)用gr.DrawRectangle的方法畫圖片邊框。
在驗證碼的輸出步驟之后,還包括倒計時步驟,當圖片輸出到網(wǎng)頁上時,開始倒計時,在顯示端動態(tài)提示用戶驗證碼的有效時間,當?shù)褂嫊r為0時,提示用戶驗證碼失效,重新生成驗證碼。
本發(fā)明發(fā)明的一種圖片驗證碼的生成方法,實現(xiàn)簡單代價低,不需要其他組件,技術(shù)成熟,運行速率高,具有很高的使用價值。
附圖說明
圖1為本發(fā)明發(fā)明的一種圖片驗證碼的生成方法示意圖。
圖2為本發(fā)明發(fā)明的一種圖片驗證碼的生成方法優(yōu)選示意圖。
具體實施方式
本發(fā)明發(fā)明的一種圖片驗證碼的生成方法,其示意圖如圖1所示,包括以下步驟,
預(yù)設(shè)字符步驟,將在畫布上所要顯示的字符自定義到數(shù)組vitrine中;
用戶請求生成驗證碼,并設(shè)置要求輸入的驗證碼的長度length;
創(chuàng)建空白image步驟,設(shè)置當前字體的大小為fontsize,根據(jù)字體的大小跟所畫字符串的長度創(chuàng)建一幅空白image,Image = new Bitmap((int)Math.Ceiling(checkcode.Length * fontsize), 22),根據(jù)Image生一個Graphics gr = Graphics.FromImage(Image)對象;
系統(tǒng)通過調(diào)用rnd.Next(vitrine.Length-1)產(chǎn)生隨機數(shù),根據(jù)所產(chǎn)生的隨機數(shù)在自定義數(shù)組vitrine中找出相應(yīng)的字符;
畫字符串checkcode步驟,調(diào)用gr.DrawStringde的方法畫字符串;
重復(fù)上述隨機產(chǎn)生隨機數(shù)過程,直至產(chǎn)生隨機數(shù)的個數(shù)滿足于用戶設(shè)置要求輸入的驗證碼的長度length;
該專利技術(shù)資料僅供研究查看技術(shù)是否侵權(quán)等信息,商用須獲得專利權(quán)人授權(quán)。該專利全部權(quán)利屬于江蘇中通洋軟件服務(wù)有限公司,未經(jīng)江蘇中通洋軟件服務(wù)有限公司許可,擅自商用是侵權(quán)行為。如果您想購買此專利、獲得商業(yè)授權(quán)和技術(shù)合作,請聯(lián)系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201310035137.6/2.html,轉(zhuǎn)載請聲明來源鉆瓜專利網(wǎng)。
- 上一篇:一體化防汛沙袋快速裝袋機
- 下一篇:一種軌道物流系統(tǒng)





