hola amigos tengo un problema tengo un script que genera un thumnail
de un directorio de imagenes y las presenta para visualizarlas
sale todo bien, el problema es que deseo ponerle un fondo de color al area donde se muestran la imagen individual y no me sale me pone un fondo negro.
Utilizo el imagecolorallocate pero se usa si la imagen fue creada con
imagecreate
y yo utilizo ImageCreateTrueColor y imagecopyresampled para que la imagen
no se distorcione en vez de imagecreate y imagecopyresized
saludos espero sus comentarios
gracias
este es el codigo
<?php
//$width=$_GET['width'];
//$height=$_GET['height'];
$width = 120;
$height = 120;
$filename=$_GET['filename'];//imagen a original
//imagen desde el archivo
$src_image=imagecreatefromjpeg($filename);//devuelve un id de la imagen
//$image = imagecreate($width, $height);
$image=ImageCreateTrueColor($width, $height);//creamos la imagen con color real
//asignamos los colores
$bg = imagecolorallocate($image, 255, 255, 255);//para fondo
$verde = imagecolorallocate($image, 128, 255, 0);//para el color de la letra
$margin_x = 10;//margen x
$margin_y = 10;//margen y
$w=$width-2*$margin_x;//100
$h=$height-2*$margin_y;//100
$src_w=imagesx($src_image);//aqui obtenemos la anchura de la imagen original apartir del id generado
$src_h=imagesy($src_image);//aqui obtenemos la altura de la imagen original apartir del id generado
if(($w > $src_w) && ($h > $src_h))
{
$dst_w = $src_w;
$dst_h = $src_h;
}
else
{
//¿o escalamos la imagen de acuerdo a la dimensión horizontal?
if(($w/$h) < ($src_w/$src_h))
{
$dst_w=$w;
$dst_h=$w*$src_h/$src_w;
}
else//¿o la escalamos de acuerdo a la dimensión vertical?
{
$dst_w=$h*$src_w/$src_h;
$dst_h=$h;
}
}
//imagecopyresized($image, $src_image, ($width-$dst_w)/2, ($height-$dst_h)/2,0, 0, $dst_w, $dst_h, $src_w, $src_h);
imagecopyresampled($image, $src_image, ($width-$dst_w)/2, ($height-$dst_h)/2,0, 0, $dst_w, $dst_h, $src_w, $src_h);
$t=($width-$dst_w)/2;
$a=($height-$dst_h)/2;
//colocamos el texto sobre la imagen
imagestring($image, 0, $margin_x, ($height-$margin_y), $dst_w.'-'.$dst_h, $verde);
//encabezado correspondiente para los datos de salida
header("Content-type: image/jpeg");
//generamos la imagen
imagejpeg($image);
//liberamos la memoria
imagedestroy($image);
?>
http://img251.imageshack.us/my.php?image=thum4fy.jpg