$7.49 .com domain with free InstantPage Website Builder$1.99 Web Hosting   捷飞网络官方淘宝店   Godaddy 优惠码
返回列表 发帖
分享到:




[PHP 语言] [分享]PHP 验证码可设置字体(大小),可换背景图片,可扭曲角度

//若以下代码有错或不足,请在评论中指出

$img=imagecreatetruecolor(70,25);3 {7 R& y7 u; u3 o
//创建画布
, U, t& U- ?3 D0 h! F6 J$bgimg=imagecreatefromjpeg("backgroud/background".rand(1,8).'.jpg');  Y$ ~7 B% r$ i2 \1 O, ]
//生成背景图片
% y4 R" x/ i( B- p2 V$bg_x=rand(0,130);
8 K9 s3 M* t8 D' F7 Y' I//随机招贴画布起始X轴坐标  b: k) p( w6 S- @
$bg_y=rand(0,55);3 ]1 ]7 N: s3 c
//随机招贴画布起始Y轴坐标
7 T8 m& D2 Q# z5 L  Jimagecopy($img,$bgimg,0,0,$bg_x,$bg_y,$bg_x+70,$bg_y+25);
8 |; y1 s9 ^+ ^8 A$ I//把背景图片$bging粘贴的画布上

//生成随机字符串1 N: s+ e& ]2 h
function creaStr($len){& }% m7 T0 S. P8 v# B
     $arr1=range(0,9);( N" b- X) U6 `) w0 W
     $arr2=range(a,z);  I1 b9 D/ v6 x/ C
     $arr3=range(A,Z);* e2 w; I9 E: ]0 u0 w  I; q0 a
     $arr=array_merge($arr1,$arr2,$arr3);: w* K/ W1 \) _0 \" g$ k. H9 @
     str_shuffle($arr);. \5 O& [; Z. N
     $str="";
& L3 T3 d+ `) [/ C4 p6 g     for($i=0;$i<$len;$i++){1 `1 C: w. H1 R3 l: h3 a4 E7 Y
            $str.=$arr[rand(0,61)];  I8 s$ V" I: g5 J
     }
, Y7 W8 Q, H9 F  P, x  F    return $str;2 O" S, z/ a+ }$ \: Z5 b
}

$font='Astarisborn.TTF'; //字体& U, W5 N/ j# P- C, Y  y# \9 R0 t+ X
$str=creaStr(4); //字符串8 Q- F0 d# M" p" _- v
for($i=0,$j=5;$i<4;$i++){2 \; @) F1 p$ V' z
      $array = array(-1,1);
( ?% }# K( _% T. `! m      $p = array_rand($array);+ O% b9 T- G, x0 m. C8 N
      $an = $array[$p]*mt_rand(1,10); //扭曲角度
9 Z1 f" N- g9 P6 ^      $size = 14;//字体大小- a8 ?: T1 h  l# a' d2 A$ Q
      imagettftext($img, $size, $an, $j,rand(13,20),imagecolorallocate($img,rand(0,100),rand(0,100),rand(0,100)), $font, $str[$i]);//生成验证字符窜
" Y1 f4 |% C$ a; [6 ^      $j+=15;% f3 ^0 v- `' K8 @$ A5 ]
}' Z  q7 \2 @" O# @0 n' A
header('Content-type:image/png');$ a% q( \: H$ {$ t# \
imagepng($img);
2 N7 ]- M1 N0 [imagedestroy($img);

, R8 b) T% s' C0 y! h
2 z& s0 z& G; F# e8 u  e1 x2 Y
参考:
. U0 p8 G+ U" J8 O* ~; D/ e4 [http://blog.csdn.net/redhat_520/article/details/7652103http://blog.csdn.net/yanhui_wei/article/details/7985225. ^, c$ H( I- R
http://www.t086.com/code/php/function.php-ImageTTFText.php
$ Q/ C9 D( ~+ ihttp://www.t086.com/code/php/group.php-20.php




返回列表
Namecheap
Namecheap.com - Cheap domain name registration, renewal and transfers - Free SSL Certificates - Web Hosting
互联网安全