本人在用delphi做一個登錄界面,想實現驗證碼的功能。但在百度上沒找到源碼。求源碼連接地址或源碼,謝謝。
很久之前做過一個,源碼找不到了,可以提供一個思路:
1.將待生成驗證碼的字符分解,對每一個字符進行以下處理:
2.將當前字符使用隨機顏色(白色除外)輸出到一個大小固定的矩形圖像中(使用textout函數)
3.將此圖像進行隨機角度(可以在一定范圍內)旋轉(可能會用到圖像處理中的rotate函數)
4.將此圖像復制且追加到目標圖像中的尾部(可能用到copyrect函數),盡量避免尺寸定義過小帶來的覆蓋之前字符的問題,當然可以在小尺度上進行覆蓋,這樣驗證效果更好些
5.在最終圖像上,使用不同的線型畫上幾道線(直線、曲線、非連續線等可以隨機搭配),以增加機器識別的難度,但不得太粗防止客戶都無法識別。
6.將最終結果輸出為圖像即可。