Foros del Web » Programando para Internet » PHP »

Editando imagenes con php

Estas en el tema de Editando imagenes con php en el foro de PHP en Foros del Web. Que tal amigos, tengo una consulta. Se que con php se puede cambiar el tamaño de una imagen, agregarle texto, efectos, etc, pero es posible ...
  #1 (permalink)  
Antiguo 12/07/2008, 19:25
 
Fecha de Ingreso: junio-2008
Mensajes: 14
Antigüedad: 15 años, 10 meses
Puntos: 0
Editando imagenes con php

Que tal amigos, tengo una consulta. Se que con php se puede cambiar el tamaño de una imagen, agregarle texto, efectos, etc, pero es posible seleccionar un rango de colores y suprimirlos ??

Supongamos algo como esto :


Puedo seleccionar el color verde, y cortarlo? o hacerlo transparente??

Gracias de antemano por responder. Saludos
  #2 (permalink)  
Antiguo 12/07/2008, 23:35
Avatar de eZakto  
Fecha de Ingreso: julio-2008
Mensajes: 214
Antigüedad: 15 años, 9 meses
Puntos: 5
Respuesta: Editando imagenes con php

Creo que eso hace la función imagecolordeallocate(), pero no estoy seguro.
  #3 (permalink)  
Antiguo 13/07/2008, 20:04
Avatar de gildus  
Fecha de Ingreso: agosto-2003
Mensajes: 1.495
Antigüedad: 20 años, 8 meses
Puntos: 105
Respuesta: Editando imagenes con php

Holas,

Que interesante aplicacion, pues hasta ahora no encuentro nada que pueda hacerce con el php, mira capaz te sirvan estos links que hacen un mundo de maravillas con imagenes:

http://www.phpclasses.org/browse/package/3294.html
http://php-classes.kinghost.net/brow...kage/3838.html
http://php-classes.kinghost.net/brow...kage/2006.html
http://php-classes.kinghost.net/brow...kage/1007.html


Saludos
Gildus
__________________
.: Gildus :.
  #4 (permalink)  
Antiguo 14/07/2008, 00:09
 
Fecha de Ingreso: junio-2008
Mensajes: 14
Antigüedad: 15 años, 10 meses
Puntos: 0
Respuesta: Editando imagenes con php

Gracias por las respuestas.
Bueno, se me ocurrio esto :

Código PHP:
$img imagecreatefromgif('rad.gif'); 
$dst=imagecreatetruecolor(623,562);

for (
$i=1;$i<623;$i++){
    
    for(
$k=1;$k<562;$k++){
        
$rgb ImageColorAt($img$i$k);
        if(
$rgb>=32 AND $rgb<=46){ 
            
            
imagecopy  $dst  $img $i  $k $i  $k  623  562 );
        }else{
             
imagesetpixel  $dst  $i $k  256 );
             
        }
    }

}

imagegif($dst,"imagenfinal.gif");

echo
" colores dps  $a1 <br>";
print 
"<img src = 'imagenfinal.gif'>"
Por cada pixel de la imagen, pregunto si esta en el rango de colores que deseo copiar. El tema es que dependiendo de la imagen que use, el server me tira Fatal error: Maximum execution time of 35 seconds exceeded

Asi que bueno, me quede aca, alguien me da una mano ??

Gracias y salu2 !!
  #5 (permalink)  
Antiguo 14/07/2008, 00:23
Avatar de eZakto  
Fecha de Ingreso: julio-2008
Mensajes: 214
Antigüedad: 15 años, 9 meses
Puntos: 5
Respuesta: Editando imagenes con php

Estás haciendo 350126 iteraciones, estás matando al server!
  #6 (permalink)  
Antiguo 14/07/2008, 01:36
 
Fecha de Ingreso: julio-2008
Mensajes: 3
Antigüedad: 15 años, 9 meses
Puntos: 0
Respuesta: Editando imagenes con php

La forma mas facil seria que uses la funcion set_time_limit
http://de3.php.net/set-time-limit

de esta forma solo afectara a ese script, si tienes suficientes privilegios para editar el archivo php.ini puedes modificar una directiva llamada max_execution_time
http://www.php.net/manual/en/info.configuration.php#ini.max-execution-time

y modificar ese limite para todos los archivos de tu servidor, o si estas en un hosting y quieres algo similar a lo anterior puedes usar un archivo .htaccess para modificar esa directiva
http://us2.php.net/configuration.changes

Quiza quieras considerar el pensar un poco mas y optimizar tu codigo, pues como comenta eZakto puedes sobre cargar el servidor, aun que si eso no es poblema, pues dale!

Tambien es posible que puedas tener problemas con el limite de memoria que un script puede consumir, de ser asi puedes modificar otra directiva de php que se llama memory_limit, ya sea usando metodos como los antes mencionados para max_execution_time, o para que afecte solo a un script usar la funcion ini_set
http://www.php.net/ini_set

De paso tambien quisiera comentar que las funciones que tienes con GD muchas veces llegan a quedarte cortas, asi que si quieres mas poder para edicion de imagenes desde PHP puedes usar ImageMagick, busca info al respecto en google si te interesa...

Saludos

Última edición por ovilla; 14/07/2008 a las 01:44
  #7 (permalink)  
Antiguo 14/07/2008, 10:09
 
Fecha de Ingreso: junio-2008
Mensajes: 14
Antigüedad: 15 años, 10 meses
Puntos: 0
Respuesta: Editando imagenes con php

Jjeje, si ya se que liquido al server con este script, pero no se me ocurrio otra idea para comparar pixel por pixel una imagen y hacer lo q deseaba...

Gracias por los consejos, voy a buscar un poco mas a ver si puedo mejorar esto!!


Saludos
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 10:47.