Re: [PHP-ES] Problemas con Thumbnails de imágenes con PHP

From: manuel.oterino .en. sorase.biz
Date: Tue Mar 23 2004 - 10:52:00 CET


No se si el problema que tienes es de escalado. Te envio un trozo de
codigo que yo utilizo, sobre ficheros tipo JPG, por si con este te sirve.

A la función, se le pasa el handle devuelto por imagecreataefrom..., y los
tamaños máximos que quieres para el ancho y el alto, retornandote una
array con el ancho y alto escalado para que no se deforme la imagen.

function scaleImg( $hImg, $iMaxWidth, $iMaxHeight )
{
        $width = imagesx($hImg);
        $height = imagesy($hImg);
        $scale = min( $iMaxWidth/$width, $iMaxHeight/$height );
        return array( floor( $scale * $width ), floor( $scale * $height ) );
}

Salu2.

> Estoy tratando de montar una galería, para ello tengo varias imágenes
> de grandes tamaños, aplicándole un Thumbnails las pongo más pequeñas
> para mostrársela al cliente, el problema concite en que la imagen
> pequeña que creo dinámicamente no reúne la calidad necesaria, pues sale
> casi en blanco y negro y media opaca, en verdad no se si es un
> problemas de esta línea:
>
> imagecopyresized($imagen,$fuente,0,0,0,0,$ancho,$alto,$imgAncho,$imgAlto);
> o cualquier configuración del php, no obstante les envio el código
> completo:
>
>
>
> $ruta =$_GET['ruta']; // luegar del server donde está la imagen
> $alto =$_GET['alto']; // alto al que quiero mostrarla
> $ancho =$_GET['ancho']; // ancho al que quiero mostrarla
>
>
> $fuente = .en. imagecreatefromjpeg($ruta);
> $imgAncho = imagesx ($fuente);
> $imgAlto =imagesy($fuente);
> $imagen = imagecreate($ancho,$alto);
>
> imagecopyresized($imagen,$fuente,0,0,0,0,$ancho,$alto,$imgAncho,$imgAlto);
>
>
> imagejpeg($imagen,"imagen/pequena.jpg"); // guardo la imagen pequena en
> una carpeta
>
>
>
>
> Si alguien conose otra forma de hacer lo que quiero hacer me la podría
> sugerir..
>
> Saludos

-- 
PHP Spanish Localization Talk Mailing List (http://www.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php


This archive was generated by hypermail 2.1.7 : Fri May 14 2004 - 16:04:41 CEST