今天小編詳細的說一下,ASP.NET網站開發過程中生成驗證碼的全部問題。
本文的目標,是讓讀者了解,生成驗證碼涉及的全部基礎知識問題。
當然這里說的是比較簡單的驗證碼。
真正符合要求的驗證碼,涉及到計算機圖形學的一些問題,這就不是網站開發人員該考慮的了,公司肯定有專人干這個,或者有開發包。
1.為啥要研究這東西?
在正文開始之前,我又幾個問題要強調。
1.對于驗證碼的生成問題,即使完全不了解,也不會影響開發。
我們完全可以到網上C+V一點代碼搞定(也就是說,這不是asp.net網站開發的核心問題)。
坦率的講,對于今天寫的東西,小編不翻資料也是記不住。
2.但是,小編有個習慣。就是如果一段代碼我完全不理解的話。
那么即使我知道他粘貼下來就能用,我心里也不是很踏實。
所以,可以寫不出來,但一定要略懂, 心里踏實。
2.學習流程
本文的學習流程是這樣安排的。
那么我們開始
1.說明
如果你想思考如何生成驗證碼,那么您第一個要解決的問題,
一定是.NET動態生成圖片問題。(知道的就算了)
//GDI:.Net程序中進行繪圖的一些類。
2.代碼
1 //這段代碼開始前,要添加System.Drawing的引用。 2 //創建一個尺寸為500*500的內存圖片 3 using (Bitmap bmp = new Bitmap(500, 500)) 4 //得到圖片的畫布 5 using (Graphics g = Graphics.FromImage(bmp)) 6 { 7 //創建畫筆 8 using (Font font = new Font(FontFamily.GenericSerif, 30)) 9 {10 //在100,100處畫一個紅色的helloWorld11 g.DrawString("HelloWorld", font, Brushes.Red, 100, 100);12 //在100,100處畫一個藍色的橢圓13 g.DrawEllipse(Pens.Blue, 100, 100, 100, 100);14 15 using (Stream stream = File.OpenWrite(@"d:/2.jpg"))16 {17 bmp.Save(stream, ImageFormat.Jpeg);18 }19 }20 }
看這就生成完了。代碼上,貌似沒什么需要解釋的。
|
新聞熱點
疑難解答