Ver Mensaje Individual
  #6 (permalink)  
Antiguo 20/06/2013, 14:48
Avatar de trofserpiente
trofserpiente
 
Fecha de Ingreso: julio-2012
Ubicación: Lerida
Mensajes: 220
Antigüedad: 11 años, 9 meses
Puntos: 1
Exclamación Respuesta: dimensionar imágenes cuando están como temporal

Cita:
Iniciado por pateketrueke Ver Mensaje
Bueno, son cosas diferentes, ¿ya sabes redimensionar imágenes?

Tu problema no está con la ruta temporal, está en que si no sabes hacer lo primero, que es tu objetivo, ¿entonces qué estás esperando?

Hay muchas librerías para manipular imagenes con PHP, o puedes usar ImageMagick, GD, etc.

Google siempre ayuda: php redimensionar imagen

Edito: ya te lo han dicho...
ya logre dimensionar la imagen, y me la guarda el problema a hora es que no puedo subir imagnes pesadas, yo pensé que dimensionando las iva a poder subir

Código PHP:
<?php
    
if (!empty($_FILES)) {
    
$nombre="prueba";
    
$tempFile $_FILES['Filedata']['tmp_name'];
    
$ext substr($_FILES['Filedata']['name'], strrpos($_FILES['Filedata']['name'],'.'));
    
$targetPath $_SERVER['DOCUMENT_ROOT'] . $_REQUEST['folder'] . '/';
    
$targetFile =  str_replace('//','/',$targetPath) . $nombre.$ext;
    

//Ruta de la imagen original
$rutaImagenOriginal=$tempFile;
//Creamos una variable imagen a partir de la imagen original
$img_original imagecreatefromjpeg($rutaImagenOriginal);
//Se define el maximo ancho y alto que tendra la imagen final
$max_ancho 700;
$max_alto 400;
//Ancho y alto de la imagen original
list($ancho,$alto)=getimagesize($rutaImagenOriginal);
//Se calcula ancho y alto de la imagen final
$x_ratio $max_ancho $ancho;
$y_ratio $max_alto $alto;


//Si el ancho y el alto de la imagen no superan los maximos,
//ancho final y alto final son los que tiene actualmente
if( ($ancho <= $max_ancho) && ($alto <= $max_alto) ){//Si ancho
$ancho_final $ancho;
$alto_final $alto;
}
/*
* si proporcion horizontal*alto mayor que el alto maximo,
* alto final es alto por la proporcion horizontal
* es decir, le quitamos al ancho, la misma proporcion que
* le quitamos al alto
*
*/
elseif (($x_ratio $alto) < $max_alto){
$alto_final ceil($x_ratio $alto);
$ancho_final $max_ancho;
}
/*
* Igual que antes pero a la inversa
*/
else{
$ancho_final ceil($y_ratio $ancho);
$alto_final $max_alto;
}


//Creamos una imagen en blanco de tamaño $ancho_final  por $alto_final .
$tmp=imagecreatetruecolor($ancho_final,$alto_final);
 
//Copiamos $img_original sobre la imagen que acabamos de crear en blanco ($tmp)
$imagen_f=imagecopyresampled($tmp,$img_original,0,0,0,0,$ancho_final$alto_final,$ancho,$alto);
 
//Se destruye variable $img_original para liberar memoria
imagedestroy($img_original);


//Definimos la calidad de la imagen final
$calidad=95;
//Se crea la imagen final en el directorio indicado
imagejpeg($tmp,$targetFile,$calidad);

    
        

        echo 
str_replace($_SERVER['DOCUMENT_ROOT'],'',$targetFile);
        
        

}
?>
__________________
Luis Alfonso Cruz Valbuena
[email protected]