디지털 인증코드를 구현하기 위한 PHP 개발 인증코드 튜토리얼
디지털 인증코드 구현
<?php $image = imagecreatetruecolor(100,30); $bgcolor = imagecolorallocate($image,255,255,255);//#FFFFFFFFFFFF imagefill($image,0,0,$bgcolor); for ($i=0;$i<4;$i++){ $fontsize = 6; $fontcolor = imagecolorallocate($image,rand(0,120),rand(0,120),rand(0,120)); $fontcontent = rand(0,9); $x = ($i * 100/4)+rand(5,10); $y = rand(5,10); imagestring($image,$fontsize,$x,$y,$fontcontent,$fontcolor); } header('content-type: image/png'); imagepng($image); //销毁 imagedestroy($image); ?>
for ($i=0;$i<4;$i++){ //循环出四个数字 $fontsize = 6;//字体的大小为6 $fontcolor = imagecolorallocate($image,rand(0,120),rand(0,120),rand(0,120)); //定义字体的颜色 $fontcontent = rand(0,9);//定义字体的取值范围 }$x = ($i * 100/4)+rand(5,10); $y = rand(5,10); 在范围内随机定义坐标 imagestring($image,$fontsize,$x,$y,$fontcontent,$fontcolor); }
imagestring() col 색상을 사용하여 이미지가 표현하는 이미지의 x, y 좌표에 문자열 s를 그립니다(이것은 문자열의 왼쪽 상단 좌표입니다) , 전체 이미지의 왼쪽 상단은 0,0입니다). 글꼴이 1, 2, 3, 4, 5이면 내장 글꼴이 사용됩니다.
참고: 글꼴이 겹치거나 불완전하게 표시되지 않도록 글꼴의 크기와 분포를 제어하세요