No me sirve la función imagettftext

Quiero preguntarle lo siguiente: que pena tanta molestia

Tengo la siguiente función para crear captchas :

¿

<?php

session_start();
//$img=imagecreatefrompng(80,30);
$img=imagecreatetruecolor(80,30);
$white=imagecolorallocate($img,255,255,255);
$black=imagecolorallocate($img,0,0,0);
$grey=imagecolorallocate($img,150,150,150);
$red=imagecolorallocate($img,255,0,0);
$pink=imagecolorallocate($img,200,0,150);
function randomstring($length){
$chars ="abcdefghijklmnopqrstuvwxyz23456789";
srand((double)microtime()*1000000);
$str="";
$i=0;
while($i<=$length){
$num=rand()*33;
$tmp=substr($chars,$num,1);
$str=$str. $tmp;
$i++;
}
return $str;
}
for($i=1;$i<=rand(1,5);$i++) {
$color=(rand(1,2)==1) ? $grey:$white;
imageline($img,rand(5,70),rand(5,20),rand(5,70)+5,rand(5,20)+5 ,$color);
}
imagefill($img,0,0,$red);
$string= randomstring(rand(7,10));
$_SESSION['string']= $string;
imagettftext($img, 12, 10, 15, 15, $black, "./calibri.ttf", randomstring(rand(7,10)));
//imagettftext($img, 12, 10, 15, 15, $black, "./calibri.ttf", "Hola");
header("Content-type: image/png");
imagepng($img);
imagedestroy($img);

?>

La función en la instrucción imagettftext me funciona bien cuando por ensayo pongo:

imagettftext($img, 12, 10, 15, 15, $black, "./calibri.ttf", "Hola");

Pero cuando  pongo

imagettftext($img, 12, 10, 15, 15, $black, "./calibri.ttf", randomstring(rand(7,10)));

No me funciona,,,he visto aquí en internet que es necesario habilitar en el php.ini la librería php_gd.dll la instale y ademas tengo la extensión=php_gd2.dll y las  habilite a las dos dentro del  php.ini y no pasa nada  ademasel computador parece no reconocerla  por que cuando lo prendo me dice  

php startup unable to load dynamic library 

D:\xampp\php\ext\php_gd.dll

No se encuentra el modulo especificado

¿Qué hago?

1 Respuesta

Respuesta
1

Si no te deja arrancar el gd, tendrás que revisar que tienes esa librería y descomentarla en el php.ini

Hola Jorvidu ,,,Si eso fue lo que hice.

Gracias..

Bájate una versión de PHP que lo tenga ya compilado, aunque si no está comentado, debería de funcionarte.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas