Ir al contenido principal

[php] Cambia Color de Imagen con PHP

Holas!! Hoy estoy acá para mostrarles otra herramienta que usaré en mi paginilla-juego-dollmaker: se trata de la importante herramienta para cambiar de colores las ropitas que puedan usar las muñecas. ¿Cuál era la idea de esto? Sólo poner en la balanza: subir 20 tipos de ropa, cada una multiplicada por unos (mínimo) 10 colores distintos, o sea, unas 200 imágenes GIF por lo bajo, contra un solo script php que toma una ropa en tonos grises y le aplica los colores que uno quiera encima :)

Pues bien, acá tienen algunas muestras de ejemplo: Una simple polerita con mangas de color puede cambiar según los colores que nosotros, desde...



A...


...una llamativa polera de verano, o bien...


...a una femenina polera primaveral, o bien...


...a una versión más oscurilla para las que se creen malillas :P

Y así un sinfín de posibilidades :D

Pueden ustedes probar este script haciendo --» click aquí «--
Una vez en la página, para jugar a crear combinaciones de colores de la polera sólo deben cambiar los valores de las variables c1 y c2 de la URL. (Recuerden que usa colores en formato hexadecimal. Ejemplos: FF0000 = rojo; FFFF00 = amarillo; etc.)

Si a alguien le interesa, preparo una página donde poder ver y aprender el código fuente de esta pequeña herramientilla que me ha alegrado todo el día el poder haberla logrado ^_^

Hasta pronto! ^o^

PD: Por cierto que esta particularidad va derechamente ligada a la Paleta que mostré en registro anterior :P

EDITADO:
Debido a las solicitudes por ver este código, he preparado una adaptación mucho más simplificada del código original, en una página donde podrán revisar la funcionalidad básica :D No olviden darme el crédito correspondiente si utilizan este código en sus páginas, o si lo usan para basarse para hacer el propio. En serio me daría mucha rabia que alguien lucrara con esto, siendo que yo lo hice para mi uso personal y para ser usado en un portal web (que todavía no puedo implementar debido al tiempo) que será de acceso gratuito. Esop. Gracias.

--» Ver Código de Ejemplo «--

Comentarios

Anónimo ha dicho que…
podrías pasarme el código php?
soy dj_kirometeperas@hotmail.com
muchas gracias!!!
quinqui ha dicho que…
Holas! Ok, haré una adaptación y luego pondré el enlace acá :D Gracias por tu interés y por comentar ^__~
Anónimo ha dicho que…
esta increible, se puede descargar de algun lado? github? por ejemplo... osino como podria tenerlo?
mi correo es yo@sebaduran.com
quinqui ha dicho que…
Holas, estel. La verdad es que pensaba poner el código en una página, con tutorial y todo, pero lamentablemente no he tenido tiempo de hacerlo. En cuanto pueda publicaré el enlace en una nueva entrada del blog. Gracias por comentar!
Anónimo ha dicho que…
Hola Carolina.

¿Podrías compartir el código php para cambiar el color?

Gracias.
quinqui ha dicho que…
He publicado al fin una adaptación de mi código, simplificando las funcionalidades de modo que puedan entender con mayor rapidez el comportamiento del script. El link para ver el código está en el final del post. Gracias por visitar!
Anónimo ha dicho que…
Gracias por la publicación del código, Carolina.

Estuve haciendo unas pruebas por mi cuenta y logré sacar un código parecido.

He estado mirando el que has publicado y he encontrado un error que no mostraba la imagen.

En la línea:
$fcolor = strtoupper($fcolor);

A la variable le hace falta un 1 al final ya que después lo llamas como $fcolor1. Por lo que sería:

$fcolor1 = strtoupper($fcolor);


Tras esto. Gracias!
quinqui ha dicho que…
Ah! Gracias por notificármelo, eso era de esperarse, al hacer la simplificación de mi código original, donde eran 2 colores los que son aplicados, y en el código publicado lo reduje a uno. Corregiré el código en lo pronto. Gracias por avisarme :D Luego me muestras los resultados de tus propias pruebas, ok? Saludos!

Entradas populares de este blog

[tsql] Error: La instrucción INSERT EXEC no se puede anidar

Holas a todos. Mientras programaba un procedimiento almacenado, intenté obtener los datos de otro procedimiento, como lo he venido haciendo desde que descubrí tamaña maravilla de la programación sql. Pero hoy me topé con este extraño error: La instrucción INSERT EXEC no se puede anidar . Tras investigar por algunos lados, di con la respuesta: no se puede almacenar en una tabla temporal de procedimiento almacenado, el resultado de otro procedimiento que también esté realizando una inserción de este tipo. Esto es algo como tener: CREATE PROCEDURE miProcedimiento AS  INSERT INTO #tablita EXEC otroProcedimiento;  SELECT * FROM #tablita; END; CREATE PROCEDURE nuevoProcedimiento AS  INSERT INTO #tabla1 EXEC miProcedimiento; END; Esto significará que si ejecuto: EXEC nuevoProcedimiento; ...SQL me arrojará el error antes mencionado. La solución al problema es no llamar a un procedimiento que esté llamando a otro ya en su interior. En algunos lados leí que transf

[mysql] Pasar array a parámetro de procedimiento almacenado (Mysql)

Me tocó hacer una consulta que retornaba una lista de items relacionados con una lista de usuarios que podían o no tener registros en común (vale decir, tabla de quiebre). La lista debía retornar siempre la lista de items, independiente de si había usuarios por los cuales consultar y/o si los usuarios tenían relación con ellos, pero debía mostrarme el status de los usuarios por cada item, de haberlos, esto es, una lista de nombres con una columna que podía estar vacía o no. Para el caso de tener que consultar los items relacionados con usuarios, al hacer la consulta utilizando un LEFT JOIN, me daba resultados si los usuarios tenían relación con los ítems, pero no si los usuarios no tenían items asociados pues, obviamente, al no estar relacionados, la consulta retorna vacío. Por ello, la solución era hacer la consulta de los items primero, y luego por cada item preguntar el status del usuario por cada uno. Para ello, tenía dos alternativas: hacerlo por programación o hacerlo por bas

[php] NuSOAP HTTP Error: socket read of headers timed out

Holas a todos. Este es para comentar un problema que he tenido al trabajar un servicio web montado en PHP con la clase NuSOAP. El problema surgió cuando intenté llamar al servicio web desde el otro servidor, pero se caía a los exactos 30 segundos de ejecución, mostrando el mensaje que titula este registro: HTTP Error: socket read of headers timed out Sabía que el problema era el timeout, pero ¿el timeout de qué? En los servidores y páginas web hay timeouts por todos lados: el de la Conexión a internet o la red, el del Servidor (hardware), el del Servidor Web en sí (Apache, mi caso), el de PHP (mi caso)... Pero nunca se me habría ocurrido que las Aplicaciones o frameworks también pudieran tener :o Por eso, tras buscar por la red la solución a mi problema, la respuesta vino precisamente de alguien que señaló sencillamente que había que modificar el timeout de la clase NuSOAP. Y dicho y hecho, eso solucionó el problema. Si están usando en su servidor y/o cliente la clase NuSOAP, y d