Foros del Web » Programando para Internet » PHP »

Problema con la libreria GD

Estas en el tema de Problema con la libreria GD en el foro de PHP en Foros del Web. Hola amigos, cogi y modifique la funcion que habia en las faqs para crear tumbs, y me iba perfectamente, pero han actualizado el server y ...
  #1 (permalink)  
Antiguo 24/09/2004, 03:56
 
Fecha de Ingreso: abril-2003
Ubicación: Malaga
Mensajes: 176
Antigüedad: 14 años, 8 meses
Puntos: 1
Problema con la libreria GD

Hola amigos, cogi y modifique la funcion que habia en las faqs para crear tumbs, y me iba perfectamente, pero han actualizado el server y entonces ahora la imagen creada no se ve bien, seguramente por la version de la libreria GD o del módulo php

Las Versiones son:

GD: 2.0.23
PHP: 4.3.8

os muestro el codigo modificado por mi a ver si me podeis echar una mano los expertos:


function thumbjpeg($imagen,$porcentaje) {
// Lugar donde se guardarán los thumbnails respecto a la carpeta donde está la imagen "grande".
$dir_thumb = "./";
// Prefijo que se añadirá al nombre del thumbnail. Ejemplo: si la imagen grande fuera "imagen1.jpg",
// el thumbnail se llamaría "tn_imagen1.jpg"
$prefijo_thumb = "tn_";

// Aquí tendremos el nombre de la imagen.
$nombre=basename($imagen);
// Aquí la ruta especificada para buscar la imagen.
$camino=dirname($imagen)."/";

// Intentamos crear el directorio de thumbnails, si no existiera previamente.
if (!file_exists($camino.$dir_thumb))
@mkdir ($camino.$dir_thumb, 0777) or die("No se ha podido crear el directorio ".$camino.$dir_thumb);

// Aquí comprobamos que la imagen que queremos crear no exista previamente
if (!file_exists($camino.$dir_thumb.$prefijo_thumb.$n ombre)) {
echo $camino.$dir_thumb.$prefijo_thumb.$nombre." NO existía<br>\n";
$img = @imagecreatefromjpeg($camino.$nombre) or die("No se encuentra la imagen $camino$nombre<br>\n");

// miramos el tamaño de la imagen original...
$datos = getimagesize($camino.$nombre) or die("Problemas con $camino$nombre<br>\n");

// intentamos escalar la imagen original a la medida que nos interesa

$altura = round(($datos[1]*$porcentaje)/100);
$anchura = round(($datos[0]*$porcentaje)/100);

// esta será la nueva imagen reescalada
$thumb = imagecreate($anchura,$altura);

// con esta función la reescalamos
imagecopyresized($thumb, $img, 0, 0, 0, 0, $anchura, $altura, $datos[0], $datos[1]);

// voilà la salvamos con el nombre y en el lugar que nos interesa.
imagejpeg($thumb,$camino.$dir_thumb.$prefijo_thumb .$nombre);
}
}


Muchas gracias por anticipado
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 11:15.