FAQ
Buenas!!!!, los molesto porque tengo el siguiente problema y no le encuentro una solucion medianamente facil.



El problemas esta dado por lo siguiente, cree un sitio en el cual se pueden subir imagenes y luego se pueden visualizar todas las imagenes que se subieron a un album, el problema esta cuando se desea visualizar una imagen, ya que no todos usan la misma resolucion, ejemplo:



tengo imagenes que son panoramicas verticales, horizontales, en formatos comunes (3:2), y puden ser de 2, 3, 5 megapixel. lo que quiero hacer es que las imagenes que son de muchos megapixeles al momento de mostrarlas reducir el tamaño para mostrarlas, ya que sino se desfaza el margen.



esta es la linea de codigo.



$blah = getimagesize("$camino");
$Anchura= $blah[0];
$Altura = $blah[1];


$t1= $Anchura/2.5;
$t2= $Altura/2.5;



echo '<img src="galeria/'.$idcarp2.'/'.$foto.'" width="'.$t1.'" height="'.$t2.'" align="absmiddle" vspace="5">



esto solo me sirve para imagenes sacadas en 5 MP, pero no me sirve para imagenes sacadas en 2 MP ya que al mostrarlas y aplicarle este operacion matematica quedan muy pequeñas.



alguien puede orientarme o darme una mano con esto.



saludos.

--
Ezequiel Suarez

Search Discussions

  • MiniFavrica at Apr 4, 2009 at 9:21 am
    Hola Ezequiel,
    Creo que deberías buascar código para redimensionar imágenes, con el código
    que muestras las imágenes tienen el tamaño original pero se muestran
    forzando las dimensiones, te recomiendo que hagas una redimensión de las
    mismas y calcules las proporciones de los nuevos tamaños para que no se
    muestren deformadas, algo más o menos así:
    //-------------------
    (...)
    if($ancho > $nuevo_ancho OR $alto > $nuevo_alto)//EVALUO SI ALGUNA DE LAS
    NUEVAS DIMENSIONES ES MENOR QUE LAS ANTIGUAS
    {
    if(($alto - $nuevo_alto) > ($ancho - $nuevo_ancho))
    {
    $nuevo_ancho = round($ancho * $nuevo_alto / $alto,0) ;

    }
    else
    {
    $nuevo_alto = round($alto * $nuevo_ancho / $ancho,0);
    }
    }
    else //SI LA IMAGEN ES MÁS PEQUEÑA QUE LAS NUEVAS DIMENSIONES LA DEJO
    IGUAL
    {
    $nuevo_alto = $alto;
    $nuevo_ancho = $ancho;
    }
    (...)
    imagecopyresampled($imagen_nueva, $imagen_vieja, 0, 0, 0, 0, $nuevo_ancho,
    $nuevo_alto, $ancho, $alto);
    (...)
    //-------------------

    Espero que te sirva.


    -----Mensaje original-----
    De: Ezequiel Suarez
    Enviado el: viernes, 03 de abril de 2009 22:05
    Para: php-es@lists.php.net
    Asunto: [PHP-ES] Problemas con imagenes



    Buenas!!!!, los molesto porque tengo el siguiente problema y no le encuentro
    una solucion medianamente facil.



    El problemas esta dado por lo siguiente, cree un sitio en el cual se pueden
    subir imagenes y luego se pueden visualizar todas las imagenes que se
    subieron a un album, el problema esta cuando se desea visualizar una imagen,
    ya que no todos usan la misma resolucion, ejemplo:



    tengo imagenes que son panoramicas verticales, horizontales, en formatos
    comunes (3:2), y puden ser de 2, 3, 5 megapixel. lo que quiero hacer es que
    las imagenes que son de muchos megapixeles al momento de mostrarlas reducir
    el tamaño para mostrarlas, ya que sino se desfaza el margen.



    esta es la linea de codigo.



    $blah = getimagesize("$camino");
    $Anchura= $blah[0];
    $Altura = $blah[1];


    $t1= $Anchura/2.5;
    $t2= $Altura/2.5;



    echo '<img src="galeria/'.$idcarp2.'/'.$foto.'" width="'.$t1.'"
    height="'.$t2.'" align="absmiddle" vspace="5">



    esto solo me sirve para imagenes sacadas en 5 MP, pero no me sirve para
    imagenes sacadas en 2 MP ya que al mostrarlas y aplicarle este operacion
    matematica quedan muy pequeñas.



    alguien puede orientarme o darme una mano con esto.



    saludos.

    --
    Ezequiel Suarez

Related Discussions

Discussion Navigation
viewthread | post
Discussion Overview
groupphp-general-es @
categoriesphp
postedApr 3, '09 at 8:05p
activeApr 4, '09 at 9:21a
posts2
users2
websitephp.net

2 users in discussion

Ezequiel Suarez: 1 post MiniFavrica: 1 post

People

Translate

site design / logo © 2021 Grokbase