doctormansilla
13/05/2009, 19:44
me gustaria saber si alguien sabe de esto, para que al momento de cargar la lista de imagenes sea un poco mas liviano, gracias:D
Silent Ninja
19/05/2009, 16:49
Tenes que utilizar la librería GD2 de php (que viene integrada) para poder crear una imágen nueva con mejor tamaño.
Revisa imagecreatefromjpeg / imagecreatefrompng / imagecreatefromgif / imagecreatetruecolor / imagecopyresampled / imagesx / imagesy entre otras en el sitio de PHP: http://ar2.php.net
Puedes encontrar ejemplos también.
doctormansilla
07/07/2009, 17:58
algun ejemplo q tengas? gracias :D
algun ejemplo q tengas? gracias :D
Creas 2 archivos php
index.php // para realizar el upload de imagenes
creador.php // para modificar las imagenes originales a un tamaño especifico y crear los thumbs
Creas 3 carpetas
/optimizar
/originales
/thumbs
index.php
<?
$max_no_img=6; // Cantidad de imagenes a realizar upload
echo "<form method=post action=creador.php enctype='multipart/form-data'>";
echo "<table border='0' width='500' cellspacing='0' cellpadding='5' align=center>";
for($i=1; $i<=$max_no_img; $i++){
echo "<tr><td class='Estilo1'>$i</td><td>
<input type=file name='images[]' size='80'></td><td class='Estilo1'>$i</td></tr>";
}
echo "<tr><td colspan=2 align=center><br><input type=reset value='restablecer' class='boton2'> <input type=submit value='cargar imagen' class='boton3'></td><td class='Estilo1'> </td></tr>";
echo "</form> </table>";
?>
creador.php
<?
while(list($key,$value) = each($_FILES['images']['name']))
{
if(!empty($value))
{
$filename = $value;
$a = time(); // AGREGA LA FECHA DELANTE DEL ARCHIVO
$filename= "$a-$filename";
$add = "optimizar/$filename";
copy($_FILES['images']['tmp_name'][$key], $add);
chmod("$add",0777);
$carpeta = "optimizar/"; // CARPETA DONDE SE ENCUENTRAN LOS ARCHIVOS
$carpetanueva = "originales/"; // CARPETA DE DESTINO DE LOS ARCHIVOS THUMBS
$ext = array ("jpg","png"); // EXTENSION DE LOS ARCHIVOS DE IMAGENES ("jpg","png")
$ancho_nuevo = 640; // ANCHO NUEVO DEL ARCHIVO
$optimizar = 90; // VALOR DE OPTIMIZACION
$nombre_archivo = $filename;
$carpetathumb = "thumbs/"; // CARPETA DE DESTINO DE LOS ARCHIVOS THUMBS
$anchothumb = 100; // ANCHO DEL ARCHIVO THUBS
$extension = strrchr($carpeta.$filename,"."); // EXTEN DEL ARCHIVO
if ($extension=='.jpg' OR $extension=='.JPG')
{
$img = imagecreatefromjpeg($carpeta.$filename);
}
if ($extension=='.png' OR $extension=='.PNG')
{
$img = imagecreatefrompng($carpeta.$filename);
}
$anchox = imagesx($img);
$alturax = imagesy($img);
// condicion
///////////////////////////////////////////////////////////////////////////////////////// PROCESO 1
//-- Redimensiona y coloca en Originales
$archivo = pathinfo($carpeta.$nombre_archivo);
if (in_array(strtolower($archivo['extension']),$ext))
{
if(strtolower($archivo['extension'])=="gif"){
$img = imagecreatefromgif($carpeta.$nombre_archivo);
}else if(strtolower($archivo['extension'])=="jpg"){
$img = imagecreatefromjpeg($carpeta.$nombre_archivo);
}else if(strtolower($archivo['extension'])=="png"){
$img = imagecreatefrompng($carpeta.$nombre_archivo);
}
$ancho = imagesx($img);
$altura = imagesy($img);
$ancho_nuevo = $ancho_nuevo;
$altura_nueva = floor($altura*($ancho_nuevo/$ancho));
$tmp_img = imagecreatetruecolor($ancho_nuevo,$altura_nueva);
imagecopyresized($tmp_img,$img,0,0,0,0,$ancho_nuev o,$altura_nueva,$ancho,$altura);
if(strtolower($archivo['extension'])=="gif"){
imagegif( $tmp_img,$carpetanueva.$nombre_archivo);
}else if(strtolower($archivo['extension'])=="jpg"){
imagejpeg( $tmp_img,$carpetanueva.$nombre_archivo,$optimizar) ;
}else if(strtolower($archivo['extension'])=="png"){
imagepng( $tmp_img,$carpetanueva.$nombre_archivo);
}
//--//
}
$ancho_nuevo = $anchothumb; // ANCHO NUEVO DEL ARCHIVO
$archivo = pathinfo($carpeta.$nombre_archivo);
if (in_array(strtolower($archivo['extension']),$ext))
{
if(strtolower($archivo['extension'])=="gif"){
$img = imagecreatefromgif($carpeta.$nombre_archivo);
}else if(strtolower($archivo['extension'])=="jpg"){
$img = imagecreatefromjpeg($carpeta.$nombre_archivo);
}else if(strtolower($archivo['extension'])=="png"){
$img = imagecreatefrompng($carpeta.$nombre_archivo);
}
$ancho = imagesx($img);
$altura = imagesy($img);
$ancho_nuevo = $ancho_nuevo;
$altura_nueva = floor($altura*($ancho_nuevo/$ancho));
$tmp_img = imagecreatetruecolor($ancho_nuevo,$altura_nueva);
imagecopyresized($tmp_img,$img,0,0,0,0,$ancho_nuev o,$altura_nueva,$ancho,$altura);
if(strtolower($archivo['extension'])=="gif"){
imagegif( $tmp_img,$carpetathumb.$nombre_archivo);
}else if(strtolower($archivo['extension'])=="jpg"){
imagejpeg( $tmp_img,$carpetathumb.$nombre_archivo,$optimizar) ;
}else if(strtolower($archivo['extension'])=="png"){
imagepng( $tmp_img,$carpetathumb.$nombre_archivo);
}
//--//
}
///////////////////////////////////////////////////////////////////////////////////////// FIN PROCESO 1
//-- elimina archivo de carpeta optimizar
$ruta_archivo="optimizar/".$nombre_archivo;
if (file_exists($ruta_archivo))
{
unlink($ruta_archivo);
}
//--//
}
}
header("location:upload.php");
?>
doctormansilla
06/09/2009, 23:04
voy a probarlo gracias por tu gentil ayuda
doctormansilla
02/10/2009, 11:44
si, le modifique algunas cosas y me funciono a la perfeccion gracias!
Powered by vBulletin™ Version 4.0.7 Copyright © 2012 vBulletin Solutions, Inc. All rights reserved.