做中文驗證碼

2021-07-23 08:15:10 字數 1492 閱讀 7850

知識點 imagettftext — 用 truetype 字型向影象寫入文字(具體引數看手冊)

/*如何產生隨機的中文字串 中文安其uniccode編碼 是有規律的 位於 0x4e00-0x9fa0 

但是請注意 對於客戶來說 能否認識 ,所以在實際專案中 只是抽取幾百或上千的常用漢字  放陣列裡  隨機選取

*/

//選常用字型 放陣列中 

$char = array('中','華','人','民','共','和','國','我','是','湖','南','郴','州');

//打亂

shuffle($char);

//隨機選取

$code = implode('',array_slice($char, 0,4));

//畫布

$im = imagecreatetruecolor(68, 30);

//建立顏料

$gray = imagecolorallocate($im, 200,200,200);

$blue = imagecolorallocate($im, 0,0,255);

//隨機顏色

$randcolor = imagecolorallocate($im, mt_rand(0,150), mt_rand(0,150),mt_rand(0,150));

$randcolor1 = imagecolorallocate($im, mt_rand(0,150), mt_rand(0,150),mt_rand(0,150));

$randcolor2 = imagecolorallocate($im, mt_rand(0,150), mt_rand(0,150),mt_rand(0,150));

//隨機線

imageline($im, 0, mt_rand(0,30), 68, mt_rand(0,30), $randcolor);

imageline($im, 0, mt_rand(0,30), 68, mt_rand(0,30), $randcolor1);

imageline($im, 0, mt_rand(0,30), 68, mt_rand(0,30), $randcolor2);

//填充背景

imagefill($im, 0, 0, $gray);

//寫字字型設定

imagettftext($im, 12, 0, 2, 20, $blue, './ch/msyh.ttf', $code);

//告訴瀏覽器格式

header('content-type: image/jpeg');

//顯示影象

imagejpeg($im);

//銷毀資源

部落格:

node做驗證碼

使用了ccap外掛程式 1 安裝 通用方法 npm install ccap 2 cnst ccap require ccap 3 頁面 4 請求到後台處理 生成驗證碼 exports.checkcode function req,res res.end ary 1 外掛程式生成了乙個,也生成了驗證...

驗證碼顯示中文

現在qq上申請免費號碼的驗證碼是中文的,其實這個也不難,就是隨機生成乙個16進製制的陣列,然後根據編碼查詢漢字,程式如下,此為控制台程式。1using system 2using system.text 34 namespace5 14 17此函式在漢字編碼範圍內隨機建立含兩個元素的十六進製制位元組...

discuz增加中文驗證碼

方法 1.從windows 系統下獲得字型檔案 c盤下的windows fonts目錄 如 simhei.ttf simsun.ttc 2.linux centos6.5 usr share fonts 下 mkdir chinese 目錄 3.賦予操作許可權 chmod r 755 usr sha...