Foros del Web » Programando para Internet » PHP »

librería GD

Estas en el tema de librería GD en el foro de PHP en Foros del Web. Hola amigos como andan? Vengo a comentarle un problema que tengo: Yo tengo dos imagenes que las tengo que combinar, para eso uso la función ...
  #1 (permalink)  
Antiguo 03/03/2007, 12:14
 
Fecha de Ingreso: marzo-2007
Mensajes: 1
Antigüedad: 17 años, 8 meses
Puntos: 0
librería GD

Hola amigos como andan?

Vengo a comentarle un problema que tengo:

Yo tengo dos imagenes que las tengo que combinar, para eso uso la función imagecopy() de la librería GD.

Mi codigo:

<?php

$imagen = imagecreatefromjpeg('imagen.jpg');
$imagen2 = imagecreatefromjpeg('imagen2.jpg');

imagecopy($imagen,$imagen2,50,50,0,0,50,30);

header("Content-type: image/jpeg");

imagejpeg($imagen);

imagedestroy($imagen);
imagedestroy($imagen2);

?>

Bueno hasta ahi funciona todo de maravilla, pero yo quiero que la imagen 2 tenga fondo transparente, que el color negro sea transparente.
Lei algunos tutoriales y encontre que eso se hace con la funcion imagecolortransparent() y probe y probe pero no logro hacerlo funcionar.

Alguien puede decirme como usar esa funcion correctamente, o alguna otra funcion para lo que yo quiero hacer?

Desde ya muchas gracias.
Saludos!
  #2 (permalink)  
Antiguo 03/03/2007, 23:44
 
Fecha de Ingreso: noviembre-2003
Mensajes: 78
Antigüedad: 21 años
Puntos: 2
Re: librería GD

aztaroth, el problema es que el formato Jpeg no soporta transparencias, lo que debes hacer es la imagen de salida enviarla en GIF o PNG.

Saludos!
__________________
Joel A. Chornik
ELSERVER.COM - WebHosting Profesional
  #3 (permalink)  
Antiguo 04/03/2007, 00:08
Avatar de caricatos
Moderador
 
Fecha de Ingreso: abril-2002
Ubicación: Torremolinos (Málaga)
Mensajes: 19.607
Antigüedad: 22 años, 7 meses
Puntos: 1284
Re: librería GD

Hola:

Teóricamente se pondría transparente el negro con:

$imagen2 = imagecreatefromjpeg('imagen2.jpg');
$transpa = imagecolorallocate($imagen2, 0, 0, 0); // negro es 3 componentes a cero
imagecolortransparent($imagen2, $transpa);

Saludos
__________________
Por favor:
No hagan preguntas de temas de foros en mensajes privados... no las respondo
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 21:23.