<?php
/**
复杂一点的验证码
**/
// 造画布
$file = './code.png';
$im = imagecreatefrompng($file);
// 造背景颜色
$gray = imagecolorallocate($im,200,200,200);
// 填充画布背景
imagefill($im,0,0,$gray);
// 造随机字体颜色
$color = imagecolorallocate($im,mt_rand(0,125),mt_rand(0,125),mt_rand(0,125));
// 造线条的随机颜色
$line1 = imagecolorallocate($im,mt_rand(100,125),mt_rand(100,125),mt_rand(100,125));
$line2 = imagecolorallocate($im,mt_rand(100,125),mt_rand(100,125),mt_rand(100,125));
$line3 = imagecolorallocate($im,mt_rand(100,125),mt_rand(100,125),mt_rand(100,125));
// 在画布上画线条
imageline($im,mt_rand(0,50),mt_rand(0,25),mt_rand(0,50),mt_rand(0,25),$line1);
imageline($im,mt_rand(0,50),mt_rand(0,20),mt_rand(0,50),mt_rand(0,20),$line2);
imageline($im,mt_rand(0,50),mt_rand(0,20),mt_rand(0,50),mt_rand(0,20),$line3);
// 在画布上写字
$str = substr(str_shuffle('ABCDEFGHIJKLMNPQRSTUVWXYZ23456789abcdefghijkmnpqrstuvwxyz'),0,4);
/*
array imagettftext ( resource $image , float $size , float $angle , int $x , int $y , int $color , string $fontfile , string $text )
*/
imagettftext($im,12,0,4,20,$color,'./msyhbd.ttc',$str);
// 输出
header("content-type:image/png");
imagepng($im);
// 销毁画布
imagedestroy($im);