Cita:
Iniciado por GatorV
El algoritmo que te puse es genérico, no es para que lo copies tal cual, como te digo, piensa, si tienes dos cuadros, para cortar por el centro tienes que dividir, el ancho actual entre 2, menos el ancho del cuadro nuevo entre 2.
Adáptalo a tus necesidades.
Saludos.
bff me desespero cn sto delas imagenes..



no m sale... siento dar tanto el follon
pero..
Código PHP:
//Obtener datos de la imagen
$info = getimagesize($_FILES['archivo']['tmp_name']);
//segun el caso sera jpg, gif, png
switch ($info[2]) {
case 1:
$imagen = imagecreatefromgif($_FILES['archivo']['tmp_name']); break;
case 2:
$imagen = imagecreatefromjpeg($_FILES['archivo']['tmp_name']); break;
case 3:
$imagen = imagecreatefrompng($_FILES['archivo']['tmp_name']); break;
// etcétera //
}
$original = $imagen;
// devuelve anchura de la imagen y altura
$original_w = imagesx($original);
$original_h = imagesy($original);
$max = 450; //AQUI PONES EL TAMAÑO DE LA IMAGEN A LO QUE QUIERAS
if($original_w>$original_h) {
$muestra_w = $max;
$muestra_h = intval(($original_h/$original_w)*$max);
} else {
$muestra_w = intval(($original_w/$original_h)*$max);
$muestra_h = $max;
}
// Crea una imagen en color real
$muestra = imagecreatetruecolor($muestra_w,$muestra_h);
//Copia y reescala parte de una imagen con remuestreo
imagecopyresampled($muestra,$original,0,0,0,0, $muestra_w,$muestra_h,$original_w,$original_h);
imagedestroy($original); // aqui destruyo el original, pues no hace falta ya
// Crear imagen pequeña
$img_w=150;
$img_h=150;
$x = $ancho / 2;
$y = $alto / 2;
$img2 = imagecreatetruecolor($img_w, $img_h);
$x = ( $ancho / 2 ) - ( 150 / 2 );
$y = ( $alto / 2 ) - ( 150 / 2 );
imagecopyresized($img2,$muestra,0,0,0,0,$x,$y,$ancho,$alto);
imagejpeg($img2,"fotos/$nombre_imagen.jpeg","100")
asi sige sin irme correctamente... dejo el codigo entero x si tengo algo mal... muxas asias