为了账号安全,请及时绑定邮箱和手机立即绑定

完整代码,仅供参考

<?php
$width = 200;
$height = 40;
$font_file = 'fonts/mini.ttf';

$image = imagecreatetruecolor($width,$height);
$white = imagecolorallocate($image,255,255,255);
function get_color($image){
    $rand_color = imagecolorallocate($image,mt_rand(0,255),mt_rand(0,255),mt_rand(0,255));
    return $rand_color;
}
imagefilledrectangle($image,0,0,$width,$height,$white);
$string = join('',array_merge(range(0,9),range('a','z'),range('A','Z')));
$length = 4;
for($i = 0;$i < $length;$i++){
    $angle = mt_rand(-15,15);
    $fontsize = mt_rand(20,28);
    $text = str_shuffle($string)[0];
    //get font width and font height
    $font_width = imagefontwidth($fontsize);
    $font_height = imagefontheight($fontsize);
    $x = 20 + ($width - 20 * 2) / 3 * $i;
    $y = 40 - ((40 - $font_height) / 2);
    $rand_color = get_color($image);
    imagettftext($image,$fontsize,$angle,$x,$y,$rand_color,$font_file,$text);
}
//add interference of pixel
for($i = 0; $i < 50; $i++){
    imagesetpixel($image, mt_rand(0,$width),mt_rand(0,$height),get_color($image));
}
//add interference of line
for($i = 0; $i < 3; $i++){
    $x1 = mt_rand(0,$width);
    $y1 = mt_rand(0,$height);
    $x2 = mt_rand(0,$width);
    $y2 = mt_rand(0,$height);
    while(1){
        if($x1 == $x2 and $y1 == $y2){
            $x1 = mt_rand(0,$width);
            $y1 = mt_rand(0,$height);
            $x2 = mt_rand(0,$width);
            $y2 = mt_rand(0,$height);
        }
        else{
            break;
        }
    }
    imageline($image,$x1,$y1,$x2,$y2,get_color($image));
}
//add interference of arc
for($i = 0; $i < 3; $i++){
    $cx = mt_rand(0, $width);
    $cy = mt_rand(0, $height);
    $w = mt_rand(0, min($cx, $width - $cx));
    $h = mt_rand(0, min($cy, $height - $cy));
    $s = mt_rand(0, 160);
    $e = mt_rand(0, 160);
    imagearc($image, $cx, $cy, $w, $h, $s, $e, get_color($image));
}
header('content-type:image/png');
imagepng($image);
imagedestroy($image);

<pre class="brush:php;toolbar:false">&lt;?php $width = 200; $height = 40; $font_file = 'fonts/mini.ttf'; $image = imagecreatetruecolor($width,$height); $white = imagecolorallocate($image,255,255,255); function get_color($image){     $rand_color = imagecolorallocate($image,mt_rand(0,255),mt_rand(0,255),mt_rand(0,255));     return $rand_color; } imagefilledrectangle($image,0,0,$width,$height,$white); $string = join('',array_merge(range(0,9),range('a','z'),range('A','Z'))); $length = 4; for($i = 0;$i &lt; $length;$i++){     $angle = mt_rand(-15,15);     $fontsize = mt_rand(20,28);     $text = str_shuffle($string)[0];     //get font width and font height     $font_width = imagefontwidth($fontsize);     $font_height = imagefontheight($fontsize);     $x = 20 + ($width - 20 * 2) / 3 * $i;     $y = 40 - ((40 - $font_height) / 2);     $rand_color = get_color($image);     imagettftext($image,$fontsize,$angle,$x,$y,$rand_color,$font_file,$text); } //add interference of pixel for($i = 0; $i &lt; 50; $i++){     imagesetpixel($image, mt_rand(0,$width),mt_rand(0,$height),get_color($image)); } //add interference of line for($i = 0; $i &lt; 3; $i++){     $x1 = mt_rand(0,$width);     $y1 = mt_rand(0,$height);     $x2 = mt_rand(0,$width);     $y2 = mt_rand(0,$height);     while(1){         if($x1 == $x2 and $y1 == $y2){             $x1 = mt_rand(0,$width);             $y1 = mt_rand(0,$height);             $x2 = mt_rand(0,$width);             $y2 = mt_rand(0,$height);         }         else{             break;         }     }     imageline($image,$x1,$y1,$x2,$y2,get_color($image)); } //add interference of arc for($i = 0; $i &lt; 3; $i++){     $cx = mt_rand(0, $width);     $cy = mt_rand(0, $height);     $w = mt_rand(0, min($cx, $width - $cx));     $h = mt_rand(0, min($cy, $height - $cy));     $s = mt_rand(0, 160);     $e = mt_rand(0, 160);     imagearc($image, $cx, $cy, $w, $h, $s, $e, get_color($image)); } header('content-type:image/png'); imagepng($image); imagedestroy($image);</pre><p><br /></p>

正在回答

1 回答

加油,加油

0 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消

完整代码,仅供参考

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信