Картинка с искажённым кодом

slavon-x86

Well-known member
18.12.2005
215
0
#1
Нужно сделать искажённую картинку для защиты от авторегистраций. Подскажите где можно пример посмотреть ?
 

slavon-x86

Well-known member
18.12.2005
215
0
#4
что-то не получается. выводится чёрная картинка.
хотелось бы увидеть полный скрипт. Есть у кого ?
 
M

maykoff

#6
Код:
	public final function antiflood($control_number,$bgcolor,$txtcolor,$pathfont)
{
if(strlen((string)((int)$control_number)) != 4) return false;//проверка формата контрольного числа
if(!file_exists($pathfont)) return false;//проверка наличия файла шрифта
$im = @imagecreate (80,30);//создание чёрной картинки
$background_color = imagecolorallocate ($im,hexdec(substr($bgcolor,0,2)),hexdec(substr($bgcolor,2,2)),hexdec(substr($bgcolor,4,2)));//выделение фонового цвета
$text_color = imagecolorallocate ($im, hexdec(substr($txtcolor,0,2)),hexdec(substr($txtcolor,2,2)),hexdec(substr($txtcolor,4,2)));//выделение цвета надписи
mt_srand (time());//пнули генератор случайных чисел
for($i = 0;$i < 4;$i++)//цикл - для каждой цифры на рисунке
{  
$angle=mt_rand(-30,30);//наклон цифры
$dh=mt_rand(-5,5);//расположение
$df=mt_rand(-2,2);//размер
imagettftext ($im,(10+$df),$angle,(10+$i*15),(20+$dh),$text_color,$pathfont,substr($control_number,$i,1));
}
return $im;//возврат - изображение
}
указать в заголовке тип данных
Код:
header ("Content-type: image/gif");
и можно отправлять на вывод
Код:
$img=antiflood($_SESSION['contr_num'],'000000','00FF00','../include/comic.ttf');
imagegif ($img);
imagedestroy ($img);